标记一下, 今天想让一台 Red Hat http://www.linuxidc.com/topicnews.aspx?tid=10 Enterprise Linux 7 开通 iptables 的 nat 转发功能, 找了半天.
A 服务器: 192.168.30.20/24
B 服务器: 192.168.30.1/24,eth0; 192.168.40.1/24,eth1
C 服务器: 192.168.40.20/24
目标: 让 A 可以 ping 和 SSH 到 c 机器. 这就需要通过 B 服务器来跳转.
操作过程:
1, 在 B 服务器上开启内核路由转发参数
临时生效:
echo "1"> /proc/sys.NET/ipv4/ip_forward
永久生效的话, 需要修改 sysctl.conf:
net.ipv4.ip_forward = 1
执行 sysctl -p 马上生效
2,B 服务器开启 iptables nat 转发
- iptables -t nat -A POSTROUTING -s 192.168.30.0/24 -d 192.168.40.0/24 -o eth1 -j MASQUERADE
- # 配置源地址 30 网段, 目标地址 40 网段的地址转换, 从 eth1 网卡出.
- iptables -t nat -A POSTROUTING -s 192.168.40.0/24 -d 192.168.30.0/24 -o eth0 -j MASQUERADE
- # 配置源地址 40 网段, 目标地址 30 网段的地址转换, 从 eth0 网卡出.
永久保存: iptables-save> /etc/sysconfig/iptables
TIP: 注意对应网卡.
3, 在 A 和 C 服务器上设置路由为 B 服务器 IP
- A: route add -net 192.168.40.0 netmask 255.255.255.0 gw 192.168.30.1
- C: route add -net 192.168.30.0 netmask 255.255.255.0 gw 192.168.40.1
来源: http://www.bubuko.com/infodetail-2970481.html