![如何使用 Linux 从嵌套私有子网路由到互联网](https://linux22.com/image/583807/%E5%A6%82%E4%BD%95%E4%BD%BF%E7%94%A8%20Linux%20%E4%BB%8E%E5%B5%8C%E5%A5%97%E7%A7%81%E6%9C%89%E5%AD%90%E7%BD%91%E8%B7%AF%E7%94%B1%E5%88%B0%E4%BA%92%E8%81%94%E7%BD%91.png)
在我们的部门,我们有一个刀片系统,该系统有一个主节点和四个连接到主节点的从节点。该系统使用自己的子网 (192.168.1.x),只有主节点连接到内联网(从而连接到互联网)。每个节点都运行 CentOS 5。我想更新 CentOS(使用 yum)。如何更新从节点,因为它们无法直接访问内联网/互联网。您能否指导我如何设置转发/路由,以便从节点也可以向内联网/互联网发出请求?
有关设置的更多详细信息:
- 主节点
eth1 161.42.9.9
eth0 192.168.1.254
网关 161.42.9.1
- 4 个从属节点
连接到主节点 eth0
IP 192.168.1.1-4(使用主节点上运行的 DHCP 获取)
网关 192.168.1.254
仅允许 161.42.9.9(= 主节点)访问互联网(通过使用代理)。
答案1
如果您想要使用同一个公网IP地址提供Internet访问,则需要使用iptables
如下方式来做SNAT
(源NAT):
iptables -o eth1 -A POSTROUTING -s 192.168.1.1 -j SNAT --to-source 161.42.9.9
iptables -o eth1 -A POSTROUTING -s 192.168.1.2 -j SNAT --to-source 161.42.9.9
iptables -o eth1 -A POSTROUTING -s 192.168.1.3 -j SNAT --to-source 161.42.9.9
iptables -o eth1 -A POSTROUTING -s 192.168.1.4 -j SNAT --to-source 161.42.9.9
您还需要在主节点上启用 IP 转发。以 root 身份运行:
# echo 1 > /proc/sys/net/ipv4/ip_forward