计算机网络 --- 网络层IP地址
全世界唯一的32位/4字節標識符,標識路由器主機的接口。
IP地址::= {<網絡號><主機號>}
IP編址的歷史階段
分類的IP地址
特殊IP地址
私有IP地址
網絡地址轉換(NAT)
路由器對目的地址是私有IP地址的數據報一律不進行轉發。
網絡地址轉換NAT(Network Address Translation):
在專用網連接到因特網的路由器上安裝NAT軟件,安裝了NAT軟件的路由器叫NAT路由器,它至少有一個有效的外部全球IP地址。
A主機先把數據報傳輸到NAT,NAT會把A主機IP替換為NAT IP,然后把端口號(主機中每個進程端口號都是唯一的,但是不同主機的進程端口號可能相同,但是在NAT會對端口號進行轉換,保證不同主機不同進程的端口號唯一)
子網劃分與子網掩碼
分類的IP地址的弱點:
- IP地址空間的利用率有時很低
- 兩級IP地址不夠靈活
子網劃分
主機號不能全0全1
子網掩碼
子網掩碼就是網絡號都是1,主機號都是0,子網掩碼與IP地址逐位相與,就得到子網網絡地址。
使用子網時分組轉發
路由表:
- 目的網絡地址
- 目的網絡子網掩碼
- 下一跳地址
路由器轉發分組的算法:
IP無分類編址CIDR
CIDR
無分類域間路由選擇CIDR:
1.消除了傳統的A類,B類和C類地址以及劃分子網的概念,只有網絡前綴和主機號
CIDR記法:IP地址后加上“/”,然后寫上網絡前綴(可以任意長度)的位數。
2.融合子網地址與子網掩碼,方便子網劃分。
CIDR把網絡前綴都相同的連續的IP地址組成一個“CIDR地址塊”
比如128.14.35.7/20是某CIDR地址塊中的一個地址,那么該地址塊最小地址和最大地址分別是?
首先把該CIDR地址寫成二進制:
10000000 00001110 00100011 00000111
那么網絡號就是10000000 00001110 0010
把主機號位數全部置為0也就是該地址塊最小地址:
10000000 00001110 00100000 00000000 也就是128.14.32.0
把主機號位數全部置為1也就是該地址塊最大地址:
10000000 00001110 00101111 11111111 也就是128.14.47.255
地址掩碼(子網掩碼)
以上例子的子網掩碼也就是11111111 11111111 11110000 00000000
CIDR --- 構成超網
將多個子網聚合成一個較大的子網,叫做構成超網,或網絡聚合
方法:
將網絡前綴縮短
CIDR --- 最長前綴匹配
使用CIDR時,查找路由表可能得到幾個匹配結果,應選擇具有最長網絡前綴的路由。前綴越長,地址塊越小,路由越具體。
IPv6
以上所屬的IP編址方式都是IPv4的編址方式,32位的IPv4地址空間已分配殆盡,所有就有CIDR和NAT技術,但是治標不治本。所以可以通過IPv6,從根本上解決地址耗盡問題。同時改進首部格式,實現快速處理/轉發數據報,同時支持QoS(QoS --- Quality of Service,服務質量:指一個網絡能夠利用各種基礎技術,為指定的網絡通信提供更好的服務能力,是網絡的一種安全機制,是用來解決網絡延遲和阻塞等問題的一種技術。)
IPv6數據報格式
- 版本:指明了協議版本,總是6
- 優先級:區分數據報的類別和優先級
- 流標簽:“流”是互聯網絡上從特定源點到特定終點的一系列數據報。所有屬于同一個流的數據報都具有同樣的流標簽。
- 有效載荷長度:
- 下一個首部:標識下一個擴展首部或上層協議首部。每一個擴展首部都有下一個首部(類似鏈表),所以基本首部也會有下一個首部。
- 跳數限制:相當于IPv4的TTL。
IPv6和IPv4
區別:
- IPv6將地址從32位(4B)擴大到128位(16B),更大的地址空間。
- IPv6將IPv4的校驗和字段徹底移除,以減少每跳的處理時間。
- IPv6將IPv4的可選字段移出首部,變成了擴展首部,成為靈活的首部格式,路由器通常不對擴展首部進行檢查,大大提高了路由器的處理效率。
- IPv6支持即插即用(即自動配置),不需要DHCP協議。
- IPv6首部長度必須是8B的整數倍,IPv4首部是4B的整數倍。
- IPv6只能在主機處分片,IPv4可以在路由器和主機處分片。
- ICMPv6:附加報文類型,比如“分組過大”
- IPv6支持資源的預分配,支持實時視像等要求,保證一定的帶寬和時延的應用。
- IPv6取消了協議字段,改成下一個首部字段。
- IPv6取消了總長度字段,改用了有效載荷長度字段。
- IPv6取消了服務類型字段。
IPv6地址表示形式
一般形式
冒號十六進制記法,比如4BF5:AA12:0216:FEBC:BA5F:039A:BE9A:2170
壓縮形式
4BF5:0000:0000:0000:BA5F:039A:000A:2176 ->?4BF5:0:0:0:BA5F:39A:A:2176
零壓縮:一連串連續的0可以被一對冒號取代
FF05:0:0:0:0:0:0:B3 -> FF05::B3 (雙冒號表示法在一個地址中僅可出現一次)
IP基本地址類型
- 單播:一對一通信? ? 可做源地址 + 目的地址
- 多播:一對多通信? ? 可做目的地址
- 任播:一對多中的一個通信? ? 可做目的地址
IPv6向IPv4過度的策略
雙棧協議
雙協議棧技術就是指在一臺設備上同時啟用IPv4協議棧和IPv6協議棧。這樣的話,這臺設備既能和IPv4網絡通信,又能和IPv6網絡通信。如果這臺設備是一個路由器,那么這臺路由器的不同接口上,分別配置了IPv4地址和IPv6地址,并很可能分別連接了IPv4網絡和IPv6網絡。如果這臺設備是一個計算機,那么它將同時擁有IPv4地址和IPv6地址,并具備同時處理這兩個協議地址的功能。
隧道技術
通過使用互聯網絡的基礎設施在網絡之間傳遞數據的方式。使用隧道傳遞的數據(或負載)可以是不同協議的數據幀或包。隧道協議將其他協議的數據幀或包重新封裝然后通過隧道發送。
總結
以上是生活随笔為你收集整理的计算机网络 --- 网络层IP地址的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux命令 翻译,(翻译)Linux
- 下一篇: golang int64转string_