使用iptables更改传入数据包的IP地址
我有一个局域网内的服务器(S1),一个路由器在我的控制之外。 在服务器上安装openvpn,我可以用sshlogin。 局域网上有另一台服务器(S2),我想把S2上的端口转发到端口S1。 如果我做 sudo iptables -t nat -A PREROUTING -p tcp -m tcp -d S1 –dport 8001 -j DNAT –to-destination S2:80 然后尝试从我的电脑连接S1:8001我有S1的LAN接口: IP **my_vpn_ip**.48174 > S2.80: Flags [S], seq 4243753453, win 14600, options [mss 1368,sackOK,TS val 89266048 ecr 0,nop,wscale 7], length 0 显然这是行不通的,因为S2没有路由到我的电脑,也不能发送回复。 是否有可能欺骗源S1上的数据包回来,然后做NAT? 在S2上改变路由是不可能的,因为它是一个function非常有限的IP摄像机。