我在 CentOS 7 主机上运行了一个 pfSense 虚拟机。该主机有 2 个网络适配器,enp1s0和enp3s0。enp3s0连接到一座桥br1。我的 pfSense 虚拟机也连接到此网桥。这是我们网络的“WAN”端,pfSense 通过 RFC 1483 桥接模式下的 ADSL 调制解调器与我们的 ISP 验证 PPPoE 会话。enp1s0连接到一座桥br0,并且 pfSense 和其他虚拟机都连接到该桥。enp1s0物理连接到我们的网络交换机,允许我们的 LAN 流量通过 pfSense 路由并访问互联网。
对于 LAN 客户端来说,这很好用,连接到网络交换机的工作站可以毫无问题地访问互联网。但是,我们的虚拟机和 CentOS 主机存在问题。
虚拟机和主机可以顺利 ping WAN 服务器,但 TCP 流量无法连接。(LAN 通信正常,我可以从本地机器通过 SSH 进入虚拟机,没有任何问题)。观察:
[user@host ~]$ ping google.com
PING google.com (216.58.199.46) 56(84) bytes of data.
64 bytes from syd09s12-in-f14.1e100.net (216.58.199.46): icmp_seq=1 ttl=56 time=20.0 ms
64 bytes from syd09s12-in-f14.1e100.net (216.58.199.46): icmp_seq=2 ttl=56 time=19.9 ms
64 bytes from syd09s12-in-f14.1e100.net (216.58.199.46): icmp_seq=3 ttl=56 time=55.5 ms
64 bytes from syd09s12-in-f14.1e100.net (216.58.199.46): icmp_seq=4 ttl=56 time=186 ms
64 bytes from syd09s12-in-f14.1e100.net (216.58.199.46): icmp_seq=5 ttl=56 time=79.2 ms
^C
--- google.com ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4003ms
rtt min/avg/max/mdev = 19.911/72.319/186.857/61.526 ms
[user@host ~]$ wget google.com
--2016-01-15 10:33:16-- http://google.com/
Resolving google.com (google.com)... 216.58.199.46, 2404:6800:4006:803::200e
Connecting to google.com (google.com)|216.58.199.46|:80... failed: Connection timed out.
Connecting to google.com (google.com)|2404:6800:4006:803::200e|:80... failed: Network is unreachable.
我仔细检查了 pfSense 和主机上的 iptables 中的防火墙,没有规则阻止此流量。主机路由表似乎没有问题:
[user@host ~]$ route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.1.1 0.0.0.0 UG 1024 0 0 br0
192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 br0
我不知道问题可能出在哪里,如果能提供任何关于如何查找的建议我将不胜感激。
谢谢 :)