每天資訊【通訊技術】網路工程師必須要掌握的子網掩塞知識:ip地址和子網掩

菜單

【通訊技術】網路工程師必須要掌握的子網掩塞知識:ip地址和子網掩

今天來看下IP地址和子網掩碼。

子網掩碼是每個網路工程師必須要掌握的基礎知識,只有掌握它,才能夠真正理解TCP/IP協議的設定。下邊我們一起來複習複習。

【通訊技術】網路工程師必須要掌握的子網掩塞知識:ip地址和子網掩

一、IP地址

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

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

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

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

類別 網路號 /佔位數 主機號 /佔位數 用途

A 1~126 / 8 0~255 0~255 1~254 / 24 國家級

B 128~191 0~255 / 16 0~255 1~254 / 16 跨過組織

C 192~223 0~255 0~255 / 24 1~254 / 8 企業組織

【通訊技術】網路工程師必須要掌握的子網掩塞知識:ip地址和子網掩

隨著互連網應用的不斷擴大,原先的IPv4的弊端也逐漸暴露出來,即網路號佔位太多,而主機號位太少,所以其能提供的主機地址也越來越稀缺,目前除了使用NAT在企業內部利用保留地址自行分配以外,通常都對一個高類別的IP地址進行再劃分,以形成多個子網,提供給不同規模的使用者群使用。

二、什麼是子網掩碼

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

子網掩碼不能單獨存在,它必須結合IP地址一起使用。子網掩碼只有一個作用,就是將某個IP地址劃分成網路地址和主機地址兩部分。

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

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

三、常用的子網掩碼

【通訊技術】網路工程師必須要掌握的子網掩塞知識: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地址,還需要將其高位主機位再作為劃分出的子網網路號,剩下的是每個子網的主機號,這時該如何進行每個子網的掩碼計算。

一、利用子網數來計算

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

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的子網掩碼。

二、利用主機數來計算

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

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

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

如欲將B類IP地址168。195。0。0劃分成若干子網,每個子網內有主機700臺:

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

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

即255。255。252。0。這就是該欲劃分成主機為700臺的B類IP地址 168。195。0。0的子網掩碼。

下面列出各類IP地址所能劃分出的所有子網,其劃分後的主機和子網佔位數,以及主機和子網的(最大)數目,注意要去掉保留的IP地址(即劃分後有主機位或子網位全為“0”或全為“1”的):

【通訊技術】網路工程師必須要掌握的子網掩塞知識:ip地址和子網掩

【通訊技術】網路工程師必須要掌握的子網掩塞知識:ip地址和子網掩

五、舉例

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