1. 程式人生 > >IPv6地址是如何表示的?

IPv6地址是如何表示的?

IPv4地址表示為點分十進位制格式,32位的地址分成4個8位分組,每個8位寫成十進位制,中間用點號分隔。而IPv6的128位地址則是以16位為一分組,每個16位分組寫成4個十六進位制數,中間用冒號分隔,稱為冒號分十六進位制格式。 例如:21DA:00D3:0000:2F3B:02AA:00FF:FE28:9C5A 是一個完整的IPv6地址。 IPv6的地址表示有以下幾種特殊情形:   IPv6地址中每個16位分組中的前導零位可以去除做簡化表示,但每個分組必須至少保留一位數字。如上例中的地址,去除前導零位後可寫成:21DA:D3:0:2F3B:2AA:FF:FE28:9C5A。   某些地址中可能包含很長的零序列,為進一步簡化表示法,還可以將冒號十六進位制格式中相鄰的連續零位合併,用雙冒號“::”表示。“::”符號在一個地址中只能出現一次,該符號也能用來壓縮地址中前部和尾部的相鄰的連續零位。例如地址1080:0:0:0:8:800:200C:417A,0:0:0:0:0:0:0:1,0:0:0:0:0:0:0:0分別可表示為壓縮格式1080::8:800:200C:417A,::1,:: 。  在IPv4和IPv6混合環境中,有時更適合於採用另一種表示形式:x:x:x:x:x:x:d.d.d.d,其中x是地址中6個高階16位分組的十六進位制值,d是地址中4個低階8位分組的十進位制值(標準IPv4表示)。例如地址0:0:0:0:0:0:13.1.68.3 ,0:0:0:0:0:FFFF:129.144.52.38 寫成壓縮形式為::13.1.68.3,::FFFF.129.144.52.38。   要在一個URL中使用文字IPv6地址,文字地址應該用符號“[”和“]”來封閉。例如文字IPv6地址FEDC:BA98:7654:3210:FEDC:BA98:7654:3210寫作URL示例為http://[FEDC:BA98:7654:3210:FEDC:BA98:7654:3210]:80/index.html。 3.3.4 IPv6地址為128位,配地址豈不是要花費很多時間? IPv6協議支援地址自動配置,這是一種即插即用的機制。IPv6節點通過地址自動配置得到IPv6地址和閘道器地址。 IPv6支援無狀態地址自動配置和狀態地址自動配置兩種地址自動配置方式。在無狀態地址自動配置方式下,需要配置地址的網路介面先使用鄰居發現機制獲得一個鏈路本地地址。網路介面得到這個鏈路本地地址之後,再接收路由器宣告的地址字首,結合介面標識得到一個全球地址。而狀態地址自動配置的方式,如動態主機配置協議(DHCP),需要一個DHCP伺服器,通過客戶機/伺服器模式從DHCP伺服器處得到地址配置的資訊。   IPv6地址都有哪些型別? 所有型別的IPv6地址都被分配到介面,而不是節點。IPv6地址是單個或一組介面的128位識別符號,有三種類型: (1) 單播(Unicast)地址 單一介面的識別符號。發往單播地址的包被送給該地址標識的介面。對於有多個介面的節點,它的任何一個單播地址都可以用作該節點的識別符號。IPv6單播地址是用連續的位掩碼聚集的地址,類似於CIDR的IPv4地址。IPv6中的單播地址分配有多種形式,包括全部可聚集全球單播地址、NSAP地址、IPX分級地址、站點本地地址、鏈路本地地址以及執行IPv4的主機地址。單播地址中有下列兩種特殊地址: 不確定地址 單播地址0:0:0:0:0:0:0:0稱為不確定地址。它不能分配給任何節點。它的一個應用示例是初始化主機時,在主機未取得自己的地址以前,可在它傳送的任何IPv6包的源地址欄位放上不確定地址。不確定地址不能在IPv6包中用作目的地址,也不能用在IPv6路由頭中; 迴環地址 單播地址0:0:0:0:0:0:0:1稱為迴環地址。節點用它來向自身傳送IPv6包。它不能分配給任何物理介面。 (2) 任意播(AnyCast)地址 一組介面(一般屬於不同節點)的識別符號。發往任意播地址的包被送給該地址標識的介面之一(路由協議度量距離最近的)。IPv6任意播地址存在下列限制: • 任意播地址不能用作源地址,而只能作為目的地址; • 任意播地址不能指定給IPv6主機,只能指定給IPv6路由器; IPv6任意播地址 (3) 組播(MultiCast)地址 一組介面(一般屬於不同節點)的識別符號。發往多播地址的包被送給該地址標識的所有介面。地址開始的