<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 手機與無線通信 > 設計應用 > NAT路由器原理及其應用中需要注意的事項

          NAT路由器原理及其應用中需要注意的事項

          作者: 時間:2017-06-12 來源:網(wǎng)絡 收藏
          IP地址耗盡促成了的開發(fā),但開發(fā)的主要目的是為了有效的使用現(xiàn)有的internet地址。而同時根據(jù)RFC 1631(IP Network Address Translator)開發(fā)的卻可以在多重的internet子網(wǎng)中使用相同的IP,用來減少注冊IP地址的使用。

            路由技術使得一個私有網(wǎng)絡可以通過internet注冊IP連接到外部世界,位于inside網(wǎng)絡和outside網(wǎng)絡中的在發(fā)送數(shù)據(jù)包之前,負責把內(nèi)部IP翻譯成外部合法地址。內(nèi)部網(wǎng)絡的主機不可能同時于外部網(wǎng)絡通信,所以只有一部分內(nèi)部地址需要翻譯。

            NAT的翻譯可以采取靜態(tài)翻譯(static translation)和動態(tài)翻譯(dynamic translation)兩種。靜態(tài)翻譯將內(nèi)部地址和外部地址一對一對應。當NAT需要確認哪個地址需要翻譯,翻譯時采用哪個地址pool時,就使用了動態(tài)翻譯。采用portmultiplexing技術,或改變外出數(shù)據(jù)的源port技術可以將多個內(nèi)部IP地址影射到同一個外部地址,這就是PAT(port address translator)。當影射一個外部IP到內(nèi)部地址時,可以利用TCP的load distribution技術。使用這個特征時,內(nèi)部主機基于round-robin機制,將外部進來的新連接定向到不同的主機上去。注意:load distributiong只有在影射外部地址到內(nèi)部的時候才有效。

            NAT使用的幾種情況:

            a,連接到internet,但卻沒有足夠的合法地址分配給內(nèi)部主機。

            b,更改到一個需要重新分配地址的ISP。

            c,有相同的IP地址的兩個internat合并。

            d,想支持負載均衡(主機)。

            采用NAT后,一個最主要的改變就是你失去了端對端IP的traceability,也就是說,從此你不能再經(jīng)過NAT使用ping和traceroute,其次就是曾經(jīng)的一些IP對IP的程序不再可以正常運行,潛在的不易被觀察到的缺點就是增加了網(wǎng)絡延時。NAT可以支持大部分IP協(xié)議,但有幾個協(xié)議需要注意,首先tftp,rlogin,rsh,rcp和ip multicast都被NAT支持,其次就是bootp,snmp和NAT更新全部給拒絕了。NAT的幾個相關概念:

            Inside Local IP address: 指定于內(nèi)部網(wǎng)絡的主機地址,全局唯一,但為私有地址。

            Inside Global IP address: 代表一個或更多內(nèi)部IP到外部世界的合法IP。

            Outside Global IP address: 外部網(wǎng)絡主機的合法IP。

            Outside Local IP address: 外部網(wǎng)絡的主機地址,看起來是內(nèi)部網(wǎng)絡的,私有地址。

            Simple Translation Entry: 影射IP到另一個地址的Entry。

            Extended Translation Entry:影射IP地址和端口到另一個pair的Entry。

            a,內(nèi)部地址翻譯(Translation inside local addresses):

            這是比較通用的一種方法,將內(nèi)部IP一對一的翻譯成外部地址。

            在內(nèi)部主機連接到外部網(wǎng)絡時,當?shù)谝粋€數(shù)據(jù)包到達NAT時,router檢查它的NAT表,因為是NAT是靜態(tài)配置的,故可以查詢出來(simply entry),然后router將數(shù)據(jù)包的內(nèi)部局部IP(源地址)更換成內(nèi)部全局地址,再轉發(fā)出去。外部主機接受到數(shù)據(jù)包用接受到的內(nèi)部全局地址來響應,NAT接受到外部回來的數(shù)據(jù)包,再根據(jù)NAT表把地址翻譯成內(nèi)部局部IP,轉發(fā)過去。

            b,內(nèi)部全局地址復用(overloading inside glogal addresses)

            使用地址和端口pair將多個內(nèi)部地址影射到比較少的外部地址。這也是所謂的PAT。和內(nèi)部地址翻譯一樣,NAT router同樣也負責查表和翻譯內(nèi)部IP地址,唯一的區(qū)別就是由于使用了overloading,router將復用同樣的內(nèi)部全局IP地址,并存儲足夠的信息以區(qū)分它和其他地址,這樣查詢出來的是extended entry。NAT router和外部主機的通訊采用翻譯過的內(nèi)部全局地址,故同一般的通信沒有差別,router到內(nèi)部主機通訊時,同樣要查NAT表。

            c,TCP負載重分配(TCP load distributing)和以上兩種操作不同,這是NAT由外到內(nèi)的翻譯,所以那種以為WEB server一定要放置到NAT外部的說法是錯誤的。

            工作原理:外部主機向虛擬主機(定義為內(nèi)部全局地址)通訊,NAT router接受外部主機的請求并依據(jù)NAT表建立與內(nèi)部主機的連接,把內(nèi)部全局地址(目的地址)翻譯成內(nèi)部局部地址,并轉發(fā)數(shù)據(jù)包到內(nèi)部主機,內(nèi)部主機接受包并作出響應。NAT router再使用內(nèi)部局部地址和端口查詢數(shù)據(jù)表,根據(jù)查詢到的外部地址和端口做出響應。此時,如果同一主機再做第二個連接,NAT router將根據(jù)NAT表將建立與另一虛擬主機的連接,并轉發(fā)數(shù)據(jù)。

            d,處理重疊網(wǎng)絡。

            這種方法主要用于兩個intranet的互連,同樣給我們處理兩個重疊網(wǎng)絡提供了方法。它的實現(xiàn)要求DNS server的支持(用于區(qū)別兩個不同的主機)。

            1,主機A要求向主機C建立連接,先象DNS server做地址查詢。

            2,NAT router截獲DNS的響應,如果地址有重疊,將翻譯返回的地址。它將創(chuàng)建一個simply entry把重疊的外部全局地址(目的地址)翻譯成外部局部地址。

            3,NAT路由器轉發(fā)DNS響應到主機A,它已經(jīng)把主機C的地址(外部全局地址)翻譯成外部局部地址。

            4,當NAT路由器接受到主機C的數(shù)據(jù)包時,它將建立內(nèi)部局部、全局,外部全局、局部地址間的轉換,主機A將由內(nèi)部局部地址(源地址)翻譯成內(nèi)部全局地址,主機C將由外部全局地址(目的地址)翻譯成外部局部地址。

          發(fā)布者:博子


          關鍵詞: NAT CIDR 路由器

          評論


          相關推薦

          技術專區(qū)

          關閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();