![当我启动 TUN/TAP 接口时内核在做什么](https://linux22.com/image/19338/%E5%BD%93%E6%88%91%E5%90%AF%E5%8A%A8%20TUN%2FTAP%20%E6%8E%A5%E5%8F%A3%E6%97%B6%E5%86%85%E6%A0%B8%E5%9C%A8%E5%81%9A%E4%BB%80%E4%B9%88.png)
我正在 Linux 上使用 TUN/TAP 设备。我创建了一个简单的程序,用于创建 TAP 接口并打印通过它发送的任何内容。当我打开界面时
ip link set tap1 up
通过它发送六个帧。这些框架是什么?
我已经粘贴它们了这里
答案1
好吧,我无法将数据包导入 Wireshark(肯定有一些标头额外或丢失,懒得去弄清楚)但是,这是 IPv6。从第一帧开始,您会看到ff 02 00 00 00 00 00 00 00 00 00 00 00 00 00 16
.这是 IPv6 地址 ff02::16,用于MLDv2。
编辑:从您的第一帧开始,以下是当您选择“文件->导入”并选择原始 IP 或原始 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 dd
,则它将正确解码为以太网帧。
编辑(3):这是您的整个捕获,从每个数据包中删除了这 4 个八位字节并进行了处理,以便 Wireshark 可以导入它(封装以太网):http://pastebin.com/sUfCfPC4