当我尝试在 Ubuntu 14.04 上创建 VLAN 和网桥(如以下配置所示)时,网络连接总是丢失。
问题是什么?
请注意,如果我仅使用相同的 IP、网关等设置接口 em1(没有 em1.100、cloudbr0 和 cloudbr1),网络就可以正常工作。
以下设置 VLAN 和网桥的方式是否错误,或者我是否遗漏了什么?我还检查了 802.1q 模块是否已加载。
#cat /etc/network/interfaces
auto lo
iface lo inet loopback
#The primary network interface
auto em1.100
iface em1.100 inet static
address 192.168.42.11
netmask 255.255.255.240
gateway 192.168.42.1
dns-nameservers 8.8.8.8 8.8.4.4
#Public network
auto cloudbr0
iface cloudbr0 inet manual
bridge_ports em1.200
bridge_fd 5
bridge_stp off
bridge_maxwait 1
#Private network
auto cloudbr1
iface cloudbr1 inet manual
bridge_ports em1.300
bridge_fd 5
bridge_stp off
bridge_maxwait 1
#reboot ==> then lost network connection.
答案1
您需要先定义 VLAN 接口,然后才能将它们纳入网桥。您可以尝试以下操作,将 IP 地址更改为您自己的 IP 地址:
auto lo
iface lo inet loopback
#The primary network interface
auto em1.100
iface em1.100 inet static
address 192.168.42.11
netmask 255.255.255.240
gateway 192.168.42.1
dns-nameservers 8.8.8.8 8.8.4.4
vlan-raw-device em1
auto em1.200
iface em1.200 inet static
address 172.22.1.1
netmask 255.255.255.0
vlan-raw-device em1
auto em1.300
iface em1.300 inet static
address 172.22.2.1
vlan-raw-device em1
netamsk 255.255.255.0
#Public network
auto cloudbr0
iface cloudbr0 inet manual
bridge_ports em1.200
bridge_fd 5
bridge_stp off
bridge_maxwait 1
#Private network
auto cloudbr1
iface cloudbr1 inet manual
bridge_ports em1.300
bridge_fd 5
bridge_stp off
bridge_maxwait 1
答案2
如果指定了 bridge-utils 包中的 bridge_ports 选项,则 VLAN 配置将不会在 Ubuntu 上执行,如下所示: http://manpages.ubuntu.com/manpages/saucy/man5/interfaces.5.html
答案3
检查 VLAN 设置以验证这一点:
cat /proc/net/vlan/config
安装 vlan 包,它会向 ifup/ifdown 模拟中添加一些脚本:
apt-get install vlan