-
-
Notifications
You must be signed in to change notification settings - Fork 297
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
Support Ipv6 #70
Support Ipv6 #70
Conversation
496a7e1
to
b4095f5
Compare
@imsnif Unfortunately, my network does not support Ipv6. But this code should correctly display ipv6 traffic. Would you be willing to try running this on your machine? |
Sorry friend, mine doesn't either :/ afaik most don't. I think you might be able to replicate an ipv6 network with a couple of docker containers, but beware - that might be a bit of work. |
@coreylane How about you :) Since you spend the issue maybe you could test this? |
I'm still not seeing the ipv6 traffic in bandwhich, but not completely sure I correctly compiled the binary to include your PR. Steps I took below, did I miss anything?
|
I think your steps are correct.. Can you set a breakpoint at ui.update_state and see if variable |
This may take me some time as this is the first Rust project I've poked around |
So, after a brief review the changes seem fine, however I don't get any IPv6 traffic (not via my VPN, but via an uplink interface, so tested with layer2-packets). However, this seems to work fine on my branch where I merged my previous fixes with IPv6 Support (https://github.com/Ma27/bandwhich/tree/ipv6-int-test). I might've "accidentally" fixed an issue as I had to resolve several merge conflicts due to changes to the data structure on master and on this branch. For now I'll check what went wrong and report back. After that we could also push my changes into this branch to get rid of all the merge conflicts :) |
So first of all thanks a lot for this PR! This is actually the last thing on my list to get perfectly happy with this tool! I'm not entirely sure why no traffic is shown on your branch, but the issues can be fixed by merging master into this branch (I tested upstream/master with and without my layer3-fixes). Just refreshed my test-branch by merging the latest master and your changes together: Ma27@916be4c |
8768bad
to
8ab40ab
Compare
|
This also adds support for sniffing the loopback interface |
Great work! :) I want to hold off on this for the next version because master already has some big changes. I hope to release it soon and then also take a more thorough look at this one. @zhangxp1998 - I hope you don't mind if we also ask @Ma27 to test this? I myself don't have easy access to ipv6, so would love to have as much input on this change as possible before we release it. |
Built the PR locally and it seems to work fine 👍 |
Hmm now version 0.9 is released, can we start reviewing this PR? @imsnif |
Sure, I'll give it a try :) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is great work 👍
Left a couple comments. Otherwise I tested on linux and swapping the cfgs to use lsof. It looks good in both cases. Can't test with IPv6 though.
Got to see IPv6 traffic with |
LGTM! @imsnif want to take a look, or should we merge it after the CI passes? |
I glanced at this briefly and it seems pretty straightforward. If you two think this is good, let's go for it. If I'm confused about something when maintaining later on, I might ask one of you for directions. :) |
I added code to parse Ipv6 packets and ipv6 addresses from
lsof
. But the network I'm on does not seem to support ipv6... Can anyone try this for me?This is an attempt to resolve issue 53