NAT實現

一、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
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章