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

          新聞中心

          EEPW首頁 > 手機與無線通信 > 設(shè)計應(yīng)用 > NAT-PT技術(shù)在IPv4和IPv6互聯(lián)中的實現(xiàn)

          NAT-PT技術(shù)在IPv4和IPv6互聯(lián)中的實現(xiàn)

          作者: 時間:2018-09-12 來源:網(wǎng)絡(luò) 收藏

          1 引言
          推廣應(yīng)用初期網(wǎng)絡(luò)資源相當匱乏,使用者主要是研究的科研工作者。的推廣普及需吸引大量普通網(wǎng)絡(luò)用戶,僅靠IPv6網(wǎng)絡(luò)的優(yōu)異性能是不夠的,還需建立大量的可用資源,在短時間內(nèi)是不可能的。而網(wǎng)絡(luò)具有豐富的資源。如能通過轉(zhuǎn)換網(wǎng)關(guān)實現(xiàn)IPv6與網(wǎng)絡(luò)的無縫連接,實現(xiàn)與IPv6網(wǎng)絡(luò)的資源共享,這不僅增加了IPv6網(wǎng)絡(luò)對用戶的吸引力,并具有較高的經(jīng)濟和應(yīng)用價值。

          本文引用地址:http://www.ex-cimer.com/article/201809/388956.htm

          2 NAT-PT轉(zhuǎn)換網(wǎng)關(guān)方案
          2.1 的位置位置和功能結(jié)構(gòu)
          在Linux協(xié)議棧中所處的位置如圖1所示,整個模塊由3部分構(gòu)成,NAT維護映射表和地址池,其中DNS-ALG處于應(yīng)用層,而NAT和PT處于IP層,工作在Linux內(nèi)核,但NAT和PT只是在一個Linux內(nèi)核模塊工作,整個NAT-PT網(wǎng)關(guān)是一個包含NAT-PT功能的 Linux系統(tǒng)。

          圖2為NAT-PT的功能結(jié)構(gòu)圖。NAT負責(zé)IPv4和IPv6地址的映射轉(zhuǎn)換,如存儲并維護IPv4地址池;為將要建立的連接選擇合適的地址;保持同一通信期間IPv4到IPv6地址的映射、維護。PT負責(zé)在兩種版本的協(xié)議之間進行轉(zhuǎn)換,主要工作是在IP報頭的對應(yīng)字段,根據(jù)IPv4和IPv6在語義上的不同定義進行轉(zhuǎn)換,并對上層協(xié)議進行適當?shù)霓D(zhuǎn)換(如TCP、UDP及ICMP),從而構(gòu)建新的數(shù)據(jù)包。應(yīng)用級網(wǎng)關(guān)ALG負責(zé)轉(zhuǎn)換負載中包含IP地址的典型應(yīng)用,其中DNS-ALG是雙向NAT-PT必須具備的功能。
          2.2 NAT.PT的通信過程
          下面分析NAT-PT在網(wǎng)絡(luò)中的通信過程,圖3為通信模型及其基本配置。

          (1)從IPv4到IPv6的通信當IPv4主機B初次與IPv6主機A通信時,首先向本地網(wǎng)絡(luò)的DNS服務(wù)器發(fā)送一個對A名字的查詢請求,此請求記錄是“A”,本地DNS服務(wù)器無此名字記錄,此查詢通過NAT-PT轉(zhuǎn)交,則被DNS-ALG截獲,然后將“A”記錄改為“AAAA”記錄,并直接將轉(zhuǎn)換后的查詢記錄遞交給IPv6網(wǎng)絡(luò)的 DNS服務(wù)器,IPv6的DNS服務(wù)器返回:
          主機A AAAA 200 1:250:2000:3::3
          DNS-ALG將該應(yīng)答截獲,并將“AAAA”記錄改為“A”記錄,同時在地址映射表中查找此IPv6地址的映射地址,如果有,則直接用映射的IPv4地址替換DNS應(yīng)答中的IPv6地址,并返回應(yīng)答給IPv4主機B;如果沒有,則向NAT模塊請求分配一個映射地址給此IPv6地址,NAT確認映射表中沒有關(guān)于此IPv6地址的映射表項后,在地址池中分配一個空閑的IPv4地址(比如202.115.9.249)映射給該IPv6地址,并在映射表中添加此綁定表項,最后把分配的IPv4地址返回給DNS-ALG,這時候DNS應(yīng)答變?yōu)椋?br /> 主機A A 202.115.9.249
          DNS-ALG將此DNS應(yīng)答返回給IPv4主機B。IPv4主機B此時就可以建立與IPv6主機A的通信,這里假定IPv4主機B發(fā)起的是TCP通信,則:源地址=202.115.8.3,源TCP端口=1 025;目的地址=202.115.9.249,目的TCP端口=80。
          此數(shù)據(jù)包被路由器轉(zhuǎn)發(fā)給NAT-PT,協(xié)議翻譯模塊PT轉(zhuǎn)換源包的IP報頭和TCP校驗,在源地址前添加IPv6前綴,轉(zhuǎn)換為IPv4映射的IPv6地址,并根據(jù)NAT地址映射表中202.115.9.249與2001:250:2000:3::3的映射關(guān)系,將包翻譯為:源地址=2001:250: 2000:3::202.1 15.8.3,源TCP端口=1 025;目的地址=2001:250:2000:3::3,目的TCP端口=80。
          這樣,IPv4主機B可以與IPv6主機進行通信。對于在此映射表項生存期內(nèi)的后續(xù)通信,將繼續(xù)利用此表項,映射表項超時后將被刪除,映射表項超時機制的引入一是為了釋放地址資源和內(nèi)存,另外還可以減少拒絕服務(wù)攻擊(DoS)的風(fēng)險。
          (2)從IPv6到IPv4的通信IPv6主機可以從IPv4網(wǎng)絡(luò)中的DNS服務(wù)器獲得:IPv4主機的名字解析,但如果在IPv6DNS服務(wù)器中緩存適當?shù)摹Pv4主機的名字解析表,則可以提高通信的效率,這樣,IPv6主機就可以從本地的IPv6 DNS服務(wù)器獲得關(guān)于IPv4主機的名字解析。如果IPv6DNS服務(wù)器采用上述方案,則:在圖3中,若IPv6主機A試圖與IPv4主機B建立通信,則 A首先發(fā)送一個對IPv4主機B的名字查詢請求到本地IPv6網(wǎng)絡(luò)的DNS服務(wù)器,這個請求記錄為“AAAA”或“A6'’記錄,由于主機B可能在本地 DNS有IPv4地址或IPv6地址映射,DNS-ALG將把此“AAAA”或“A6”查詢不加修改地轉(zhuǎn)交給本地DNS,若本地DNS應(yīng)答返回的是一個 “AAAA”或“A6”記錄,那么DNS-ALG將把此應(yīng)答不作修改地返回給IPv6主機A。若DNS返回一個“A”記錄,即:
          主機B A 202.115.8.3
          DNS-ALG則對應(yīng)答返回的IPv4地址進行修改,在IPv4地址前面加上IPv6前綴,變?yōu)椋?br /> 主機B AAAA 200 1:250:2000:3::202.1 1 5.8.3
          或 主機B A6 2001:250:2000:3::202.115.8.3
          如果IPv6 DNS服務(wù)器中沒有緩存IPv4主機的名字解析表,則DNS-ALG將把該“AAAA”或“A6”請求記錄修改為“A”記錄,并將轉(zhuǎn)換后的名字解析請求轉(zhuǎn)發(fā)給IPv4網(wǎng)絡(luò)的DNS服務(wù)器,則IPv4網(wǎng)絡(luò)的DNS服務(wù)器返回如下應(yīng)答:
          主機B A 202.115.8.3
          DNS-ALG截獲此應(yīng)答,并將其修改為:
          主機B AAAA 2001:250:2000:3::202.1 15.8.3
          或 主機B A6 2001:250:2000:3::202.115.8.3
          至此,名字解析成功。僅僅這樣IPv6主機還無法與IPv4主機建立通信,還須將IPv6主機源地址修改為IPv4地址,NAT-PT的PT模塊截獲了主機A的名字查詢請求后將在地址映射表中查詢是否有與該IPv6地址匹配的IPv4地址綁定,若沒有,NAT將在IPv4地址池中分配一個空閑的IPv4地址(比如202.115.9.249)映射給該IPv6地址,并在映射表中添加此綁定表項,此時,IPv6主機A就可以與IPv4主機B建立通信。
          IPv4節(jié)點同IPv6節(jié)點通信類似,這里假定A與B進行TCP通信:源地址=2001:250:2000:3::3,源TCP端口=1 025;目的地址=2001:250:2000:3::202.115.8.3;目的TCP端口=80。
          IPv6主機A發(fā)送的數(shù)據(jù)包被路由器轉(zhuǎn)發(fā)給NAT-PT,協(xié)議翻譯模塊PT轉(zhuǎn)換源包的IPv6報頭和TCP校驗,并根據(jù)NAT地址映射表中202. 115.9.249與2001:250:2000:3::3的映射關(guān)系,將數(shù)據(jù)包翻譯成:源地址=202.115.9.249,源TCP端口=1 025;目的地址=202.115.8.3.目的TCP端口=80。這樣,IPv6主機A可與IPv4主機B通信。映射表項生存期內(nèi)的后續(xù)通信,將繼續(xù)利用此表項,映射表項超時后刪除。

          3 結(jié)束語
          由于IPv4資源豐富,而IPvr6資源很少,如果能實現(xiàn)IPv6/IPv4網(wǎng)絡(luò)的互操作,使 IPv6網(wǎng)絡(luò)中的主機能夠訪問IPv4網(wǎng)絡(luò)資源,從而減小網(wǎng)絡(luò)升級成本,加快IPv6的推廣普及,因此必須研發(fā)IPv4/IPv6轉(zhuǎn)換網(wǎng)關(guān)。NAT-PT 方案可實現(xiàn)IPv4與IPv6的雙向通信功能。利用NAT-PT技術(shù)設(shè)計IPv4/IPv6轉(zhuǎn)換網(wǎng)關(guān),并對其測試,從而實現(xiàn)IPv4與IPv6的雙向通信。



          關(guān)鍵詞: NAT-PT IPv4 IPv6 互聯(lián)

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁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); })();