1. 程式人生 > >SNAT/DNAT

SNAT/DNAT

公網ip lin 區分 list 給他 tex 通訊 火墻 中斷

SNAT,是源地址轉換,其作用是將ip數據包的源地址轉換成另外一個地址。

名詞解釋

編輯 SNAT,可能有人覺得奇怪,好好的為什麽要進行ip地址轉換啊,為了弄懂這個問題,我們要看一下局域網用戶上公網的原理,假設內網主機A(192.168.2.8)要和外網主機B(61.132.62.131)通信,A向B發出IP數據包,如果沒有SNAT對A主機進行源地址轉換,A與B主機的通訊會不正常中斷,因為當路由器將內網的數據包發到公網IP後,公網IP會給你的私網IP回數據包,這時,公網IP根本就無法知道你的私網IP應該如何走了。所以問它上一級路由器,當然這是肯定的,因為從公網上根本就無法看到私網IP,因此你無法給他通信。為了實現數據包的正確發送及返回,網關必須將A的址轉換為一個合法的公網地址,同時為了以後B主機能將數據包發送給A,這個合法的公網地址必須是網關的外網地址,如果是其它公網地址的話,B會把數據包發送到其它網關,而不是A主機所在的網關,A將收不到B發過來的數據包,所以內網主機要上公網就必須要有合法的公網地址,而得到這個地址的方法就是讓網關進行SNAT(源地址轉換),將內網地址轉換成公網址(一般是網關的外部地址),所以大家經常會看到為了讓內網用戶上公網,我們必須在routeros的firewall中設置snat,俗稱IP地址欺騙或偽裝(masquerade)

區分

編輯 如何區分SNAT和DNAT 從定義來講它們一個是源地址轉換,一個是目標地址轉換。都是地址轉換的功能,將私有地址轉換為公網地址。 要區分這兩個功能可以簡單的由連接發起者是誰來區分: 內部地址要訪問公網上的服務時(如web訪問),內部地址會主動發起連接,由路由器或者防火墻上的網關對內部地址做個地址轉換,將內部地址的私有IP轉換為公網的公有IP,網關的這個地址轉換稱為SNAT,主要用於內部共享IP訪問外部。 當內部需要提供對外服務時(如對外發布web網站),外部地址發起主動連接,由路由器或者防火墻上的網關接收這個連接,然後將連接轉換到內部,此過程是由帶有公網IP的網關替代內部服務來接收外部的連接,然後在內部做地址轉換,此轉換稱為DNAT,主要用於內部服務對外發布。 在配置防火墻或者路由acl策略時要註意這兩個NAT一定不能混淆。

SNAT/DNAT