服务器A:
eth0:192.168.3.172 【内网地址,无网关】
eth1:223.xxx.xxx.172 【外网地址,有网关】
服务器B:
eth0:192.168.3.108 【内网地址,无网关】
需求:
通过访问服务器A的公网IP地址 223.xxx.xxx.172 的51521端口,转发到服务器B的1521端口。
-----------------------------------------------
配置过程:
1>修改配置文件,开启路由转发功能
# vim /etc/sysctl.conf
net.ipv4.ip_forward = 1
# sysctl -p
2>配置iptables转发策略
# 转发策略
iptables -t nat -A PREROUTING -d 223.xxx.xxx.172 -p tcp --dport 51521 -j DNAT --to-destination 192.168.3.108:1521
iptables -t nat -A POSTROUTING -d 192.168.3.108 -p tcp --dport 1521 -j SNAT --to 192.168.3.172
iptables -A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
# 开放端口
iptables -A INPUT -p tcp --dport 51521 -j ACCEPT
# iptables -A INPUT -s 118.xxx.xxx.213/32 -p tcp --dport 51521 -j ACCEPT # 仅允许公司公网IP地址118.xxx.xxx.213访问服务器的51521端口
#保存策略
iptables-save >/etc/sysconfig/iptables
-----------------------------------------------
查看 /etc/sysconfig/iptables 文件,如下: