我的设置:
- pfSense-WAN IP 1.2.3.4
- Linux 服务器 - LAN IP 192.168.1.5。
pfSense 设置为 1:1 NAT,将 WAN IP 4.5.6.7 更改为 192.168.1.5,这样我就可以从 LAN 外部访问 Linux 服务器。
我能够打开 4.5.6.7 来接收 ICMP 请求,并且运行正常;我可以使用 WAN 地址 ping Linux 服务器。
但是,我无法通过 WAN 地址连接到 Linux 服务器上运行在端口 80 上的 HTTP 服务器。我 100% 确定我在 pfSense 的防火墙中正确打开了端口。我还尝试添加允许所有流量(无论来源和目标)的防火墙规则,从而有效地禁用防火墙,但我仍然无法通过 WAN IP 地址访问 Linux 服务器上的端口 80。
总结一下:
192.168.1.5:80-运行正常
4.5.6.7:80 – 超时,即使防火墙已禁用
答案1
这实际上是 Xen 虚拟 NIC 驱动程序和 pfSense 2.2.x 的问题。我在 Xen VM 中运行 pfSense。
看:https://forum.pfsense.org/index.php?topic=88467.0
要修复此问题,您必须在 dom0 端禁用 tx 校验和卸载。在 pfSense VM 使用的两个 vif 上运行以下命令:
ethtool -K vif123.0 tx off
将“123.0”替换为两个 vif 中的任何一个。