1. 程式人生 > >Linux系統SNAT與DNAT策略應用

Linux系統SNAT與DNAT策略應用

本地 添加 web服務器 目標 內外網 post tables 網關 根據

SNAT(源地址轉換)是Linux防火墻的一種地址轉換操作,也是iptables命令中的一種數據包類型,其作用是根據指定條件修改數據包的源IP地址

DNAT(目標地址轉換)是Linux防火墻的另一種地址轉換操作,同意是iptables命令中的一種數據包類型,其作用是根據指定條件修改數據包的目標IP地址和目標端口


實驗環境:一臺Linux6.5作為外網web服務器,地址為12.0.0.12

一臺Linux6.5作為防火墻和內外網的網關,兩個地址分別為192.168.100.1 ; 12.0.0.1

一臺widows作為內網客戶機,地址為192.168.100.4


技術分享圖片

1 先對外網的web服務器進行設置,這裏需要清空裏面的防火墻條目規則,並且要關閉setenforce 0,開啟它的網站服務


技術分享圖片

2 這裏在本地自己訪問了一下沒有發現什麽問題


技術分享圖片

3 接著我們要對作為防火墻的這臺服務器進行配置,這裏需要添加雙網卡,其中一塊作為內網的網關,另一塊作為外網的網關


技術分享圖片

技術分享圖片

技術分享圖片

4 接著關閉這臺服務器的setenforce,同樣清空它的防火墻規則條目,同時需要開啟它的路由轉換功能,因為它作為內外網的網關,如果不開啟那兩臺機器無法

相互訪問


技術分享圖片


技術分享圖片

5 這裏用內網的win7訪問外網的網站服務器,可以看見訪問成功


技術分享圖片

6 內網可以訪問外網之後我們開始做SNAT地址轉換,只需只需上圖紅框中的命令便可以完成。

該條命令中 -t nat 是指定nat表,需要應用該表中的規則

-A POSTROUTING 是指定該表的規則鏈

-s 是指定所要轉換的源地址

-o 是表示出站網卡,這裏我的出站網卡為eth1

-j SNAT 表示執行SNAT的地址轉換操作

--to-source 表示轉換後的地址


技術分享圖片

技術分享圖片

7 這裏我再次訪問web服務器,可以看到在日誌文件中顯示訪問者的地址為12.0.0.1


技術分享圖片

8接著再進行DNAT地址轉換,執行上圖紅框中的命令,這條命令與SNAT地址轉換的命令大同小異

這裏 -A PREROUTING 是需要指定PREROUTING這條規則

-i 表示入站網卡

-p 指定協議

-dport 指定接口

--to-destination 表示轉換後的地址


技術分享圖片

9接著我們開啟內網客戶機的網站服務,然後用外網的web服務器用轉換後的地址進行訪問


技術分享圖片

10 最後用外網的web服務器訪問12.0.0.1這個地址,可以看見訪問到的是內網的網站。




Linux系統SNAT與DNAT策略應用