城域網IPv6過渡技術—NAT64+DNS64
本博文將詳細為您介紹NAT64如何與DNS64搭配完成狀態地址轉換,以及使用時需要注意的一些事項。
在IPv6演進過程中,網絡側的IPv6 Ready程度較高,但是業務側IPv6化還不樂觀,因此解決IPv6網絡與IPv4網絡的互訪,已經成為目前網絡建設者關注的重點,特別是IPv6用戶訪問IPv4服務器的場景。
前面介紹的NAT444和DS-lite技術都是為實現IPv4用戶訪問IPv4業務、IPv6用戶訪問IPv6業務服務的,不解決IPv4與IPv6互訪需求。NAT64則是專為IPv4與IPv6互訪而產生,可以與NAT444或者DS-lite結合使用來滿足多種業務應用。
NAT64+DNS64是有狀態地址轉換協議(有狀態和無狀態的地址轉換協議,在后期來單獨介紹),支持IPv6網絡側用戶發起訪問IPv4網絡側服務器資源,同時,NAT64也支持通過手工配置靜態映射關系,實現IPv4網絡側用戶發起訪問IPv6網絡資源。其中NAT64執行IPv4-IPv6的有狀態地址轉換和協議轉化,DNS64實現域名地址解析。
NAT64+DNS64的典型應用場景有三種。
應用一:IPv4 IDC/ISP站點為IPv6用戶提供業務。
應用二:運營網絡內IPv6用戶與IPv4用戶互訪業務。
應用三:IPv6-only IDC/ISP站點為IPv4用戶提供業務。
其中應用一是NAT64最主要的業務場景,應用三則是比較超前的業務場景。
對于IPv6用戶訪問IPv4 IDC/ISP的應用場景,具體的業務流程如下:
1.IPv6主機發起example.com的AAAA域名解析到DNS64(主機配置的DNS地址是DNS64)
2.DNS64觸發AAAA到DNS AAAA中查詢;
3.DNS AAAA返回NULL的信息到DNS64;
4.DNS64然后觸發A的申請到DNS A中查詢;
5.DNS A返回example.com的A記錄(192.0.2.1);
6.DNS64合成IPv6地址(2001:db8:cdfe::192.0.2.1),返回AAAA response給IPv6主機;
7.IPv6主機發起目的地址為2001:db8:cdfe::192.0.2.1的IPv6數據包;由于NAT64在IPv6域內通告配置的IPv6 Prefix,因此這個數據包轉發到NAT64設備上;
8.NAT64執行地址轉換和協議轉換,目的地址轉換為192.0.2.1,源地址根據地址狀態轉換(2001:db8::1,1500)->(203.0.113.1,2000);在IPv4域內路由到IPv4 server;
9.數據包返回,目的地址和端口為203.0.113.1,2000;
10.NAT64根據已有記錄進行轉換,目的地址轉換為2001:db8::1,源地址為加了IPv6前綴的IPv4 server地址2001:db8:cdfe::192.0.2.1,發送到IPv6主機;
根據業務流程可以清楚的了解到,DNS64是將IPv4服務器的IPv4地址嵌入到IPv6地址,這個過程就叫做合成。(RFC6052給出了IPv4-embedded IPv6 address的格式)。NAT64在翻譯IPv6地址到IPv4地址時,對于目的地址(IPv4服務器的地址,是內嵌IPv4的IPv6地址)按照規則直接轉換為IPv4地址,這個過程是無狀態的地址轉換,對于源地址(IPv6用戶地址)通過NAT64轉換為公網IPv4地址(通常是從配置的IPv4地址池中隨機選擇一個可用的IPv4地址和端口號),這個過程是有狀態的地址轉換。NAT64設備同時記錄這個狀態信息,用于數據流返回時的地址轉換。
在NAT64+DNS64部署的時候需要特別注意,DNS64地址合成所使用的IPv6-prefix要和NAT64配置的IPv6-prefix一致。如果網絡中存在多臺NAT64設備時,每臺NAT64配置的IPv6-prefix是不同的,DNS64可以通過不同的IPv6-prefix合成IPv6地址來控制NAT64間的業務負載(前提是能夠保障NAT64可以實現IPv4服務器的互通)。
另外,NAT64設備需要同時向IPv4網絡和IPv6網絡發布路由。NAT64與IPv6網絡連接的端口配置IPv6地址,向IPv6網絡發布配置的IPv6-prefix路由;如果NAT64配置了多個IPv6-prefix,需要選擇合適的匯總方式發布IPv6路由;NAT64與IPv4網絡連接的端口配置IPv4地址,向IPv4網絡發布配置的IPv4地址池路由。
NAT64設備通常部署在網絡邊界,比如IPv6城域網與IPv4城域網的互聯互通層次以及IPv4 IDC中心的出口路由器層次。
原文鏈接:http://blog.csdn.net/hanlijin/article/details/17005543