暴露私网ip

暴露私网ip

我有以下设置:

Box A
eth0 - 192.168.1.101
eth1 - 10.10.2.1

Box B
eth0 - 10.10.2.2

盒子 A 可以通过 eth0 访问互联网。我希望盒子 B 在 192.168.1.0/24 网络上可见,这样我就可以从另一个盒子直接 ssh 到它,但盒子 A 也必须可用。

我考虑在盒子 A 上为 eth0 创建一个虚拟 IP,然后使用以下方法将所有流量转发到盒子 B:

ifconfig eth0:0 192.168.1.102

iptables -t nat -A PREROUTING -i eth0:0 -j DNAT --to-destination 10.10.2.2    

但这似乎不起作用。

此外,IP 转发已启用,并且 Box B 可以访问互联网

 iptables -t nat -A POSTROUTING -j MASQUERADE

答案1

我将通过在网络中的默认网关上添加静态路由来解决这个问题192.168.1.0/24,这意味着所有到10.10.2.0/24网络的数据包都将通过192.168.1.101节点路由。

然后,您需要启用 IP 转发192.168.1.101

然后,您还需要在 Box B 上添加192.168.1.0/24通过的路线。10.10.2.1

这样,您就可以在两个网络中使用10.10.2.x192.168.1.x地址,并且所有流量将在网络之间路由。

答案2

您不能使用虚拟接口作为 的参数-i。诀窍是使用目标地址

iptables -t nat -A PREROUTING -d 192.168.1.102 -j DNAT --to-destination 10.10.2.2

相关内容