-
Notifications
You must be signed in to change notification settings - Fork 2.1k
Add wireshark dissector for native packets #665
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
Conversation
|
Discussion: maybe a |
|
I still prefer #163 but let's discuss this |
|
Do we want to add for every protocol we want to support in the future an extra native RIOT layer, then? I think an extra field in the nativenet_header is a lot simpler (in |
|
I also think there is something to be gained from the zep implementation. That's a different matter though. I'm looking forward to merging this PR if it does what I think it does =) |
|
@LudwigOrtmann with the zep header we get rid of any "native net header", right? so we don't need to have any changes on wireshar/tcpdump? |
|
zep is intended to be an option for nativenet, not a replacement for the current implementation. It does not only change the header format but also other properties of the network layer (maximum size). |
|
@LudwigOrtmann I see, so we will need both, a parser for "native net packets" and the zep encapsulation. they go hand in hand. |
|
One advantage of providing ZEP headers would be that one could just use Wireshark as is without installing an additional dissector. However, that could be additive. |
|
could install the dissector, with sixlowpan as next header I get "Malformed Packet: IPv6" with lua Error in line 37. RIOT, 6lowpan are dissected correctly |
dist/tools/wireshark_plugin/riot.lua
Outdated
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.
one of them is source
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.
oops
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.
Fixed
@mehlis It's just a parser. If you don't provide 6LoWPAN content directly after the RIOT header (I guess you did not change much of the of the network stacks code, which currently yields IEEE 802.15.4 packages on native) it will of course fail ;-). But: Another problem I have realized is, that since IEEE 802.15.4 has its frame length in the PHY header (directly before the MAC header which is provided here), wireshark does not get the length of the frame and won't for that reason (I guess) parse the 6LoWPAN header. The optimal result would look somewhat like this (http://cloudshark.org/captures/18efd3ef7114) but with this dissector it stops after the IEEE 802.15.4 header. @OlegHahm: the "installation" is just an addition of 2 lines in wireshark's config ;-), but with the problem stated above I see why we might need a ZEP layer (though I don't know if it is necessary to send it via UDP). |
|
@authmillenon I see, because of using 15.4 results in less output I assumed, that sixlowpan is the right next layer:) |
okay nope, it's because the IEEE 802.15.4 checksum is calculated wrong (in the current implementation not at all, but set to a constant value). |
|
Fixed it (see #644) |
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.
Can't you put this stuff in $HOME/.wireshark/preferences? There are people who are working on multi user systems....
|
ACK |
|
successfully tested, ACK, GO |
Add wireshark dissector for native packets
I think we don't need that ZEP implementation ;-)