以示例说明:
A主机外网IP为:100.1.1.1
B主机外网IP为:100.1.1.2
他们通过隧道 tunnel 进行连接(注意如果为wireguard,请在client和server端放行0.0.0.0/0,另外注个小技巧,在wg-quick进行启动的时候,会自动写默认路由,如果需要禁用他,你可以在配置文件的Interface进行设置参数Table = off即可)。
A主机tunnel分配的IP为:10.0.0.1
B主机tunnel分配的IP为:10.0.0.2
目的: 使用B主机转发A主机的端口,并且A主机可以接受到源IP,如(1.1.1.1)访问 100.1.1.2:80->10.0.0.1:80 并且10.0.0.1 可以看到源IP 1.1.1.1
我们仅需在B主机配置iptables转发规则如:
iptables -t nat -A PREROUTING -d 100.1.1.2 -p tcp -m tcp --dport 80 -j DNAT --to-destination 10.0.0.1
A主机配置静态路由如:
ip ru add from 10.0.0.0/24 lookup 101 && ip ro add default via 10.0.0.2 table 101
另外记的配置相关内核参数
很好,非常感谢。