一、SANT
請求報文源地址替換
實現內網(192.168.129.0/24)通過路由訪問外網(172.17.16.169)
路由器: 172.17.16.173和192.168.129.173
1.缺點
缺點
多個內網主機同時訪問外網主機的web服務;則路由的地址不夠,此時需要用PNAT(端口轉換)
2.內網路由指向路由器的內網網段IP
nmcli c modify con-eth1 ipv4.gateway 192.168.129.173
3.在路由器POSTROUTING加策略
#靜態IP轉換
iptables -t nat -A POSTROUTING -s 192.168.129.0/24 ! -d 192.168.129.0/24 -j SNAT --to-source 172.17.16.173
#動態IP轉換
iptables -t nat -A POSTROUTING -s 192.168.129.0/24 ! -d 192.168.129.0/24 -j MASQUERADE
4.開啓轉發功能
sysctl -w net.ipv4.ip_forward=1
5.與網絡防火牆區別
#不同
只設置內網的路由記錄
在172.17網段查看,是172.17.16.173訪問,但其實是192.168.129.174在訪問
#相同
都要開啓路由轉發功能
二、DANT
請求報文目標地址替換
1.實現
外網訪問路由器的某個端口時,路由器替換目標地址IP和端口爲內網的某個服務器的IP和端口
實現外網可以訪問內網的服務
2.缺點
只能映射一個內部服務器主機
3.內網路由指向路由器的內網網段IP
nmcli c modify con-eth1 ipv4.gateway 192.168.129.173
4.在路由器POSTROUTING加策略
#轉換IP加端口
iptables -t nat -A PREROUTING -d 172.17.16.173 -p tcp --dport 80 -j DNAT --to-destination 192.168.129.174:8080
#轉換IP
iptables -t nat -A PREROUTING -d 172.17.16.173 -j DNAT --to-destination 192.168.129.174
4.開啓轉發功能
sysctl -w net.ipv4.ip_forward=1
5.結果
三、REDIRECT
訪問本機a端口時,將端口轉換爲本機的b端口
1.實現訪問172.17.16.169的80端口時,轉換爲本機端口8080
iptables -t nat -A PREROUTING -d 172.17.16.169 -p tcp --dport 80 -j REDIRECT --to-ports 80
2.訪問本機的80端口,轉換爲本機的8080端口,則在本機執行,寫本機IP
iptables -t nat -A PREROUTING -d 本機IP -p tcp --dport 80 -j REDIRECT --to-ports 80