1. 程式人生 > >網絡基礎之IP地址和子網掩碼

網絡基礎之IP地址和子網掩碼

ip地址劃分 display 廣播地址 out 五類 生產 上進 公有ip 算子

IP地址

IP是英文Internet Protocol的縮寫,意思是“網絡之間互連的協議”,也就是為計算機網絡相互連接進行通信而設計的協議。在因特網中,它是能使連接到網上的所有計算機網絡實現相互通信的一套規則,規定了計算機在因特網上進行通信時應當遵守的規則。任何廠家生產的計算機系統,只要遵守IP協議就可以與因特網互連互通。正是因為有了IP協議,因特網才得以迅速發展成為世界上最大的、開放的計算機通信網絡。因此,IP協議也可以叫做“因特網協議”。

互聯網是由許多小型網絡構成的,每個網絡上都有許多主機,這樣便構成了一個有層次的結構。IP地址在設計時就考慮到地址分配的層次特點,將每個IP地址都分割成網絡號和主機號兩部分,以便於IP地址的尋址操作。

IP地址是32位的二進制數值(IPV6是128位)用於在TCP/IP通訊協議中標記每臺計算機的地址。通常我們使用點式十進制來表示,如192.168.1.5等等。

每個IP地址又可分為兩部分。即網絡號部分和主機號部分:網絡號表示其所屬的網絡段編號,主機號則表示該網段中該主機的地址編號。按照網絡規模的大小,IP地址可以分為A、B、C、D、E五類,其中A、B、C類是三種主要的類型地址,D類專供多目傳送用的多目地址,E類用於擴展備用地址。A、B、C三類IP地址有效範圍如下表:

技術分享圖片

技術分享圖片

子網掩碼

子網掩碼(subnet mask)又叫網絡掩碼、地址掩碼、子網絡遮罩,它是一種用來指明一個IP地址的哪些位標識的是主機所在的子網,以及哪些位標識的是主機的位掩碼。

子網掩碼不能單獨存在,它必須結合IP地址一起使用。子網掩碼只有一個作用,就是將某個IP地址劃分成網絡地址和主機地址兩部分。翻譯一下就是:一是用於屏蔽IP地址的一部分以區別網絡標識主機標識,並說明該IP地址是在局域網上,還是在遠程網上。二是用於將一個大的IP網絡劃分為若幹小的子網絡。

子網掩碼是標誌兩個IP地址是否同屬於一個子網的,也是32位二進制地址,其每一個為1代表該位是網絡位,為0代表主機位。它和IP地址一樣也是使用點式十進制來表示的。如果兩個IP地址在子網掩碼的按位與的計算下所得結果相同,即表明它們共屬於同一子網中。

在計算子網掩碼時,我們要註意IP地址中的保留地址,即“ 0”地址和廣播地址,它們是指主機地址或網絡地址全為“ 0”或“ 1”時的IP地址,它們代表著本網絡地址和廣播地址,一般是不能被計算在內的。

常用的子網掩碼

技術分享圖片

子網掩碼有數百種,這裏只介紹最常用的兩種子網掩碼,它們分別是“255.255.255.0”和“255.255.0.0”。

1. 子網掩碼是“255.255.255.0”的網絡:最後面一個數字可以在0~255範圍內任意變化,因此可以提供256個IP地址。但是實際可用的IP地址數量是256-2,即254個,因為主機號不能全是“0”或全是“1”。

2. 子網掩碼是“255.255.0.0”的網絡:後面兩個數字可以在0~255範圍內任意變化,可以提供65536個IP地址。但是實際可用的IP地址數量減2,即65534個。

IP地址的子網掩碼設置不是任意的。如果將子網掩碼設置過大,也就是說子網範圍擴大,那麽,根據子網尋徑規則,很可能發往和本地機不在同一子網內的目的機的數據,會因為錯誤的判斷而認為目的機是在同一子網內。

子網掩碼的算法

對於無須再劃分成子網的IP地址來說: 如某B類IP地址為 10.14.3.0,無須再分割子網,則該IP地址的子網掩碼為255.255.0.0; 如果它是一個C類地址,則其子網掩碼為 255.255.255.0。

一、利用子網數來計算:

【使用子網是為了減少IP的浪費。因為隨著互聯網的發展,越來越多的網絡產生,有的網絡多則幾百臺,有的只有區區幾臺,這樣就浪費了很多IP地址,所以要劃分子網。使用子網可以提高網絡應用的效率】

在求子網掩碼之前必須先搞清楚要劃分的子網數目,以及每個子網內的所需主機數目。

1)將子網數目轉化為二進制來表示

2)取得該二進制的位數,為 N

3)取得該IP地址的類子網掩碼,將其主機地址部分的的前N位置 1 即得出該IP地址劃分子網的子網掩碼。

如欲將B類IP地址168.195.0.0劃分成27個子網:

1)27=11011

2)該二進制為五位數,N = 5

3)將B類地址的子網掩碼255.255.0.0的主機地址前5位置 1,得到 255.255.248.0

即為劃分成 27個子網的B類IP地址 168.195.0.0的子網掩碼。

另: 把B類地址172.16.0.0劃分成30個子網絡,求掩碼[255.255.248.0]

二、利用主機數來計算

1)將主機數目轉化為二進制來表示

2)如果主機數小於或等於254(註意去掉保留的兩個IP地址),則取得該主機的二進制位數,為 N,這裏肯定 N<8。如果大於254,則 N>8,這就是說主機地址將占據不止8位。

3)使用255.255.255.255來將該類IP地址的主機地址位數全部置1,然後從後向前的將N位全部置為 0,即為子網掩碼值。

如欲將B類IP地址168.195.0.0劃分成若幹子網,每個子網內有主機700臺:

1) 700=1010111100

2)該二進制為十位數,N = 10

3)將該B類地址的子網掩碼255.255.0.0的主機地址全部置 1,得到255.255.255.255

然後再從後向前將後 10位置0,即為: 11111111.11111111.11111100.00000000

即255.255.252.0。這就是該欲劃分成主機為700臺的B類IP地址 168.195.0.0的子網掩碼。

另:把B類地址172.16.0.0劃分成若幹子網絡,每個子網絡能容納500臺主機,求掩碼[255.255.254.0]

三、利用子網掩碼計算最大有效子網數

A類IP地址,子網掩碼為255.224.0.0,它所能劃分的最大有效子網數是多少?

①將子網掩碼轉換成二進制表示11111111.11100000.00000000.00000000

②統計一下它的主機位 + 網絡位共有11位

③A類地址網絡位的基礎數是8,二者之間的位數差是3

④最大有效子網數就是2的3次方,即最多可以劃分8個子網絡。

四、利用子網掩碼計算最大可用主機數

A類IP地址,子網掩碼為255.252.0.0,將它劃分成若幹子網絡,每個子網絡中可用主機數有多少?

①將子網掩碼轉換成二進制表示11111111.11111100.00000000.00000000

②統計一下它共有18位

③最大可用主機數就是2的18次方減2(除去全是0的網絡地址和全是1廣播地址),即每個子網絡最多有262142臺主機可用。

五、利用子網掩碼確定子網絡的起止地址

B類IP地址172.16.0.0,子網掩碼為255.255.192.0,它所能劃分的子網絡起止地址是多少?

①利用子網掩碼計算,最多可以劃分2^2=4個子網絡 --> 子網二進制 11111111.11111111.11.00000000000000

②利用子網掩碼計算,每個子網絡可容納2^14=16384臺主機(包括網絡地址和廣播地址,即二進制中的0全部改為1)

③用16384除以256(網段內包括網絡地址和廣播地址的全部主機數,因為一個最多256個),結果是64

④具體劃分網絡起止方法如下:

172.16.0.0~172.16.63.255

172.16.64.0~172.16.127.255

172.16.128.0~172.16.191.255

172.16.192.0~172.16.255.255

六、其他

1.一個主機的IP地址是211.112.18.137,掩碼是255.255.255.224,要求計算這個主機所在網絡的網絡地址和廣播地址。

常規辦法是:把這個主機地址和子網掩碼都換算成二進制數,兩者進行邏輯與運算後即可得到網絡地址。

另一種方法:255.255.255.224的掩碼所容納的IP地址有256-224=32個(包括網絡地址和廣播地址),那麽具有這種掩碼的網絡地址一定是32的倍數。而網絡地址是子網IP地址的開始,廣播地址是結束,可使用的主機地址在這個範圍內,因此略小於137而又是32的倍數的只有128,所以得出網絡地址是211.112.18.128。而廣播地址就是下一個網絡的網絡地址減1。而下一個32的倍數是160,因此可以得到廣播地址為211.112.18.159。

2.根據每個網絡的主機數量進行子網地址的規劃和計算子網掩碼。

比如一個子網有10臺主機,那麽對於這個子網需要的IP地址是:

10+1+1+1=13

註意:加的第一個1是指這個網絡連接時所需的網關地址,接著的兩個1分別是指網絡地址和廣播地址。因為13小於16(16等於2的4次方),所以主機位為4位。而

256-16=240

所以該子網掩碼為255.255.255.240。

如果一個子網有14臺主機,不少人常犯的錯誤是:依然分配具有16個地址空間的子網,而忘記了給網關分配地址。這樣就錯誤了,因為:

14+1+1+1=17

17大於16,所以我們只能分配具有32個地址(32等於2的5次方)空間的子網。這時子網掩碼為:255.255.255.224

以下是資深人士經驗總結的關系表

私為地址:有一類IP地址是不用申請可直接用於企業內部網的,這就是Private Address,Private Address不會被INTERNET上的任何路由器轉發,欲接入INTERNET必須要通過NAT/PAT轉換,以公有IP的形式接入。

10.0.0.0-10.255.255.255(一個A類地址)
172.16.0.0-172.31.255.255(16個B類地址)
192.168.0.0-192.168.255.255(256個C類地址)
 

A類IP地址段:1.0.0.0~126.255.255.255 私有地址段:10.0.0.0~10.255.255.255

技術分享圖片

B類IP地址段:128.0.0.0~191.255.255.255 私有地址段:172.16.0.0~172.31.255.255
技術分享圖片

C類IP地址段:192.0.0.0~223.255.255.255 私有地址段:192.168.0.0~192.168.255.255
技術分享圖片

【更多參考】

https://blog.csdn.net/yinshitaoyuan/article/details/51782330

https://www.cnblogs.com/duhuo/p/4253964.html

https://www.toutiao.com/i6575740167594705416/

網絡基礎之IP地址和子網掩碼