講解IP協(xié)議---IPv6協(xié)議
IPv6
IPv4地址空間耗盡,需要更大的地址空間
改變其首部,使其可以快速轉(zhuǎn)發(fā)數(shù)據(jù)報(bào)
IPv6數(shù)據(jù)報(bào)格式

1、IPv6基本首部
首部長(zhǎng)度改為固定的40字節(jié),稱為基本首部
取消了服務(wù)類型字段
取消了檢驗(yàn)和字段
將總長(zhǎng)度字段改為有效載荷長(zhǎng)度
將TTL字段改為跳數(shù)限制字段
將協(xié)議字段改為下一個(gè)首部字段
將選項(xiàng)字段改為擴(kuò)展首部(在IPv6的數(shù)據(jù)部分)來(lái)實(shí)現(xiàn)其功能

版本:指明協(xié)議版本
通信量類:8位,為了區(qū)分不同數(shù)據(jù)報(bào)的類別或優(yōu)先級(jí),以實(shí)現(xiàn)IPv6支持QoS(不同質(zhì)量服務(wù))
流標(biāo)號(hào):20位,用來(lái)標(biāo)識(shí)同一“流”中的數(shù)據(jù)報(bào), 流標(biāo)簽字段時(shí)IPv6數(shù)據(jù)報(bào)中新增的一個(gè)字段,占20位,可用來(lái)標(biāo)記報(bào)文的數(shù)據(jù)流類型,以便在網(wǎng)絡(luò)層區(qū)分不同的報(bào)文。流標(biāo)簽字段有源節(jié)點(diǎn)分配,通過(guò)流標(biāo)簽、源地址、目的地址三元組方式就可以唯一標(biāo)識(shí)一條通信流,而不用像IPv4那樣需要使用五元組方式(源地址、目的地址、源端口、目的端口和傳輸層協(xié)議號(hào))。這樣發(fā)動(dòng)的最大好處有兩點(diǎn):一是流標(biāo)簽可以和任意的關(guān)聯(lián),需要標(biāo)識(shí)不同類型的流(可以是非五元組)時(shí),無(wú)需對(duì)流標(biāo)簽做改動(dòng);二是流標(biāo)簽在IPv6基本頭中,使用IPSec時(shí)此域?qū)D(zhuǎn)發(fā)路由器可見(jiàn),因此轉(zhuǎn)發(fā)路由器可以在使用IPv6報(bào)文IPSec的情況下仍然可以通過(guò)三元組(流標(biāo)簽、源地址、目的地址)針對(duì)特定的流進(jìn)行QoS(質(zhì)量服務(wù))處理。
有效載荷長(zhǎng)度:16位,指明有效載荷的長(zhǎng)度(包括擴(kuò)展首部)
下一個(gè)首部: 下一個(gè)頭部字段用來(lái)標(biāo)識(shí)當(dāng)前報(bào)頭(或者擴(kuò)展報(bào)頭)的下一個(gè)頭部類型,占8位。每種擴(kuò)展報(bào)頭都有其對(duì)應(yīng)的值。下一個(gè)頭部字段內(nèi)定義的擴(kuò)展報(bào)頭類型與IPv4中的協(xié)議字段值類似,但在IPv6數(shù)據(jù)報(bào)中,緊接著IPv6報(bào)頭的可能不是上層協(xié)議頭部(當(dāng)沒(méi)有擴(kuò)展報(bào)頭或者為最后一個(gè)擴(kuò)展報(bào)頭時(shí)才是上層協(xié)議頭),而是IPv6擴(kuò)展報(bào)頭。這一機(jī)制下處理擴(kuò)展報(bào)頭更搞笑,因?yàn)闃?biāo)識(shí)了數(shù)據(jù)報(bào)中對(duì)應(yīng)的上層協(xié)議或者擴(kuò)展報(bào)頭類型,轉(zhuǎn)發(fā)路由器只需處理必須處理的擴(kuò)展報(bào)頭,提高了轉(zhuǎn)發(fā)效率。
跳數(shù)限制:8位,相當(dāng)于IPv4中的TTL
源地址、目的地址:128位
【文章福利】小編推薦自己的Linux內(nèi)核技術(shù)交流群:【891587639】整理了一些個(gè)人覺(jué)得比較好的學(xué)習(xí)書(shū)籍、視頻資料共享在群文件里面,有需要的可以自行添加哦!?。。ê曨l教程、電子書(shū)、實(shí)戰(zhàn)項(xiàng)目及代碼)? ??


2、IPv6擴(kuò)展首部
逐跳選項(xiàng)頭
本擴(kuò)展報(bào)頭類型值為0(在IPv6報(bào)頭下一個(gè)頭部字段中定義,下同)。此擴(kuò)展報(bào)頭須被轉(zhuǎn)發(fā)路徑所有節(jié)點(diǎn)處理。目前在路由告警(RSVP和MLDv1)與Jumbo幀處理中使用了逐跳選項(xiàng)頭,因?yàn)槁酚筛婢枰ㄖ睫D(zhuǎn)發(fā)路徑中所有結(jié)點(diǎn),而Jumbo幀是長(zhǎng)度超過(guò)65535字節(jié)的報(bào)文,傳輸這種報(bào)文需要轉(zhuǎn)發(fā)路徑中所有結(jié)點(diǎn)都能正常處理。
目的選項(xiàng)頭
本擴(kuò)展報(bào)頭類型值為60。只可能出現(xiàn)在兩個(gè)位置:
路由頭前,這是此選項(xiàng)頭被目的節(jié)點(diǎn)和路由頭中指定的結(jié)點(diǎn)處理;
上層頭前(任何的ESP頭后),此時(shí)只能被目的結(jié)點(diǎn)處理。 移動(dòng)IPv6中使用了目的選項(xiàng)頭,稱為家鄉(xiāng)地址選項(xiàng)。家鄉(xiāng)地址選項(xiàng)由目的選項(xiàng)頭攜帶,用以移動(dòng)結(jié)點(diǎn)離開(kāi)“家鄉(xiāng)”后通知接受節(jié)點(diǎn)此移動(dòng)結(jié)點(diǎn)對(duì)應(yīng)的家鄉(xiāng)地址。接受節(jié)點(diǎn)收到帶有家鄉(xiāng)地址選項(xiàng)的報(bào)文后,會(huì)把家鄉(xiāng)地址選項(xiàng)中的源地址(移動(dòng)節(jié)點(diǎn)的家鄉(xiāng)地址)和報(bào)文中源地址(移動(dòng)節(jié)點(diǎn)的轉(zhuǎn)交地址)交換,這樣上層協(xié)議始終認(rèn)為是在和移動(dòng)節(jié)點(diǎn)的家鄉(xiāng)地址通信,實(shí)現(xiàn)了移動(dòng)漫游功能。
路由頭
本擴(kuò)展報(bào)頭類型值為43,用于源路由選項(xiàng)和移動(dòng)IPv6。
分段頭
本擴(kuò)展報(bào)頭類型值為44,用于標(biāo)識(shí)數(shù)據(jù)報(bào)的分段,在IPv4中就有對(duì)應(yīng)的字段。當(dāng)源節(jié)點(diǎn)發(fā)送的報(bào)文超過(guò)傳輸鏈路MTU(源節(jié)點(diǎn)和目的節(jié)點(diǎn)之間傳輸路徑的MTU)時(shí),需要對(duì)報(bào)文進(jìn)行分段時(shí)使用。
認(rèn)證頭
本擴(kuò)展報(bào)頭類型值為51,用于IPSec,提供報(bào)文驗(yàn)證,完整性檢查。
封裝安全有效載荷頭
本擴(kuò)展頭類型值為50,用于IPSec,提供報(bào)文驗(yàn)證、完整性檢查差和加密。
上層頭
這是用來(lái)標(biāo)識(shí)數(shù)據(jù)報(bào)中上層協(xié)議類型,如TCP、UDP、ICMP等。
3、IPv6數(shù)據(jù)報(bào)對(duì)比IPv4
IPv6去除了IPv4報(bào)頭中的頭部長(zhǎng)度、標(biāo)識(shí)、標(biāo)志、段偏移、校驗(yàn)和、選項(xiàng)、填充這么多字段,卻只增加了流標(biāo)簽這一個(gè)字段,因此IPv6報(bào)頭處理和IPv4報(bào)頭處理相比大大簡(jiǎn)化,提高了處理效率。
另外,IPv6為了更好地支持各種選項(xiàng)處理,提出了擴(kuò)展頭的概念,新增選項(xiàng)時(shí)不必修改現(xiàn)有的結(jié)構(gòu)就能做到,理論上可以無(wú)限擴(kuò)展,體現(xiàn)了優(yōu)異的靈活性
IPv6地址
IPv6地址類型
(1) 單播 (unicast):傳統(tǒng)的點(diǎn)對(duì)點(diǎn)通信。
(2) 多播 (multicast):一點(diǎn)對(duì)多點(diǎn)的通信。
(3) 任 播(anycast): 這是 IPv6 增加的一種類型。任播的目的站是一組計(jì)算機(jī),但數(shù)據(jù)報(bào)在交付時(shí)只交付其中的一個(gè),通常是距離最近的一個(gè)。
IPv6的地址表示法
冒號(hào)十六進(jìn)制記法:
如: 68E6:8C64:FFFF:FFFF:0:1180:960A:FFFF
可以使用零壓縮技術(shù):
FF05:0:0:0:0:0:0:B3 可壓縮為: FF05::B3
IPv6地址分類
IPv4到IPv6
IPv6系統(tǒng)必須兼容IPv4系統(tǒng),并且能夠?yàn)镮Pv4分組選擇路由
兩種向IPv6過(guò)度的策略
雙協(xié)議棧
在完全過(guò)渡到IPv6之前,是一部分主機(jī)(或者路由器)裝有兩個(gè)協(xié)議棧,
雙協(xié)議棧主機(jī)有兩種IP地址:IPv4 IPv6
可以根據(jù)DNS返回的IP地址確定使用IPv4還是IPv6地址
隧道技術(shù)
在IPv6數(shù)據(jù)報(bào)進(jìn)入IPv4網(wǎng)絡(luò)時(shí),把IPv6數(shù)據(jù)報(bào)封裝成為IPv4數(shù)據(jù)報(bào)
當(dāng)IPv4數(shù)據(jù)報(bào)離開(kāi)IPv4網(wǎng)絡(luò)中的隧道時(shí),再把IPv4的數(shù)據(jù)部分即原來(lái)的IPv6數(shù)據(jù)報(bào)交給主機(jī)的IPv6協(xié)議棧
ICMPv6
IPv4里的ARP和IGMP、ICMP都被合并到ICMPv6中

