小紅帽技術論壇 在這裡你可以看到你訂閱的主題,悄悄話,編輯個人資料及環境設定 免費註冊! 行事曆 搜尋其他會員 常見問題
搜尋 小紅帽流量分析 小紅帽專用irc 聊天室 Web 版!建議安裝使用 hmirc 軟體! 回首頁 登出
小紅帽技術論壇 : Powered by vBulletin version 2.2.9 小紅帽技術論壇 > 電腦類 > IT認證考試板 > 子網掩碼《教學》
  上一篇主題   下一篇主題
作者
主題、內容    發表新的文章     回覆文章

benshaoxw
違規停權

註冊日期: Mar 2009
來自:
發表文章數: 29

子網掩碼《教學》

  子網掩碼(subnet mask)是每個網管必須要掌握的基礎知識,只有掌握它,才能夠真正理解TCP/IP協議的設置。以下我們就來深入淺出地講解什麽是子網掩碼。
  IP地址的結構
  要想理解什麽是子網掩碼,就不能不了解IP地址的構成。互聯網是由許多小型網絡構成的,每個網絡上都有許多主機,這樣便構成了壹個有層次的結構。IP地址在設計時就考慮到地址分配的層次特點,將每個IP地址都分割成網絡號和主機號兩部分,以便於IP地址的尋址操作。
  IP地址的網絡號和主機號各是多少位呢?如果不指定,就不知道哪些位是網絡號、哪些是主機號,這就需要通過子網掩碼來實現。
  子網掩碼不能單獨存在,它必須結合IP地址壹起使用。子網掩碼只有壹個作用,就是將某個IP地址劃分成網絡地址和主機地址兩部分。
  子網掩碼的設定必須遵循壹定的規則。與IP地址相同,子網掩碼的長度也是32位,左邊是網絡位,用二進制數字“1”表示;右邊是主機位,用二進制數字“0”表示。只有通過子網掩碼,才能表明壹臺主機所在的子網與其他子網的關系,使網絡正常工作。
  子網掩碼的術語是擴展的網絡前綴碼不是壹個地址,但是可以確定壹個網絡層地址哪壹部分是網絡號,哪壹部分是主機號,1 的部分代表網絡號,掩碼為 0的部分代表主機號。子網掩碼的作用就是獲取主機 IP的網絡地址信息,用於區別主機通信不同情況,由此選擇不同路。其中 A類地址的默認子網掩碼為 255.0.0.0;B類地址的默認子網掩碼為 255.255.0.0;C類地址的默認子網掩碼為:255.255.255.0。
  如何通過子網掩碼來確定網絡號或者網絡地址?
  通過 IP 地址的二進制與子網掩碼的二進制進行與運算進行定某個設備的網絡地址,
  也就是說通過子網掩碼分辨壹個網絡的網絡部分和主機部分子網掩碼壹旦設置,網絡地址和主機地址就固定了。
  相對於使用子網掩碼來識別網絡地址,早期的使用類別進行網絡地址的分類存在著地址大量浪費的不足。
  子網壹個最顯著的特征就是具有子網掩碼。與IP地址相同,子網掩碼的長度也是32位,也可以使用十進制的形式。例如,為二進制形式的子網掩碼:11111111111111111111111100000000,采用十進制的形式為:255.255.255.0。
  1.子網掩碼的概念
  子網掩碼是壹個32位地址,用於屏蔽IP地址的壹部分以區別網絡標識和主機標識,並說明該IP地址是在局域網上,還是在遠程網上。
  2.確定子網掩碼數
  用於子網掩碼的位數決定於可能的子網數目和每個子網的主機數目。在定義子網掩碼前,必須弄清楚本來使用的子網數和主機數目。
  定義子網掩碼的步驟為:
  A、確定哪些組地址歸我們使用。比如我們申請到的網絡號為 “210.73.a.b”,該網絡地址為C類IP地址,網絡標識為“210.73”,主機標識為“a.b”。
  B、根據我們現在所需的子網數以及將來可能擴充到的子網數,用宿主機的壹些位來定義子網掩碼。比如我們現在需要12個子網,將來可能需要16個。用第三個字節的前四位確定子網掩碼。前四位都置為“1”(即把第三字節的最後四位作為主機位,其實在這埵陪蚋眾瑼熙W律,非網絡位的前幾位置1原網絡就被分為2的幾次方個網絡,這樣原來網絡就被分成了2的4次方16個子網),即第三個字節為“11110000”,這個數我們暫且稱作新的二進制子網掩碼。
  C、把對應初始網絡的各個位都置為“1”,即前兩個字節都置為“1”,第四個字節都置為“0”,則子網掩碼的間斷二進制形式為:“11111111.11111111.11110000.00000000”
  D、把這個數轉化為間斷十進制形式為:“255.255.240.0”
  這個數為該網絡的子網掩碼。
  3.IP掩碼的標註
  A、無子網的標註法
  對無子網的IP地址,可寫成主機號為0的掩碼。如IP地址210.73.140.5,掩碼為255.255.255.0,也可以缺省掩碼,只寫IP地址。
  B、有子網的標註法
  有子網時,壹定要二者配對出現。以C類地址為例。
  1.IP地址中的前3個字節表示網絡號,後壹個字節既表明子網號,又說明主機號,還說明兩個IP地址是否屬於同壹個網段。如果屬於同壹網絡區間,這兩個地址間的信息交換就不通過路由器。如果不屬同壹網絡區間,也就是子網號不同,兩個地址的信息交換就要通過路由器進行。例如:對於IP地址為210.73.140.5的主機來說,其主機標識為00000101,對於IP地址為210.73.140.16的主機來說它的主機標識為00010000,以上兩個主機標識的前面三位全是000,說明這兩個IP地址在同壹個網絡區域中,這兩臺主機在交換信息時不需要通過路由器進行。210.73.60.1的主機標識為00000001,210.73.60.252的主機標識為11111100,這兩個主機標識的前面三位000與111不同,說明二者在不同的網絡區域,要交換信息需要通過路由器。其子網上主機號各為1和252。
  2.掩碼的功用是說明有子網和有幾個子網,但子網數只能表示為壹個範圍,不能確切講具體幾個子網,掩碼不說明具體子網號,有子網的掩碼格式(對C類地址)。
  子網掩碼的表示方法
  子網掩碼通常有以下2種格式的表示方法:
  1. 通過與IP地址格式相同的點分十進制表示
  如:255.0.0.0 或 255.255.255.128
  2. 在IP地址後加上"/"符號以及1-32的數字,其中1-32的數字表示子網掩碼中網絡標識位的長度
  如:192.168.1.1/24 的子網掩碼也可以表示為 255.255.255.0
  子網掩碼和ip地址的關系
  註意這講的都是有類網!
  子網掩碼是用來判斷任意兩臺計算機的IP地址是否屬於同壹子網絡的根據。
  最為簡單的理解就是兩臺計算機各自的IP地址與子網掩碼進行AND運算後,如果得出的結果是相同的,則說明這兩臺計算機是處於同壹個子網絡上的,可以進行直接的通訊。就這麽簡單。
  請看以下示例:
  運算演示之壹:aa
  I P 地址 192.168.0.1
  子網掩碼 255.255.255.0
  AND運算 (AND運算法則:1 與 1 = 1 ,1 與 0 = 0 ,0 與 1 = 0 ,0 與 0 = 0 ,即當對應位均為1時結果為1,其余為0。)
  轉化為二進制進行運算:
  I P 地址 11000000.10101000.00000000.00000001
  子網掩碼 11111111.11111111.11111111.00000000
  AND運算
  11000000.10101000.00000000.00000000
  轉化為十進制後為:
  192.168.0.0
  運算演示之二:
  I P 地址 192.168.0.254
  子網掩碼 255.255.255.0
  AND運算
  轉化為二進制進行運算:
  I P 地址 11000000.10101000.00000000.11111110
  子網掩碼 11111111.11111111.11111111.00000000
  AND運算
  11000000.10101000.00000000.00000000
  轉化為十進制後為:
  192.168.0.0
  運算演示之三:
  I P 地址 192.168.0.4
  子網掩碼 255.255.255.0
  AND運算
  轉化為二進制進行運算:
  I P 地址 11000000.10101000.00000000.00000100
  子網掩碼 11111111.11111111.11111111.00000000
  AND運算
  11000000.10101000.00000000.00000000
  轉化為十進制後為:
  192.168.0.0
  通過以上對三組計算機IP地址與子網掩碼的AND運算後,我們可以看到它運算結果是壹樣的。均為192.168.0.0
  所以計算機就會把這三臺計算機視為是同壹子網絡,然後進行通訊的。我現在單位使用的代理服務器,內部網絡就是這樣規劃的。
  也許妳又要問,這樣的子網掩碼究竟有多少了IP地址可以用呢?妳可以這樣算。
  根據上面我們可以看出,局域網內部的ip地址是我們自己規定的(當然和其他的ip地址是壹樣的),這個是由子網掩碼決定的通過對255.255.255.0的分析。可得出:
  前三位IP碼由分配下來的數字就只能固定為192.168.0 所以就只剩下了最後的壹位了,那麽顯而易見了,ip地址只能有(2的8次方-2),即256-2=254,壹般主機地址全為0或者1(二進制)有其特殊的作用。
  那麽妳可能要問了:如果我的子網掩碼不是255.255.255.0呢?妳也可以這樣做啊假設妳的子網掩碼是255.255.128.0
  那麽妳的局域網內的ip地址的前兩位肯定是固定的了
  這樣,妳就可以按照下邊的計算來看看同壹個子網內到底能有多少臺機器
  1、十進制128 = 二進制1000 0000
  2、IP碼要和子網掩碼進行AND運算
  3、
  I P 地址 11000000.10101000.1*******.********
  子網掩碼 11111111.11111111.10000000.00000000
  AND運算
  11000000.10101000.10000000.00000000
  轉化為十進制後為:
  192 . 168. 128 . 0
  4、可知我們內部網可用的IP地址為:
  11000000.10101000.10000000.00000000
  到
  11000000.10101000.11111111.11111111
  (也可以是:11000000.10101000.00000000.00000000 到11000000.10101000.01111111.11111111)
  5、轉化為十進制:
  192 . 168.128.0 到192 . 168.255.255 (或者192.168.0.0到192.168.127.255)
  6、0和255通常作為網絡的內部特殊用途。通常不使用。
  7、於是最後的結果如下:我們單位所有可用的IP地址為:
  192.168.128.1-192.168.128.254
  192.168.129.1-192.168.129.254
  192.168.130.1-192.168.130.254
  192.168.131.1-192.168.131.254
  . . . . . . . . . . . . .
  192.168.139.1-192.168.139.254
  192.168.140.1-192.168.140.254
  192.168.141.1-192.168.141.254
  192.168.142.1-192.168.142.254
  192.168.143.1-192.168.143.254
  . . . . . . . . . . . . .
  192.168.254.1-192.168.254.254
  192.168.255.1-192.168.255.254
  8、總數為(255-128+1)*(254-1+1) =128 * 254 = 32512
  子網內包含的機器數目應該是2^n-2,比如說上面的子網掩碼是255.255.128.0,那麽他的網絡號是17位,主機號是15位,只要主機號不全是0或者1就是可以的,所以ip地址是192.168.192.0(11000000.10101000.11000000.00000000)也允許,除掉全0全1,結果為2^15-2=32766,上面的落了好多地址
  9、看看的結果是否正確
  (1)、設定IP地址為192.168.128.1
  Ping 192.168.129.233通過測試
  訪問http://192.168.129.233可以顯示出主頁
  (2)、設定IP地址為192.168.255.254
  Ping 192.168.129.233通過測試
  訪問http://192.168.129.233可以顯示出主頁
  10、結論
  以上證明我們的結論是對的。
  現在妳就可以看妳的子網中能有多少臺機器了
  255.255.255.128
  分解:
  11111111.11111111.11111111.1000000
  所以妳的內部網絡的ip地址只能是
  xxxxxxxx.xxxxxxxx.xxxxxxxx.0???????
  到
  xxxxxxxx.xxxxxxxx.xxxxxxxx.01111111
  子網掩碼
  (1)子網TCP/IP網間網技術產生於大型主流機環境中,它能發展到今天的規模是當初的設計者們始料未及的。網間網規模的迅速擴展對IP地址模式的威脅並不是它不能保證主機地址的唯壹性,而是會帶來兩方面的負擔:第壹,巨大的網絡地址管理開銷;第二,網關尋徑急劇膨脹。其中第二點尤為突出,尋徑表的膨脹不僅會降低網關尋徑效率(甚至可能使尋徑表溢出,從而造成尋徑故障),更重要的是將增加內外部路徑刷新時的開銷,從而加重網絡負擔。
  因此,迫切需要尋求新的技術,以應付網間網規模增長帶來的問題。仔細分析發現,網間網規模的增長在內部主要表現為網絡地址的增減,因此解決問題的思路集中在:如何減少網絡地址。於是IP網絡地址的多重復用技術應運而生。
  通過復用技術,使若幹物理網絡共享同壹IP網絡地址,無疑將減少網絡地址數。
  子網編址(subnet addressing)技術,又叫子網尋徑(subnet routing),英文簡稱subnetting,是最廣泛使用的IP網絡地址復用方式,目前已經標準化,並成為IP地址模式的壹部分。壹般的,32位的IP地址分為兩部分,即網絡號和主機號,我們分別把他們叫做IP地址的“網間網部分”和“本地部分”。子網編址技術將本地部分進壹步劃分為“物理網絡”部分和“主機”部分,如圖:網間網部分物理網絡主機
  |←網間網部分→|←————本地部分—————→|
  |←物理網絡→|←—主機部分——→|
  其中“物理網絡”用於標識同壹IP網絡地址下的不同物理網絡即是“子網”。
  (2)子網掩碼IP協議標準規定:每壹個使用子網的網點都選擇壹個32位的位模式,若位模式中的某位置1,則對應IP地址中的某位為網絡地址(包括網間網部分和物理網絡號)中的壹位;若位模式中的某位置0,則對應IP地址中的某位為主機地址中的壹位。例如位模式:
  11111111 11111111 11111111 00000000中,前三個字節全1,代表對應IP地址中最高的三個字節為網絡地址;後壹個字節全0,代表對應IP地址中最後的壹個字節為主機地址。這種位模式叫做子網模(subnet mask)或“子網掩碼”。
  為了使用的方便,常常使用“點分整數表示法”來表示壹個IP地址和子網掩碼,例如c類地址子網掩碼(11111111 11111111 11111111 00000000)為:255.255.255.0 IP協議關於子網掩碼的定義提供壹種有趣的靈活性,允許子網掩碼中的“0”和“1”位不連續。但是,這樣的子網掩碼給分配主機地址和理解尋徑表都帶來壹定困難,並且,極少的路由器支持在子網中使用低序或無序的位,因此在實際應用中通常各網點采用連續方式的子網掩碼。像255.255.255.64和255.255.255.160等壹類的子網掩碼不推薦使用。
  (3)子網掩碼與IP地址子網掩碼與IP地址結合使用,可以區分出壹個網絡地址的網絡號和主機號。
  例如:有壹個C類地址為:192.9.200.13其缺省的子網掩碼為:255.255.255.0則它的網絡號和主機號可按如下方法得到:
  壹將IP地址192.9.200.13轉換為二進制11000000 00001001 11001000 00001101
  二將子網掩碼255.255.255.0轉換為二進制11111111 11111111 11111111 00000000
  ③將兩個二進制數邏輯與(AND)運算後得出的結果即為網絡部分
  11000000 00001001 11001000 00001101 AND 11111111 11111111 11111111 00000000
  11000000 00001001 11001000 00000000結果為192.9.200.0,即網絡號為192.9.200.0。
  四將子網掩碼取反再與IP地址邏輯與(AND)後得到的結果即為主機部分11000000 00001001 11001000 00001101 AND 00000000 00000000 00000000 11111111 結果為00000000 00000000 00000000 00001101轉化為十進制得到0.0.0.13,即主機號為13。
  
子網掩碼的作用

  子網掩碼是32位二進制數,它的子網主機標誤用部分為全“0”。利用子網掩碼可以判斷兩臺主機是否中同壹子網中。若兩臺主機的IP地址分別與它們的子網掩碼相“與”後的結果相同,則說明這兩臺主機在同壹子網中。

文章編號:0 | 向板主反映這篇文章 | 顯示 IP

benshaoxw 已離線! Old Post 04-24-2009 14:27
點選這裡查看 benshaoxw 的個人檔案 點選這裡寄送 Email 給 benshaoxw 按這裡傳送悄悄話給 benshaoxw 按這裡搜尋 benshaoxw 所發表的文章 按這裡將 benshaoxw 加入你的好友名單 回應這篇文章含引言 按這裡編輯或刪除文章

目前使用的時域為(台北時間),現在時間是 13:20 。    發表新的文章     回覆文章
上一篇主題   下一篇主題
友善列印 | 把這一篇寄給好朋友! | 訂閱這個主題

跳至:
評分主題:
 

討論區權限說明:
不可以 發表新文章
不可以 回覆文章
不可以 上傳附加檔案
不可以 修改你發表的文章
HTML code 目前狀態是 關閉
vB code 目前狀態是 開啟
表情符號 目前狀態是 開啟
[IMG] code 目前狀態是 開啟



< 聯絡我們 - 小紅帽全球資訊網 >

中文化:第一版 by Eric 第二版 by Jolin 於 小紅帽全球資訊網
(版權所有,翻拷必究)
小紅帽技術論壇創立於 2000/09/15 ,使用 vBulletin 合法註冊版權