IP地址專題九:子網掩碼及其應用

在TCP/IP協議中,SUBNET MASKS(子網掩碼)的作用是用來區分網絡上的主機是否在同一網絡取段內。在大型網絡中,CLASS A的SUBNET MASKS爲255.0.0.0, CLASS B的SUBNET MASKS爲255.255.0.0,CLASS C的SUBNET MASKS爲255.255.255.0。

假如某臺主機的SUBNET MASKS爲IP地址爲202.119.115.78,它的SUBNET MASKS爲255.255.255.0。將這兩個數據作AND運算後,所得出的值中的非0的BYTE部分即爲NETWORK ID 。運算步驟如下:

202.119.115.78的二進制值爲:

11001010.01110111.01110011.01001110

255.255.255.0的二進制值爲:

11111111.11111111.11111111.00000000

AND後的結果爲:  

11001010.01110111.01110011.00000000

轉爲二進制後即爲:

202.119.115.0

它就是NETWORK ID,在IP地址中剩下的即爲HOST ID,即爲78,這樣當有另一臺主機  的IP 地址爲202.119.115.83,它的SUBNET MASKS也是255.255.255.0,則其NETWORK ID  爲202.119.115,HOST ID爲83,因爲這兩臺主機的NETWORK ID都是202.119.115,因此,這兩臺主機在同一網段內。

但是,在實際應用中,可能會有多個分佈與各地的網絡,而且,每個網絡的主機數量並不很多,如果申請多個NETWORK ID,會造成IP資源的浪費,而且很不經濟,如果我們在SUBNET MASKS上動一下手腳,可以在只申請一個NETWORK ID的基礎上解決這個問題。

比如,我們有三個不同的子網,每個網絡的HOST數量各爲20、25和50,下面依次稱爲甲、乙和丙網,但只申請了一個NETWORK ID 就是202.119.115。首先我們把甲和乙網的SUBNET MASKS改爲255.255.255.224,224的二進制爲11100000,即它的SUBNET MASKS爲:

11111111.11111111.11111111.11100000

這樣,我們把HOST ID的高三位用來分割子網,這三位共有000、001、010、011、100、 101、110、111八種組合,除去000(代表本身)和111(代表廣播),還有六個組合,也就是可提供六個子網,它們的IP地址分別爲:(前三個字節還是202.119.115)

00100001~00111110 即33~62爲第一個子網

01000001~01011110 即65~94爲第二個子網

01100001~01111110 即97~126爲第三個子網  

10000001~10011110 即129~158爲第四個子網  

10100001~10111110 即161~190爲第五個子網  

11000001~11011110 即193~222爲第六個子網

選用161~190段給甲網,193~222段給乙網,因爲各個子網都支持30臺主機,足以應付甲網和乙網20臺和25臺的需求。

再來看丙網,由於丙網有50臺主機,按上述分割方法無法滿足它的IP需求,我們 可以將它的SUBNET MASKS設爲255.255.255.192, 由於192的二進制值爲11000000,按上述方法,它可以劃分爲兩個子網,IP地址爲:

01000001~01111110 即65~126爲第一個子網  

10000001~10111110 即129~190爲第二個子網

這樣每個子網有62個IP可用,將65~126分配丙網,多個子網用一個NETWORK ID 即告實現。

如果將子網掩碼設置過大,也就是說子網範圍擴大。那麼根據子網尋徑規則,很可能發往和本地機不在同一子網內的目的機的數據,會因爲錯誤的相與結果而認爲是在同一子網內,那麼,數據包將在本子網內循環,直到超時並拋棄。數據不能正確到達目的機,導致網絡傳輸錯誤。如果將子網掩碼設置得過小,那麼就會將本來屬於同一子網內的機器之間的通信當做是跨子網傳輸,數據包都交給缺省網關處理,這樣勢必增加缺省網關的負擔,造成網絡效率下降。因此,任意設置子網掩碼是不對的,應該根據網絡管理部門的規定進行設置。

隨着IP地址資源的日趨枯竭,可供分配的IP地址越來越少,往往一個擁 有幾百臺計算機規模的網絡只能得到區區幾個IP地址,於是,許多人開始採用其他技術來擴展IP空間。

1.子網掩碼設置

如果你所分配的IP地址僅能滿足對主機的需求,但遠不能滿足你欲在局 域網中再建若干子網的需要,設置子網掩碼就是你不得不採取的措施了。

子網掩碼同樣也以四個字節來表示,用來區分IP地址的網絡號和主機號, 默認子網掩碼如下表所示:

子網掩碼(以十進制表示)

A類 255.0.0.0

B類 255.255.0.0

C類 255.255.255.0

當IP地址與子網掩碼相與時,非零部分即被確認爲網絡號。

假如我們將子網掩碼中第四字節最高位起的某些位由0修改成1,使本來應當屬於主機號的 部分改變成爲網絡號,這樣就實現了我們劃分子網的目的。例如你得到了一個C類網絡地址198.189.98,按常規,你所有的設備從198.189.98.0到198.189.98.254都將處於同一網絡之中,但如果你需要將自己 的網絡劃分成5個子網以便管理,那就必須修改子網掩碼255.255.255.0,將此 掩碼的第四個字節中的前三位再拿出來充當子網掩碼,即將第四字節的00000000 修改成11100000(十進制數爲224),故應當將子網掩碼設置爲255.255.255.224。這樣我們有001、010、011、100、101、110六種方式與之相與得到不同的網絡號(除去000和111作爲保留地址不能使用),各子網的前三個字節仍然是198.189.98。可以知道:如子網掩碼的位數越多,能劃分的子網數也就越多,但 是每個子網的主機數就會越少。子網掩碼的劃分設置也有一個缺點:劃分的子網越多,損失的IP地址也會越多。因爲每個子網都會保留全0或全1的兩個地址而不能使用。

2.動態IP地址設置

DHCP(DynamicHostConfigurationProtocol)動態主機配置協議是一種 多個工作站共享IP地址的方法。當我們分配到的IP地址數目遠小於一個網絡工作站的數目時,如果爲每個設備都分配一個固定的IP地址,則顯然有一部分計 算機將不能連入網絡。DHCP爲我們提供了一個較好的解決方法,其前提條件是其中每一個設備都不是隨時都需要連接入網,並且同一時刻上網的設備不會很多。動態IP地址,顧名思義就是每一個設備所取得的IP地址是非固定的,即計算機連入網絡時自動申請取得一個合法的IP地址,斷開網絡時自動歸還,以便其他計算機使用。這樣,我們可以用較少的IP地址構建較大的網絡,也可以 增加網絡工作站的可移性,如果一臺主機從一個子網移動到另一個子網時,由於網絡號的不同將修改該計算機的IP地址,否則無法與其他主機通信,而如果我 們採用動態IP地址,就會減少網絡管理的複雜性。現在DHCP已非常流行,所支持的軟件很多,且可以運行於不同機器和平臺。目前撥號上Internet的用戶就基本上採用這種方法。

3.非路由地址

在IP地址範圍內,IANA(InternetAssignedNumbersAuthority)將一部 分地址保留作爲私人IP地址空間,專門用於內部局域網使用,這些地址如下表:

類 IP地址範圍 網絡數

A 10.0.0.0---10.255.255.255 1

B 172.16.0.0---172.31.255.255  16

C 192.168.0.0---192.168.255.255 255

這些地址是不會被Internet分配的,因此它們在Internet上也從來不會被路由,雖然它們不能直接和Internet網連接,但仍舊可以被用來和Internet通訊,我們可以根據需要來選用適當的地址類,在內部局域網中大膽地將這些地址當作公用IP地址一樣地使用。在Internet上,那些不需要與Internet通訊的設備,如打印機、可管理集線器等也可以使用這些地址,以節省IP地址資源。

4.代理服務器

代理服務器其實是Internet上的一臺主機設備,它有一個固定的IP地址,當你需要上Internet時,就向該服務器提出請求,代理服務器接受請求併爲你 建立連接,然後將你所需要的服務返回信息通知你,所有的數據信息和通訊處理 都是通過代理服務器的IP地址來完成。這種情況下,我們局域網內部的主機就應使用非路由地址,這樣,即能保證內部主機之間的通訊,又能拒絕外來網絡的 直接訪問請求。

代理服務器具有以下兩個優點:一是如果你請求的數據已被同一網段上的其他人請求過了,那麼大多數代理服務器都能從Cache中調用這些數據直接傳給你,避免重新連接的時間和帶寬;二是代理服務器可以保護你的內部網絡不受***,也可以設置對某些主機的訪問能力進行必要限制,這實際上起着代理防火牆 的作用。

支持代理服務器的軟件也非常多,WinGate、MsProxy等都是非常流行的代理服務器軟件。在中國,代理服務器的使用也越來越廣泛,中國公衆多媒體通訊網(169)其實就是一個巨大的使用代理服務器的例子。

5.地址翻譯

所謂地址翻譯實際上是路由器中的一個數據包處理過程。當數據包通過路由器時,地址翻譯過程將其中的內部私有IP地址解析出來,將其翻譯爲一個合法的IP地址。地址翻譯過程可以按預先定義好的地址表一一映射翻譯,也可以將多個內部私有地址翻譯爲一個外部合法IP地址。由於網絡內每個設備都有一個內部穩定的IP地址,所以這種方法具有較 強的網絡安全控制性能。
另外還可以便於網絡設備儘快地區分本網段地址和非本網段的地址。

例如:下圖所示



主機A與主機B交互信息。

主機A: IP地址:202.183.58.11

  子網掩碼:255.255.255.0

  路由地址:202.183.58.1

主機B: IP地址:202.183.56.5

  子網掩碼:255.255.255.0

  路由地址:202.183.56.1

路由器從端口202.183.58.1接收到主機A發往主機B的IP數據報文後,

(1)首先用端口地址202.183.58.1與子網掩碼地址255.255.255.0進行“邏輯與”,得到端口網段地址:202.183.58.0,

(2)然後將目的地址202.183.56.5與子網掩碼地址255.255.255.0進行“邏輯與”,得202.183.56.0,

(3)將結果202.183.56.0與端口網段地址202.183.58.0比較,如果相同,則認爲是本網段的,不予轉發。如果不相同,則將該IP報文轉發到端口202.183.56.1所對應的網段。

將子網進一步劃分,縮小子網的地址空間。將一個網段劃分爲多個子網段,便於網絡管理。

例如:下圖所示:



學校校園網信息中心可以將202.183.56.0(C類地址)分配給兩個系,每個系約有120臺計算機,則可以將子網掩碼地址定義爲:255.255.255.128

這樣將原來的一個網段分成兩個獨立的子網段,便於網絡管理。

 

系1的地址範圍:202.183.56.1—202.183.56.126

子網地址:11001010 10110111 00111000 0xxxxxxx

系2的地址範圍:202.183.56.129—202.183.56.254

子網地址:11001010 10110111 00111000 1xxxxxxx

0

收藏

zcmsgk

24篇文章,2W+人氣,0粉絲

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章