Linux Vlans over Bridge

前端之家收集整理的这篇文章主要介绍了Linux Vlans over Bridge前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我试图桥接一个dot1q主干,似乎无法搞清楚.我可以使用eth0.2接口连接到主干上的主机,但是当我使用br0桥接接口并尝试连接时,我什么也得不到.我错过了一些简单的东西吗?
auto lo
iface lo inet loopback

auto br0
iface br0 inet manual
bridge_ports eth0
bridge_stp off
bridge_fd 9
bridge_hello 2
bridge_maxwait 0

auto br0.100
iface br0.100 inet static
address 192.168.100.99
netmask 255.255.255.0

auto eth0.2
iface eth0.2 inet static
 address 10.1.2.225
 netmask 255.255.255.0
 network 10.1.2.1
 broadcast 10.2.1.255
 gateway 10.1.2.1
 mtu 1500

解决方法

如果将接口(在您的情况下为eth0)添加到网桥,则默认情况下其VLAN子接口(eth0.2)将不再获取传入流量 – 所有数据包都将传递到网桥.在Linux 2.6.37之前,VLAN子接口有时可以工作,具体取决于您的硬件(如果硬件和驱动程序支持RX VLAN加速(NETIF_F_HW_VLAN_RX),则在桥接之前处理VLAN,并且VLAN子接口有效);从2.6.37开始,所有卡和驱动程序的行为都是相同的.

有几种解决方案有不同的缺点:

>将VLAN子接口添加到网桥而不是物理接口.但在这种情况下,网桥的所有端口都可以访问所有VLAN,这可能是不可取的.
>使用ebtables将802.1Q标记流量传递到VLAN子接口:

ebtables -t broute -A BROUTING -i eth0 -p 802_1Q -j DROP

(在BROUTING链中,ACCEPT表示“桥接”,DROP表示“路由”,或实际上“根据ethertype进行处理”,对于802_1Q类型,表示“传递到适当的VLAN子接口”.)

在这种情况下,网桥不会获得任何标记流量,但由于ebtables处理会产生稍微增加的开销.>重新配置网络以使接口上的所有流量都被标记,并且根本不需要桥接未标记的流量.

原文链接:https://www.f2er.com/linux/399842.html

猜你在找的Linux相关文章