所有,由于我在安装最新内核(3.10.0-693.2.2)后重新启动了服务器,因此我无法再让端口转发工作。
当前设置如下。我家里的 ISP 不提供公共 IP 地址。为了访问我家里的服务器(在 Proxmox 上运行),我通过 OpenVPN 将数据中心内的网络服务器上的所有请求转发到端口 8006 到家里的 Proxmox (ip 10.8.0.26)。
我一年多以来一直在具有公共IP地址的服务器上使用的规则:
iptables -A PREROUTING -t nat -i ens3 -p tcp --dport 8006 -j DNAT --to 10.8.0.26:8006
iptables -A FORWARD -p tcp -d 10.8.0.26 --dport 8006 -j ACCEPT
iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o ens3 -j MASQUERADE
cat /proc/sys/net/ipv4/ip_forward 1
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
default gateway 0.0.0.0 UG 0 0 0 ens3
10.8.0.0 10.8.0.2 255.255.255.0 UG 0 0 0 tun0
10.8.0.2 0.0.0.0 255.255.255.255 UH 0 0 0 tun0
link-local 0.0.0.0 255.255.0.0 U 1002 0 0 ens3
ifconfig tun0
tun0: flags=4305<UP,POINTOPOINT,RUNNING,NOARP,MULTICAST> mtu 1500
inet 10.8.0.1 netmask 255.255.255.255 destination 10.8.0.2
unspec 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00 txqueuelen 100 (UNSPEC)
RX packets 100 bytes 15105 (14.7 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 347 bytes 38520 (37.6 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
过去重新启动从未引起问题,但现在我无法再让它工作了。 Web 服务器可以连接到端口 8006 到 10.8.0.26。连接到 VPN 的系统也可以毫无问题地连接。因此,转发本身似乎不起作用。尝试连接到网络服务器端口 8006 将导致超时。
有人知道这里发生了什么事吗?
非常感谢,格雷格