連接IPv6和IPv4的NAT64
那些只運(yùn)行IPv6的主機(jī)在這幾年仍然可以用那些只在IPv4網(wǎng)絡(luò)上提供的服務(wù),,但是幾年后,IPv4堅(jiān)持想要和只運(yùn)行IPv6的網(wǎng)絡(luò)進(jìn)行聯(lián)系可能就會(huì)難上加難了。
本文引用地址:http://butianyuan.cn/article/88964.htm互聯(lián)網(wǎng)工程小組(IETF)一直在思考使IPv4與未來(lái)IPv6之間進(jìn)行交流的方式。這樣一來(lái),我們就不需要升級(jí)現(xiàn)有的設(shè)備了。為了使在明尼阿波利斯明年11月份舉行的IETF大會(huì)能夠取得更多的進(jìn)展,最近他們?cè)诿商乩麪柵e行了為期兩天的會(huì)議。
而IETF所面臨的問(wèn)題是,盡管IPv4與IPv6有某種家族相似性,但是二者之間還是有本質(zhì)區(qū)別的:IPv4使用的是32位地址,而IPv6使用的則是128位地址。那么你怎樣才能使你的僅有IPv4地址的系統(tǒng)與僅有IPv6地址的系統(tǒng)進(jìn)行交流呢?
其實(shí)很簡(jiǎn)單:你把數(shù)據(jù)包翻譯過(guò)來(lái)不就結(jié)了么?IETF幾年前就在實(shí)施一項(xiàng)名為SIIT(Stateless IP and ICMP Translation)的項(xiàng)目,目的就是實(shí)現(xiàn)IPv4向IPv6的過(guò)渡。但是,SIIT面臨的一個(gè)最大問(wèn)題是:一一對(duì)應(yīng)問(wèn)題。
這就造成了兩方面的問(wèn)題:將來(lái)不會(huì)有足夠的IPv4地址來(lái)使用(這就是我們吧IPv6放在首位的原因),所以在IPv6-to-IPv4這個(gè)問(wèn)題上,必須是對(duì)個(gè)系統(tǒng)共用一個(gè)IPv4地址。這相對(duì)來(lái)說(shuō)是比較容易實(shí)現(xiàn)的:只需實(shí)用SIIT,然后定期的對(duì)IPv4進(jìn)行網(wǎng)絡(luò)地址轉(zhuǎn)換。NAT- PT(Network Address Translation-Protocol Translation)使用的就是這項(xiàng)技術(shù),NAT-PT把SIIT協(xié)議轉(zhuǎn)換技術(shù)和IPv4網(wǎng)絡(luò)中動(dòng)態(tài)地址轉(zhuǎn)換技術(shù)(NAT)結(jié)合在一起,它利用了 SIIT技術(shù)的工作機(jī)制,同時(shí)又利用傳統(tǒng)的IPv4下的NAT技術(shù)來(lái)動(dòng)態(tài)地給訪問(wèn)IPv4節(jié)點(diǎn)的IPv6節(jié)點(diǎn)分配IPv4地址,很好地解決了SIIT技術(shù)中全局IPv4地址池規(guī)模有限的問(wèn)題。
完美的NAT-PT系統(tǒng)應(yīng)該是對(duì)大部分網(wǎng)絡(luò)而言,你只需要簡(jiǎn)單的在IPv6和IPv4之間制定一些規(guī)則,網(wǎng)絡(luò)就能很好的工作。對(duì)某些協(xié)議,像FTP,VoIP,或者點(diǎn)對(duì)點(diǎn)應(yīng)用將會(huì)拒絕,因?yàn)楫?dāng)一個(gè)IPv6系統(tǒng)通告IPv4主機(jī)她的IPv6地址時(shí),IPv4主機(jī)將無(wú)法使用IPv6地址。歸根到底,欺騙DNS的方式并不是IETF推薦的方式,所以,NAT-PT最終被宣布成為歷史,不再推薦使用。
我一直在參與NAT64的提案,其他諸如NAT6和SNAT-PT都與NAT-PT一樣存在不同程度的缺憾。舉例來(lái)說(shuō):如果主機(jī)實(shí)施的是 DNSSEC安全DNS協(xié)議,他顯然不會(huì)接受合成的IPv6地址虛假記錄。但是,主機(jī)可以修改在履行DNSSEC驗(yàn)證之后,創(chuàng)建自己的地址。
從SIIT和NAT-PT規(guī)定到現(xiàn)在的十年時(shí)間里,IETF在NAT方面做了大量的工作,特別是在NAT設(shè)備如ICE,STUN和TURN和點(diǎn)對(duì)點(diǎn)的應(yīng)用等方面。他們大部分都可以被應(yīng)用在IPv6-to-IPv4 NATs和IPv6點(diǎn)對(duì)點(diǎn)應(yīng)用(如果不是NAT,他們必須要能夠繞過(guò)放過(guò)墻)。所以即使需要對(duì)IPv6主機(jī)做一些性能上的提升,就這一問(wèn)題還是能達(dá)成一個(gè)合理的規(guī)范的。
但是還有一個(gè)問(wèn)題就是IPv4客戶端與IPv6服務(wù)器之間的對(duì)話。雖然轉(zhuǎn)換可以在很多相似的地方實(shí)施,但問(wèn)題是:在低端不可能將128位的IPv6地址編碼城32位的IPv4地址去響應(yīng)一個(gè)虛假的DNS。在蒙特利爾會(huì)議上有相當(dāng)多的討論是關(guān)于是否有解決IPv4客戶端到IPv6服務(wù)器問(wèn)題的其他方式?,F(xiàn)在,能運(yùn)行IPv6的服務(wù)器是也可以運(yùn)行IPv4的,但在因特網(wǎng)上還是有許多只運(yùn)行IPv4的服務(wù)器。但是,像美國(guó)軍方這樣的大用戶表示,他們將來(lái)有能力解決IPv4客戶端到IPv6主機(jī)之間的問(wèn)題。
這個(gè)問(wèn)題我們遺留下來(lái)看能否做出一個(gè)折中的方案來(lái)解決兩邊的問(wèn)題,要么盡快拿出一個(gè)IPv6-to-IPv4的方案要么就花一點(diǎn)時(shí)間來(lái)解決IPv4-to-IPv6的問(wèn)題。
另一個(gè)有趣的方法是Dual Stack Lite(不是拼寫錯(cuò)誤,是實(shí)際名稱)。它是基于這一觀點(diǎn)的:如果你在一個(gè)IPv6網(wǎng)絡(luò)上提供進(jìn)行過(guò)網(wǎng)絡(luò)轉(zhuǎn)換的IPv4隧道連接,無(wú)論(否則)只運(yùn)行 IPv6的主機(jī)或者是主機(jī)只能運(yùn)行IPv4的都可以連接目的地為IPv4的主機(jī)。DS-Lite的巧妙之處在于雖然通常IPv4的數(shù)據(jù)包被IPv6主機(jī)或者僅對(duì)IPv4服務(wù)的家庭路由器的轉(zhuǎn)發(fā)是通過(guò)隧道方式進(jìn)行的,但是ISP網(wǎng)絡(luò)處的網(wǎng)絡(luò)地址轉(zhuǎn)換盒子關(guān)心的只是來(lái)自IPv6的數(shù)據(jù)包,所以所有的主機(jī)都是用地址192.168.0.1是沒有問(wèn)題的。有趣的是,這使得發(fā)生在這個(gè)網(wǎng)絡(luò)地址轉(zhuǎn)換盒的“運(yùn)營(yíng)商級(jí)的NAT ”(用DS -Lite的說(shuō)法)幾乎是NAT64由轉(zhuǎn)換的。IETF已經(jīng)決定將像DS-Lite之類的方案標(biāo)準(zhǔn)化。
最終,一個(gè)以IVI命名的解決方案更新了NAT-PT,SII T類之間映射某些IPv4和IPv6地址。(IVI在中國(guó)表示國(guó)際疫苗研究所)
總的來(lái)說(shuō),那些只運(yùn)行IPv6的主機(jī)在這幾年仍然可以用那些只在IPv4網(wǎng)絡(luò)上提供的服務(wù),但是幾年后,IPv4堅(jiān)持想要和只運(yùn)行IPv6的網(wǎng)絡(luò)進(jìn)行聯(lián)系可能就會(huì)難上加難了。
評(píng)論