如何configuration从内部机器到另一台机器的互联网路由?

我有一个内部机器,说X(不连接到互联网),连接到一台机器,说Y连接到互联网。

我应该如何configuration机器才能通过Y从内部机器X路由到互联网?

Y使用的默认路由器必须知道networkingX使用的是通过Y可用的。

所以,如果X在192.168.1.12/24,Y是在192.168.1.1/24和192.168.0.101/24。 然后在路由器(假设在192.168.0.1/24,连接到互联网)与Y共享连接,你需要添加:

 ip route通过192.168.0.101范围全局添加192.168.1.0/24

并通过适当的规则让防火墙让stream量通过。

另一种解决方法是在Y中使用SNAT:

 iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

(假设YY的默认路由器之间的networking连接到eth0)

在这两种情况下,您都需要将数据包转发添加到Y

 echo 1> / proc / sys / net / ipv4 / ip_forward
 echo“net.ipv4.ip_forward = 1”>> /etc/sysctl.conf

将机器X上的网关设置为Y,然后确保主机Y允许数据包转发。 在Linux上与iptables这将需要或多或less这个:

编辑/etc/sysctl.conf以允许转发,确保net.ipv4.ip_forward已被设置为1

之后,在iptables中应用规则以允许通信。

 iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE 

(如果eth0是正确的设备)

尝试这个。

sysctl -w net.ipv4.ip_forward = 1

在机器X上,将默认路由设置为Y.

如果可以的话,通过添加永久设置

net.ipv4.ip_forward = 1

到:/etc/sysctl.conf

并重新启动。