DNAT
DNAT(Destination Network Address Translation):目的地址轉換的作用是將一組本地內部的地址映射到一組全球地址。通過端口映射實現從外網可以訪問內部的機器。
例子:
有兩臺服務器Server A(具有雙網卡em1, em2), Server B,其中(proxy_ip和private_ip可以ping通):
1. Server A:具有內網地址proxy_ip (proxy_nic=em1)和外網地址public_ip (public_nic=em2);
2. Server B:具有內網地址private_ip;
具體配置
只需要配置Server A實現到ServerB的端口映射,即可從外網通過Server A訪問Server B。
iptables-A INPUT -p tcp -d $public_ip --dport $public_port -j ACCEPT
iptables -A OUTPUT -p tcp -s $public_ip --sport $public_port -j ACCEPT
iptables-t nat -A PREROUTING -d $public_ip -p tcp --dport public_port -j DNAT--to-destination $private_ip:$private_port
iptables -t nat -A POSTROUTING -d $private_ip -p tcp --dport $private_port -jSNAT --to $proxy_ip
iptables-A FORWARD -o $proxy_nic -d $private_ip -p tcp --dport $private_port -jACCEPT
iptables -A FORWARD -i $proxy_nic -s $private_ip -p tcp --sport $private_port-j ACCEPT