VLAN接口测试方法咨询:实习配置VLAN后的验证方案可行性及简易方法探讨
你的VLAN接口测试方案可行吗?附实操步骤+简化方案
嘿,你的VMware/AWS双Ubuntu服务器测试思路完全可行,是验证VLAN配置有效性的经典场景~不过DMZ那个思路其实有点跑偏了——DMZ主要用来隔离对外服务,和VLAN接口的基础测试关联不大,暂时可以不用考虑这个方向。下面给你详细讲实操步骤,还有更省事的单主机测试方法:
一、双Ubuntu服务器测试方案的具体操作步骤
我以VMware环境为例(AWS操作逻辑一致,只是网络层面需要配合控制台配置安全组/子网trunk权限):
1. 先搞定基础准备
- 给两台服务器(A和B)的基础网卡(比如ens33)配置同一物理网段的IP,先ping通确认基础网络没问题。
- 两台机器都装上必要工具:
sudo apt update && sudo apt install -y vlan bridge-utils - 加载802.1Q VLAN内核模块(要永久生效的话,把
8021q加到/etc/modules文件里):sudo modprobe 8021q
2. 服务器A的VLAN+网桥配置
- 创建VLAN子接口ens33.10(对应VLAN ID=10):
sudo ip link add link ens33 name ens33.10 type vlan id 10 - 给这个VLAN子接口分配IP(比如
192.168.10.1/24)并启用:sudo ip addr add 192.168.10.1/24 dev ens33.10 sudo ip link set ens33.10 up - 创建网桥br0并把VLAN子接口加进去:
(可选:如果需要网桥本身也有IP,给br0配同网段的另一个地址就行,比如sudo brctl addbr br0 sudo brctl addif br0 ens33.10 sudo ip link set br0 up192.168.10.2/24)
3. 服务器B的配置与连通性测试
- 关键:先把服务器B的VMware网卡设置为Trunk模式(允许VLAN 10的流量通过),然后在B上创建对应的VLAN子接口:
sudo ip link add link ens33 name ens33.10 type vlan id 10 sudo ip addr add 192.168.10.3/24 dev ens33.10 sudo ip link set ens33.10 up - 现在测试:在A上ping
192.168.10.3,或者反过来,如果能通,说明你的VLAN配置完全生效了。
要是用AWS的话,记得在EC2安全组里放行VLAN 10的流量,同时确认实例类型支持网卡trunking(比如C5、M5系列)。
二、更简便的单主机测试方法
不想折腾两台机器?单台Ubuntu主机就能搞定,用虚拟以太网对(veth pair)+VLAN子接口的方式:
- 同样先装工具、加载8021q模块(步骤同上)。
- 创建一对虚拟网卡:
sudo ip link add veth0 type veth peer name veth1 - 给veth0创建VLAN 10子接口并配置IP:
sudo ip link add link veth0 name veth0.10 type vlan id 10 sudo ip addr add 192.168.10.10/24 dev veth0.10 sudo ip link set veth0.10 up - 给veth1配置同网段IP并启用:
sudo ip addr add 192.168.10.11/24 dev veth1 sudo ip link set veth1 up - 测试连通性:ping
192.168.10.11,能通就说明VLAN的封装和解封装都正常。
另外,还可以用tcpdump抓包验证VLAN标签,更直观:
sudo tcpdump -i ens33 vlan 10
发送ping包的时候,看看能不能抓到带VLAN 10标签的数据包,这也是验证VLAN配置有效的直接方法。
内容的提问来源于stack exchange,提问作者Brian Nestan Fernandes
相关产品推荐
相关产品推荐

