我正在访问两台运行 CentOS 的虚拟机。我在每台机器上添加了一个 vlan:
在机器 1 上10.11.20.22
vconfig add eth1 2
ifconfig eth1.2 192.168.0.81 netmask 255.255.255.0 broadcast 192.168.0.255 up
在机器 2 上10.11.20.20
vconfig add eth0 2
ifconfig eth0.2 192.168.0.84 netmask 255.255.255.0 broadcast 192.168.0.255 up
route -n
在机器 2 上显示:
Destination Gateway GenMask Iface
192.168.0.0 0.0.0.0 255.255.255.0 eth0.2
10.11.20.0 0.0.0.0 255.255.255.0 eth0
192.168.56.0 0.0.0.0 255.255.255.0 eth1
现在,当我ping -I eth0.2 192.168.0.81
从机器 2 使用并tshark
在机器 1 上运行时tshark -i eth0 -V >somefile
,它不会显示 vlan 标记,但稍有变化,
如果我ping -I eth0 192.168.0.81
从机器 2 使用并tshark
在机器 1 上运行tshark -i eth0 -V >somefile
。
它显示 vlan 标签。
可能的解释是什么?在这种情况下,如何传输和接收 vlan 标签信息?
我正在尝试学习 vlan,但我对这个领域还很陌生。
答案1
这有关 VLAN 的 Wireshark 文档对此非常清楚。
要检查具有该 IPv4 地址的 VLAN 封装和非 VLAN 封装数据包,请尝试
host x.x.x.x or (vlan and host x.x.x.x)
这手册页给我-f <capture filter>
所以我认为这应该可行:
tshark -f vlan -i eth0 -V >somefile