微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Linux网桥(brctl)正在丢弃数据包

我已经研究了这个问题几天了,还没有找到答案.非常感谢您的帮助!

我在物理服务器上运行了一些虚拟机(虚拟机).服务器使用Linux桥接器(br100)将这些VM连接在一起:

# brctl show
bridge name     bridge id               STP enabled     interfaces
br100           8000.984be15fe7e3       no              eth1.1729
                                                        vnet0
                                                        vnet1

vnet0和vnet1是VM的虚拟NIC.

br100(物理服务器)分配给IP 172.16.0.11.连接到vnet1的VM分配给172.16.0.3,vnet0分配给172.16.0.5.

到现在为止还挺好. 172.16.0.3可以ping 172.16.0.5没有问题.

现在我正在尝试将172.16.0.3设置为路由器(openvpn服务器,如果这很重要)到子网10.8.0.0/16.

这是我的问题:10.8.0.0/16中的机器(在本例中为10.8.0.6)可以ping 172.16.0.3,但无法ping 172.16.0.5.

(我认为)我已经排除了所有明显的原因:ip_forward打开,iptables刷新等等.现在我已经缩小了原因:br100不会转发数据包,因为它应该!

当我从10.8.0.6 ping 172.16.0.5时,数据包被传递到物理服务器上的vnet1(VM 172.16.0.3):

# tcpdump -leni vnet1 icmp
tcpdump: WARNING: vnet1: no IPv4 address assigned
tcpdump: verbose output suppressed,use -v or -vv for full protocol decode
listening on vnet1,link-type EN10MB (Ethernet),capture size 65535 bytes
07:45:03.858356 02:16:3e:6a:42:57 > 02:16:3e:02:40:82,ethertype IPv4 (0x0800),length 98: 
10.8.0.6 > 172.16.0.5: ICMP echo request,id 63242,seq 1046,length 64
07:45:04.858239 02:16:3e:6a:42:57 > 02:16:3e:02:40:82,length 98:
10.8.0.6 > 172.16.0.5: ICMP echo request,seq 1047,length 64
^C
2 packets captured
2 packets received by filter
0 packets dropped by kernel

但是没有转发到vnet0(172.16.0.5):

# tcpdump -leni vnet0 icmp
tcpdump: WARNING: vnet0: no IPv4 address assigned
tcpdump: verbose output suppressed,use -v or -vv for full protocol decode
listening on vnet0,capture size 65535 bytes
^C
0 packets captured
0 packets received by filter
0 packets dropped by kernel

我也遵循this post中的建议并将0设置为/ proc / sys / net / bridge / bridge-nf- *,但它似乎没有帮助.

除了刷新iptables过滤器之外,我还在iptables中启用了TRACE,这表明这些数据包从未命中过iptables.

Linux桥接器不能在端口之间转发数据包的任何其他原因?

解决方法

找到答案了! Linux以太网桥咨询ebtables以决定转发哪些数据包以及丢弃哪些数据包. Flushing ebtables解决了我的问题.

原文地址:https://www.jb51.cc/linux/397578.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐