-
Notifications
You must be signed in to change notification settings - Fork 1.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Bind to interface with client #865
Comments
I'm also experiencing this issue on OpenWRT 18.06.0 I tell iperf3 to use the specific ipaddress that I want it to use (my wifi connection, in this case), and it claims to be using it, but is obviously not since it's getting speeds far higher than wifi should be able to use. If I unplug the ethernet cable, and run the command again, I get significantly lower speeds. What debugging information can I provide? |
@jonesmz You can work around this with network namespaces, but it isn't ideal. (and it works better for my use case than yours, as an interface can only be in one network namespace at a time) |
@jonesmz There is no debug information to provide. The feature just doesn't exist. While it will require reading up on the APIs and knowing some C, this feature is small enough that it could be implemented by someone without much programming experience. If you do decide to work on it, ping me when you submit a pull request and I will review it. |
The feature may not exist, but iperf3 --help clearly says that it does, for both client, and also server :( |
@jonesmz that is a differn't feature. That is the address passed to You can also work around this problem with very complicated networking rules (using fwmark) which I don't understand. |
@jonesmz What we want is |
Well, I think we may be talking past each other here. Here's the output from iperf3 --help.
If -B is not supported in the client, then it should be moved to the server specific section of the --help output. If it's supposed to be used with the client mode, why doesn't it work? You say it doesn't work because the feature doesn't exist in the iperf3 codebase. If that's the case, then the output from --help should be fixed to properly reflect the supported features. |
Out of curiosity, if you use |
|
Just wanted to mention that it seems like if I have two interfaces configured on my Raspberry Pi, then Tested with both iperf3 3.6 from the Pi OS repo and a source install. |
@geerlingguy Try |
@bmah888 - Oh, thanks! I will try that out in my next round of testing! |
This works. |
Context
Version of iperf3:
iperf 3.6 (cJSON 1.5.2)
Hardware:
model : IBM pSeries (emulated by qemu)
Operating system (and distribution, if any):
Linux test-wireguard 4.19.0-5-powerpc64le setting of window size should be explicit #1 SMP Debian 4.19.37-1 (2019-05-05) ppc64le
Enhancement Request
can bind for server, but not client.
Desired behavior
Force traffic to go out a certain interface with client
Implementation notes
I am trying to benchmark wireguard through localhost, but I cannot with iperf3 because i cannot specify the client interface so that the traffic goes through wireguard,
The text was updated successfully, but these errors were encountered: