IP地址(一)


1. IP地址的表示

  目前IP地址表示有兩種,IPv4以及IPv6。

1.1 IPv4表示

  IPv4通常采用點分十進制表示,代表一個32位非負整數,下圖是一些示例。

 

1.2 IPv6表示

  IPv6地址長度2位128位,傳統表示方法是采用稱為塊或字段的四個十六進制數,塊之間使用冒號分隔,例如5f05:2000:80ad:5800:0058:0808:2023:1d71。

下圖是一些示例:

  

  從上圖可以看出,IPv6地址存在簡化表示法,其原則如下(詳細見【RFC4291】):

  • 一個塊中前導的零不必書寫。比如前面的例子中,地址可寫為5f05:2000:80ad:5800:58:808:2023:1d71。
  • 全零的塊可以省略,並用符號::代替。例如,IPv6地址0:0:0:0:0:0:0:1可簡寫為::1。同樣,地址2001:0db8:0:0:0:0:0:2,可簡寫為2001:db8::2。一個IPv6地址中符號::只能使用一次。
  • IPv6格式中嵌入IPv4地址可使用混合符號形式,緊接着IPv4部分的地址塊的值為ffff,地址的其余部分使用點分十進制格式。例如,IPv6地址::ffff:10.0.0.1可表示IPV4地址10.0.0.1。
  • IPv6地址的低32位通常采用點分十進制表示法。因此,IPv6地址::0102:f001相當於地址::1.2.240.1。

  在某些情況下(例如表示一個包含地址的URL時),IPv6地址中的冒號分隔符可能與其他分隔符混淆,例如IP地址和端口號之間使用冒號。在這種情況下,用括號字符[]包圍IPv6地址。

例如,URL

  https://[2001:db8:85a3:8d3:1319:8a2e:370:7344]:443/

是指IPv6主機2001:db8:85a3:8d3:1319:8a2e:370:7344中的端口號443使用https、tcp和IPv6協議。

2. IP地址分類

  IP地址可以根據類型和大小分組,比如單播、組播、廣播地址以及任播。

  單播:有具體目標地址的幀從源到達目標地址的過程。比如你對張三漢“張三”,那么只有張三應答你。

  組播:就是幀送往定義在一組內的地址。比如你喊:“年齡15歲的都過來一人發一百塊錢”。那么15歲的都會過來,其他年齡的就不會過來。

  廣播: 就是把幀發往所有能到達的地址。比如你在學校的廣播喊“今天放假”。那么全校的都會很高興。

  任播: IPv6中保留地址,指定給一個或多個可能屬於不同物理層節點的網絡接口。其屬性為發送到任播地址的數據分組會按照路由選擇協議的距離方法,被路由選擇到有該地址的最近接口。

2.1 分類尋址

  每個單播IP地址都有一個網絡部分,用於識別接口使用的IP地址在哪個網絡中可以被發現;以及一個主機地址,用於識別由網絡部分給出的網絡中的特定主機。因此,地址中的一些連續位

稱為網絡號,其余位稱為主機號。下圖顯示了這個基本思路(IPv4)。

  

  IPv4地址空間最初分為五大類。A、B、C類用於Internet(單播地址)中接口分配地址,以及其他一些特殊情況下使用。

類由地址的頭幾位來定義:0為A類、10為B類、110為C類等。D類地址組播、E類地址保留。

  下圖為最初(”分類“)的IPv4地址空間划分表。

  從上表可以看出一些問題,整個Internet中只有127個A類網絡,C類網絡(比如192.125.3.0)只能容納256台主機。也就是說A類和B類網絡號

通常會浪費太多主機號,而C類網絡號不能為很多站點提供足夠的主機號。

 2.2 子網尋址

  隨着Internet發展,人們首先遇到一個困難,那就是很難為接入Internet的新網段分配一個新的網絡號,尤其是隨着局域網(LAN)發展和增加,該問題

變的更加棘手。為了解決這個問題,人們想到了一個辦法,在一個站點接入Internet后為其分配一個網絡號,然后由站點管理員進一步划分本地的子網數,

同時不改變Internet核心路由基礎設施。支持該功能的方法就是子網尋址,下圖是一個使用子網尋址的例子(IPv4)。

  一個B類地址被划分子網的地址。它使用8位作為子網ID,提供256個子網和每個子網中254台主機。這種划分可由網絡管理員改變。下圖是一個子網尋址如何工作的圖示。

  某個站點被分配一個典型的B類網絡號128.32。網絡管理員決定用於站點范圍內的子網掩碼為255.255.255.0,提供256個子網,每個子網可

容納256 - 2 = 254台主機。同一子網中每台主機的IPv4地址擁有相同的子網號。左側的據網段的IPv4地址開始於128.32.1,右側的所有主機開始

於128.32.2。

  Internet中的其他站點要訪問這個站點,目的地址以128.32開始的所有流量直接由Internet路由系統交給邊界路由器(特別是其接口的IPv4地址

137.164.23.30)。在這個站點上,邊界路由器必須區分128.32網絡中的不同子網。特別是,它必須能夠區分和分離目的地址128.32.1.x和128.32.2.x

的流量。這些地址分別表示子網號1和2,它們都采用128.32的B類網絡號。

2.3 子網掩碼

  子網掩碼是由一台主機或路由器使用的分配位,以確定如何從一台主機對應IP地址中獲得網絡和子網信息。IP子網掩碼與對應IP地址長度相

同(IPv4為32位,IPv6為128位)。它們通常在一台主機或路由器中以IP地址相同的方式配置,既可以是靜態的(通常是路由器),也可以使用

一些動態方式,例如動態主機配置協議(DHCP)。對於IPv4,子網掩碼可以IPv4d點分十進制編寫。子網掩碼以一些1后跟一些0構成,下表給出

一些示例。

下表為IPv6的一些列子。

 

  掩碼由路由和主機使用,以確定一個IP地址的網絡/子網部分的結束和主機部分的開始。子網掩碼中的一位設為1表示IP地址

的對應位與一個地址的網絡/子網部分的對應位相結合,並將結果作為轉發數據報的接觸。相反,子網掩碼中的一位設為0,表示

一個IP地址的對應位作為主機ID的一部分。例如,當子網掩碼為255.255.255.0時,如何處理IPv4地址128.32.1.14。

 

  一個IP地址可以與一個子網掩碼使用按位與操作,以形成用於路由的地址的網絡/子網標識符(前綴)。在這個例子中,

IPv4地址128.32.1.14使用長度為24的掩碼得到前綴128.32.1.0/24。

  子網掩碼純粹時站點內部的局部問題,Internet路由系統其余部分不需要子網掩碼的只是,因為站點之外的路由器做出路由決策

只基於地址的網絡號部分,並不需要網絡/子網或主機部分。

2.4 可變長度子網掩碼(VLSM)

  不同長度的子網掩碼可應用於相同網絡號,雖然增加 地址配置管理的復雜性,但提高了子網結構的靈活性,不同的子網可容納不同數量的主機。

下圖所示的網絡拓撲,它使用VLSM為之前的子網尋址擴展了兩個額外的子網。

  上圖中,三個不同的子網掩碼被用於站點中的子網128.32.0.0/16:/24、/25、/26。於是,每個子網可提供不同數量的主機。主機

數受IP地址中沒有被網絡/子網號使用的剩余位限制。對於IPv4和/24前綴,允許有32-24=8位(256台主機);對於/25,有1/2數量(128台

主機);對於/26,有1/4數量(64台主機)。注意,主機和路由器的每個接口都需要IP地址和子網掩碼來描述,但掩碼決定了網絡拓撲的

不同。基於路由中運行的動態路由協議(例如OSPF、IS-IS、RIPv2),流量能正確地在同一站點的主機之間流動,以及通過Internet前往

或來自外部站點。

 2.5 廣播地址

  在每個IPv4子網中,一個特殊地址被保留作為子網廣播地址。子網廣播地址由首先子網掩碼取反,然后與IPv4地址進行按位或運算的結果。

如下圖所示:

  上圖演示了廣播地址的計算過程,其中子網是128.32.1.0/24,IP地址為128.32.1.14,掩碼取反后與IPv4地址按位或運算

得到廣播地址128.32.1.255。

  使用廣播地址作為目的地的地址,也被稱為定向廣播。至少在理論上,這種廣播可作為一個單獨的數據報通過Internet路由

直至到達目標子網,再作為一組廣播數據報發送給子網中所有主機。

  定向廣播是一個大問題,從安全的角度來看,它們至今在Internet中仍被禁用。現代路由器默認禁止轉發定向廣播,甚至完全

不支持該功能。

  除了子網廣播地址,特殊用途地址255.255.255.255被保留為本地網絡地址(也稱為有限廣播),它根本被會被路由轉發。

IPv6沒有任何廣播地址,而IPv6僅使用組播。

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM