您好,登錄后才能下訂單哦!
重點紀要
IP協議筆記 IP(Internet Protocol)
IP地址(IP address)
子網掩碼(subnet mask)
IP路由(IP router)
IP 5類范圍
A類 1-26
B類 128-191
C類 192-223
D類 224-239組播(多播)
E類 240-254科研
子網掩碼ABC類型IP默認子網掩碼
A類 255.0.0.0
B類 255.255.0.0
C累 255.255.255.0
IP地址網段
A類 10.0.0.1-10.255.255.254
B類 172.16.0.1-172.16.31.254
C類 192.168.0.1-192.168.255.254
名字 地址范圍 地址數量 有類別的描述 最大的CIDR地址塊
24位塊 10.0.0.0–10.255.255.255 16,777,216 一個A類 10.0.0.0/8
20位塊 172.16.0.0–172.31.255.255 1,048,576 連續的16個B類 172.16.0.0/12
16位塊 192.168.0.0–192.168.255.255 65,536 連續的256個C類 192.168.0.0/16
7 應用層
application layer 例如HTTP、SMTP、SNMP、FTP、Telnet、SIP、SSH、NFS、RTSP、XMPP、Whois、ENRP
6 表示層
presentation layer 例如XDR、ASN.1、SMB、AFP、NCP
5 會話層
session layer 例如ASAP、SSH、ISO 8327 / CCITT X.225、RPC、NetBIOS、ASP、Winsock、BSD sockets
4 傳輸層
transport layer 例如TCP、UDP、TLS、RTP、SCTP、SPX、ATP、IL
3 網絡層
network layer 例如IP、ICMP、IGMP、IPX、BGP、OSPF、RIP、IGRP、EIGRP、ARP、RARP、X.25
2 數據鏈路層
data link layer 例如以太網、令牌環、HDLC、幀中繼、ISDN、ATM、IEEE 802.11、FDDI、PPP
1 物理層
physical layer 例如線路、無線電、光纖
IPv6編址
IPv6具有比IPv4大得多的編碼地址空間。這是因為IPv6采用了128位的地址,而IPv4使用的是32位。因此新增的地址空間支持2128(約3.4 ×1038)個地址,具體數量為340,282,366,920,938,463,463,374,607,431,768,211,456 個,也可以說成1632個,因為32位地址每位可以取16個不同的值。
網絡地址轉換是目前減緩IPv4地址耗盡最有效的方式,而IPv6的地址消除了對他的依賴,被認為足夠在可以預測的未來使用。就以地球人口70億人計算,每人平均可分得約4.86×1028(486117667*1020)個IPv6地址。
IPv6從IPv4到IPv6最顯著的變化就是網絡地址的長度。RFC 2373和RFC 2374定義的IPv6地址有128位長;IPv6地址的表達形式一般采用32個十六進制數。
在很多場合,IPv6地址由兩個邏輯部分組成:一個64位的網絡前綴和一個64位的主機地址,主機地址通常根據物理地址自動生成,叫做EUI-64(或者64-位擴展唯一標識)
IPv6格式
IPv6二進位制下為128位長度,以16位為一組,每組以冒號“:”隔開,可以分為8組,每組以4位十六進制方式表示。例如:2001:0db8:85a3:08d3:1319:8a2e:0370:7344 是一個合法的IPv6地址。
同時IPv6在某些條件下可以省略:
每項數字前導的0可以省略,省略后前導數字仍是0則繼續,例如下組IPv6是相等的。
2001:0DB8:02de:0000:0000:0000:0000:0e13
2001:DB8:2de:0000:0000:0000:0000:e13
2001:DB8:2de:000:000:000:000:e13
2001:DB8:2de:00:00:00:00:e13
2001:DB8:2de:0:0:0:0:e13
可以用雙冒號“::”表示一組0或多組連續的0,但只能出現一次:
如果四組數字都是零,可以被省略。遵照以上省略規則,下面這兩組IPv6都是相等的。
2001:DB8:2de:0:0:0:0:e13
2001:DB8:2de::e13
2001:0DB8:0000:0000:0000:0000:1428:57ab
2001:0DB8:0000:0000:0000::1428:57ab
2001:0DB8:0:0:0:0:1428:57ab
2001:0DB8:0::0:1428:57ab
2001:0DB8::1428:57ab
2001::25de::cade 是非法的,因為雙冒號出現了兩次。它有可能是下種情形之一,造成無法推斷。
2001:0000:0000:0000:0000:25de:0000:cade
2001:0000:0000:0000:25de:0000:0000:cade
2001:0000:0000:25de:0000:0000:0000:cade
2001:0000:25de:0000:0000:0000:0000:cade
如果這個地址實際上是IPv4的地址,后32位可以用10進制數表示;因此::ffff:192.168.89.9 相等于::ffff:c0a8:5909,但不等于::192.168.89.9 和::c0a8:5909。
另外,::ffff:1.2.3.4 格式叫做IPv4映射地址。而::1.2.3.4 格式叫做IPv4一致地址,目前已被取消。
IPv4位址可以很容易的轉化為IPv6格式。舉例來說,如果IPv4的一個地址為135.75.43.52(十六進制為0x874B2B34),它可以被轉化為0000:0000:0000:0000:0000:ffff:874B:2B34 或者::ffff:874B:2B34。同時,還可以使用混合符號(IPv4-compatible address),則地址可以為::ffff:135.75.43.52。
IPv6地址的分類
IPv6地址可分為三種:[8]
單播(unicast)地址
單播地址標示一個網絡接口。協議會把送往地址的數據包投送給其接口。IPv6的單播地址可以有一個代表特殊地址名字的范疇,如link-local地址和唯一區域地址(ULA,unique local address)。單播地址包括可聚類的全球單播地址、鏈路本地地址等。
任播(anycast)地址
Anycast是IPv6特有的數據發送方式,它像是IPv4的Unicast(單點傳播)與Broadcast(多點廣播)的綜合。IPv4支持單點傳播和多點廣播,單點廣播在來源和目的地間直接進行通信;多點廣播存在于單一來源和多個目的地進行通信。
而Anycast則在以上兩者之間,它像多點廣播(Broadcast)一樣,會有一組接收節點的地址欄表,但指定為Anycast的數據包,只會發送給距離最近或發送成本最低(根據路由表來判斷)的其中一個接收地址,當該接收地址收到數據包并進行回應,且加入后續的傳輸。該接收列表的其他節點,會知道某個節點地址已經回應了,它們就不再加入后續的傳輸作業。
以目前的應用為例,Anycast地址只能分配給路由器,不能分配給電腦使用,而且不能作為發送端的地址。
多播(multicast)地址
多播地址也稱組播地址。多播地址也被指定到一群不同的接口,送到多播地址的數據包會被發送到所有的地址。多播地址由皆為一的字節起始,亦即:它們的前置為FF00::/8。其第二個字節的最后四個比特用以標明"范疇"。
一般有node-local(0x1)、link-local(0x2)、site-local(0x5)、organization-local(0x8)和global(0xE)。多播地址中的最低112位會組成多播組群識別碼,不過因為傳統方法是從MAC地址產生,故只有組群識別碼中的最低32位有使用。定義過的組群識別碼有用于所有節點的多播地址0x1和用于所有路由器的0x2。
另一個多播組群的地址為"solicited-node多播地址",是由前置FF02::1:FF00:0/104和剩余的組群識別碼(最低24位)所組成。這些地址允許經由鄰居發現協議(NDP,Neighbor Discovery Protocol)來解譯鏈接層地址,因而不用干擾到在區網內的所有節點。
特殊地址
IANA維護官方的IPv6地址空間列表[9]。全域的單播地址的分配可在各個區域互聯網注冊管理機構或(英文)GRH DFP pages找到。
IPv6中有些地址是有特殊含義的:
未指定地址
::/128-所有比特皆為零的地址稱作未指定地址。這個地址不可指定給某個網絡接口,并且只有在主機尚未知道其來源IP時,才會用于軟件中。路由器不可轉送包含未指定地址的數據包。
鏈路本地地址
::1/128-是一種單播繞回地址。如果一個應用程序將數據包送到此地址,IPv6堆棧會轉送這些數據包繞回到同樣的虛擬接口(相當于IPv4中的127.0.0.1/8)。
fe80::/10-這些鏈路本地地址指明,這些地址只在區域連接中是合法的,這有點類似于IPv4中的169.254.0.0/16。
唯一區域位域
fc00::/7-唯一區域地址(ULA,unique local address)只可在一群網站中遶送。這定義在RFC 4193中,是用來替換站點本地位域。這地址包含一個40比特的偽隨機數,以減少當網站合并或數據包誤傳到網絡時碰撞的風險。這些地址除了只能用于區域外,還具備全域性的范疇,這點違反了唯一區域位域所替換的站點本地地址的定義。
多播地址
ff00::/8-這個前置表明定義在"IP Version 6 Addressing Architecture"(RFC 4291)中的多播地址[10]。其中,有些地址已用于指定特殊協議,如ff0X::101對應所有區域的NTP服務器(RFC 2375)。
請求節點多播地址(Solicited-node multicast address)
ff02::1:FFXX:XXXX-XX:XXXX為相對應的單播或任播地址中的三個最低的字節。
IPv4轉譯地址
::ffff:x.x.x.x/96-用于IPv4映射地址。(參見以下的轉換機制)。
2001::/32-用于Teredo隧道。
2002::/16-用于6to4。
ORCHID
2001:10::/28-ORCHID (Overlay Routable Cryptographic Hash Identifiers)(RFC 4843)。這些是不可遶送的IPv6地址,用于加密散列識別。
文件
2001:db8::/32-這前置用于文件(RFC 3849)。這些地址應用于IPV6地址的示例中,或描述網絡架構。
遭舍棄或刪除的用法
::/96-這個前置曾用于IPv4兼容地址,現已刪除。
fec0::/10-這個站點本地前置指明這地址只在組織內合法。它已在2004年9月的RFC3879中舍棄,并且新系統不應該支持這類型的地址。
IPv6數據包
IPv6數據包的架構說明。
IPv6數據包由兩個主要部分組成:頭部和負載。
包頭是包的前64比特并且包含有源和目的地址,協議版本,通信類別(8位,包優先級),流標記(20比特,QoS服務質量控制),分組長度(16位),下一個頭部(用于入棧解碼,類似IPv4中的協議號),和跳段數限制(8位,生存時間,相當于IPv4中的TTL)。后面是負載。MTU至少1280字節長,在常見的以太網環境中為1500字節。負載在標準模式下最大可為65535字節,如果擴展報頭設置了"jumbo payload"選項,則長度值被置為0。
IPv6曾有兩個有著細微差別的版本;在RFC 1883中定義的原始版本(現在廢棄)和RFC 2460中描述的現在提議的標準版本。兩者主要在通信類別這個選項上有所不同,它的位數由4位變為了8位。其他的區別都是微不足道的。
分段(Fragmentation)只在IPv6的主機中被處理。在IPv6中,可選項都被從標準頭部中移出并在協議字段中指定,類似于IPv4的協議字段功能。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。