TUN/TAP インタフェースを呼び出すとき、カーネルは何をしていますか?

TUN/TAP インタフェースを呼び出すとき、カーネルは何をしていますか?

私はLinuxでTUN / TAPデバイスを使用しています。私はTAPインターフェースを生成し、それを通して送信されたすべてを印刷する簡単なプログラムを作成しました。インターフェースを開くと

ip link set tap1 up

これにより6つのフレームを送信します。これらのフレームワークは何ですか?

貼り付けました。ここ

ベストアンサー1

さて、パケットをWiresharkにインポートすることはできません(一部のヘッダーが追加または欠落している必要があり、把握するのが面倒です)。しかし、これはIPv6です。最初のフレームからが表示されますff 02 00 00 00 00 00 00 00 00 00 00 00 00 00 16。これはIPv6アドレスff02::16です。MLDv2

編集:最初のフレームから始めて、ファイル - >インポートを選択し、raw IPまたはraw IPv6カプセル化タイプを選択したときにWiresharkが理解するIPv6部分は次のとおりです(これは他のヘッダの開始の36オクテット内にあります)。

0000   60 00 00 00 00 24 00 01 00 00 00 00 00 00 00 00
0010   00 00 00 00 00 00 00 00 ff 02 00 00 00 00 00 00
0020   00 00 00 00 00 00 00 16 3a 00 05 02 00 00 01 00
0030   8f 00 d1 ff 00 00 00 01 04 00 00 00 ff 02 00 00
0040   00 00 00 00 00 00 00 01 ff ea 9c a0 00 00 

編集(2):最初の4オクテットを切り取ると、00 00 86 ddEthernetフレームに正しくデコードされます。

編集(3):各パケットから4オクテットを削除し、Wiresharkがインポートできるように処理した完全なキャプチャは次のとおりです(カプセル化されたイーサネット)。http://pastebin.com/sUfCfPC4

おすすめ記事