麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學院 > 網絡通信 > 正文

淺析NAT的類型

2019-11-03 09:00:46
字體:
來源:轉載
供稿:網友
何寶宏


  摘要 介紹了四種典型的NAT類型和兩種典型的傳統NAT類型。

  關鍵詞 NAT NATP 類型

  一、引言   

  RFCl631以及相關RFC定義的網絡地址翻譯器(NAT)是一種將ip地址從一個編址域(realm)映射到另外一個編址域的方法,如最典型的應用是把RFCl918定義的私有IP地址映射到Internet所使用的公有IP地址。雖然NAT技術已經得到廣泛應用,但它是一把雙刃劍,在帶來節省IPv4地址空間等好處的同時,破壞了Internet最基本的“端到端的透明性”的設計理念,增加了網絡的復雜性,阻礙了業務的創新。   

  IETF一直主張利用IPv6技術解決地址短缺問題,因此IETF雖然出版了幾個與NAT相關的RFC,但對NAT技術(尤其是穿越問題)一直沒有系統的標準化工作,如SIP和Mobile IP就是NAT出現后設計的一些協議,都未考慮到NAT的穿越問題。最近,業界意識到Internet在短期內不可能過渡到IPv6,IPv4和IPv6將長期并存,NAT以及NAT-PT(NAT-協議翻譯)將繼續得到長期應用,因此NAT相關問題開始引起了IETF和ITU-T等相關國際標準化組織的關注。中國通信標準化協會IP與多媒體工作委員會也正在積極參與ITU-TSGl6組的相關活動,加緊制定中國的多媒體業務NAT穿越標準。本文介紹NAT穿越問題的重要組成部分:NAT的類型。

  二、NAT的類型   

  從功能上看,主要有以下幾種典型的NAT(RFC2663)(見圖1):


圖1 NAT的類型
  

  1.傳統NAT(Traditional NAT)   

  在多數情況下,傳統NAT允許位于內部網絡的主機(采用RFCl918地址)透明地訪問外部網絡中的主機,把從外部網絡到內部網絡的訪問作為一種特例,為事先選擇好的特定內部主機做靜態地址映射。外部網絡中主機的IP地址在外部網絡以及內部網絡中是惟一的和有效的,但內部網絡主機的IP地址只有在內部網絡中才是惟一的,在外部網絡中不一定有效。換言之,NAT不會向外部編址域通告內部網絡的地址,但有可能向內部網絡通告外部網絡的地址。內部網絡使用的地址一定不能與外部網絡的地址重疊,任何一個地址是一個內部地址或外部地址,不能同時是內部和外部地址。   

  有關傳統NAT的詳細描述見RFCl631和RFC3022。傳統NAT包括基本NAT和NAPT兩大類。   

  (1)基本NAT   

  NAT擁有多個公開IP地址,當位于內部網絡的主機向外部主機發起會話請求時,把內部地址翻譯成全球惟一的公開IP地址。對于從內部網絡中外出的IP包,翻譯源IP地址以及相關的字段,如IP/TCP/UDP/ICMP頭校驗和。對于進入內部網絡的IP包,翻譯目的IP地址以及與上面所羅列的相關字段。如果內部網絡中主機的數目不大于NAT所擁有的公開IP地址的數目,則可以保證每個內部地址都可以映射到一個公開的IP地址,否則允許同時連接到外部網絡的內部主機的數目會受到NAT公開IP地址數量的限制。可以使用靜態映射的方式,把特定內部主機映射為一個特定的全球惟一的地址,保證了外部對內部主機的訪問。一個內部主機可以利用相同的地址映射同時發起多個會話。   

  (2)NAPT   

  NAPT(網絡地址端口翻譯)把“基本NAT”翻譯的概念延伸了一步,翻譯地址的同時也翻譯傳輸層標志(如TCP/UDP的端口號,ICMP的查詢ID),從而把多個內部主機的傳輸層標志復用為一個惟一的外部地址。NAPT使得一組主機可以共享一個惟一的外部地址。在實際使用中可以把NAPT和基本NAT結合起來,將一組外部地址與端口翻譯關聯起來。   

  對于從內部網絡向外的訪問請求,NAPT翻譯源IP地址、源傳輸層標志以及相關的字段,如IP,TCP,UDP和ICMP頭校驗和。對于進入內部網絡的包,翻譯目的IP地址、目的傳輸層標志以及IP層和傳輸層頭校驗和。傳輸層標志可以是TCP/UDP端口號或ICMP查詢ID中的任意一種。   

  2.雙向NAT(Bi-directionaINAT,Two-WayNAT)   

  當使用雙向NAT(Bi-directionaINAT或Two-WayNAT)時,可以從內部網絡向外部網絡發起會話請求,也可以從外部網絡向內部網絡發起會話請求。當在外出或進入任何一個方向上建立連接時,把內部網絡地址靜態或動態綁定到全局惟一的地址上。這里假設位于內部網絡和外部網絡之間的名字空間(FQDN,Fully Qualified Domain Names)是端到端惟一的,因為只有這樣才能夠使得位于外部編址域的主機利用域名系統(DNS)訪問內部網絡的主機。在雙向NAT上必須部署DNS-ALG(DNS應用層網關,DNS-application Level Gateway),以處理名字到地址的映射。當一個DNS包需要穿越內部和外部編址域時,DNS-ALG必須能夠將DNS查詢和響應消息中的內部地址翻譯成外部地址,或把外部地址翻譯成內部地址。   

  3.兩次NAT(Twice NAT)   

  兩次NAT是NAT的一個變種,它同時修改源和目的地址。這與前面的傳統NAT和雙向NAT(BiDirectional)都不同,前面的兩種NAT只翻譯源或者目的地址(端口)。   

  兩次NAT在內部編址域和外部編址域存在沖突時非常有用。典型例子之一是當一個站點(不恰當地)使用已分配給其它機構的公開IP地址對其內部主機進行編址時;例子之二是當一個站點從一家運營商換到另外一家運營商,同時希望(在內部)保留前一家運營商分配的地址時(而前一家運營商可能會在一段時間后將這些地址重新分配給其它人使用)。在這些情況下,非常關鍵的一點就是外部網絡的主機可能會分配得到以前已分配給內部主機的同一地址。如果該地址碰巧出現在某個包中,則應該將它轉發給內部主機,而不是通過NAT轉發給外部編址域。兩次NAT通過同時翻譯IP包的源和目的地址,試圖橋接這些編址域,解決了地址沖突的問題。   

  4.多宿主NAT(Multihomed NAT)   

  使用NAT會帶來很多問題(RFC2993)。比如,NAT設備要為經過它的會話維護狀態信息,而一個會話的請求和響應必須通過同一NAT設備做路由,因此通常要求允許NAT末梢域邊界路由器必須是惟一的,所有的IP包要么發起,要么終結在該域。但這種配置將NAT設備變成了可能的單點故障點。   

  為了讓一個內部網絡能夠在某個NAT鏈路故障的情況下,也可以保持與外部網絡的連通性,通常希望內部網絡到相同或不同的ISP具有多條連接(多宿主的),希望經過相同或不同的NAT設備。   

  又如,多個NAT設備或多條鏈路使用同一NAT,共享相同的NAT配置能夠為相互之間提供故障備份。在這種情況下,有必要讓備份NAT設備交換狀態信息,以便當主NAT出現故障時,備份NAT能夠擔負起透明地保持會話的能力。

  三、傳統NAT的類型   

  目前,市場上使用最多的是傳統NAT設備,尤其是NAPT設備。傳統NAT(內部地址,端口)與(內部地址,端口)的映射方式主要有以下幾種典型類型(RFC3489)(見圖2):


圖2 傳統NAI的類型
  

  1.克隆NAT(CloneNAT)   

  當在(私有IP,私有端口)與(公開IP.公開端口)已經建立了一個端口映射表后,克隆NAT將為隨后從相同的私有地址和端口號發起的呼叫重復使用該映射,條件是只要使用映射(有時業叫綁定)的會話至少有一個繼續保持激活狀態。   

  從圖3可以看出,客戶A分別從相同的內部地址和端口號(10.0.0.1:1234)同時發起兩個會話請求到服務器1和服務器2,因為這兩個請求來自相同的內部地址和端口,所以克隆NAT將為這兩個不同的會話請求分配相同的公開端點號(100.100. 100. 100:62000),以保證客戶A的“身份”能夠在經過翻譯后仍然保持一致。NAT和防火墻不翻譯端口號,因此也是克隆方式的NAT。根據克隆時受到的限制大小,又可以把克隆NAT分為以下三種:


圖3 克隆NAT
  

  (1)全克隆(Full Cone)   

  首先,把所有來自相同內部IP地址和端口的請求映射到相同的外部1P地址和端口。其次,任何一個外部主機通過把一個TP包發送給已得到映射的外部IP地址的方式,都能夠把該包發送給該內部主機。   

  (2)限制性克隆(Restricted Cone)   

  把所有來自相同內部IP地址和端口號的請求映射到相同的外部IP地址和端口。與全克隆NAT方式不同,只有當內部主機以前曾經給IP地址為x的外部主機發送過一個包時,IP地址為x的該外部主機才能夠把一個IP包發送給該內部主機。   

  (3)端口限制性克隆(Port Restricted Cone)   

  端口限制性克隆與限制性克隆類似,只是限制中多了端口號。特別是,一個外部主機可以發送一個源IP地址和源端口號分別為(x,P)的IP包給外部主機,只有當內部主機以前曾經給IP地址為x,端口號為P的外部主機發送過一個包時,IP地址為X的該外部主機才能夠把一個源端口號為P的IP包發送給該內部主機。   

  2.對稱NAT   

  對稱式NAT(symmetric NAT)是指把所有來自相同內部IP地址和端口號,到特定目的1P地址和端口號的請求映射到相同的外部TP地址和端口。如果同一主機使用不同的源地址和端口對,發送的目的地址不同,則使用不同的映射。只有收到了一個IP包的外部主機才能夠向該內部主機發送回一個UDP包。對稱式的NAT不保證所有會話中的(私有地址,私有端口)和(公開IP,公開端口)之間綁定的一致性。相反,它為每個新的會話分配一個新的端口號。   

  從圖4可以看出,假如客戶A分別從相同的內部地址和端口號(10.0.0.1:1234)同時發起兩個會話請求到服務器1和服務器2,對稱NAT可能會為這兩個來自相同地點的會話請求分配不相同的公開端點號,如把100 100. 100.100:62000分配給會話1,把100 100. 100.100:62001分配給會話2。因為這兩個會話的有一個端點不同,所以雖然在翻譯的過程中客戶A的身份發生了變化,但NAT仍然能夠正確工作。


圖4 對稱NAT


  
摘自 泰爾網
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 91精彩视频| 国产精品久久久久久久不卡 | 最新久久免费视频 | 免费一区在线 | 在线免费av观看 | www.99久久久| 一级空姐毛片 | 在线观看中文字幕av | 精品视频一区二区三区四区 | 国产成人精品午夜视频' | 成人毛片av在线 | 亚洲网站免费观看 | 欧美一级淫片免费视频黄 | 国产91丝袜在线播放 | 欧美日韩综合视频 | 亚洲一二区精品 | 久久久久久久久亚洲精品 | 国av在线| 一级看片免费视频 | 法国极品成人h版 | 日本aⅴ在线 | 欧洲精品久久久 | 久久国产精品久久久久久久久久 | 免费色片 | 亚洲第五色综合网 | 中文字幕综合在线观看 | 欧美成人鲁丝片在线观看 | 黑人一区 | 一区二区久久电影 | 广州毛片 | 久久久久久久免费看 | 欧美成人性生活片 | 久久精品视频日本 | 精品一区二区在线观看视频 | 久久精品小短片 | 人人看人人艹 | 国产人妖一区二区 | 免费在线观看成人av | 一级外国毛片 | 久久精品国产99国产精品澳门 | av电影免费观看 |