IP? Subnet Mask? 傻傻分不清楚...

明天就要考MCTS證照了,而我也在努力把書看完(看不完就爽了Emotions

但是IP(Internet Protocol, 網際網路協定)實在爆難Emotions

我就藉由這篇文章,來複習一下內容吧..

[more]

首先介紹IPv4,IPv4是一組由32-bits(位元)組成的號碼,每個設備單獨發給一組號碼,而其設備支援數量可達4294967296,但要區分世界上那麼多的網路設備,每台機器都只會分到一組獨特的號碼。

另外,為了要讓IP容易被人們閱讀/處理,我們通常把IP用逗點分成4個8位元的號碼(8*4=32),每個8位元號碼又稱為"Octet","Octet"的數字範圍從0~255(8-bits)。

除此之外,還有所謂的"廣播網區"、"子網路"、"子網路遮罩"。

廣播網區最重要的功能就是讓設備不須透過直接使用MAC位置互相溝通,這聽起來很方便,而且在小區域網路中很好用,不過他沒辦法穿透多重子網域,而且廣播在連線時會發送ARP封包確認連線途徑,這會讓網路承擔極大的負荷,你可以想像一下,四周都有一大堆人大聲喊叫尋找他們的同伴,你不會被吵死嗎?而且聲音互相蓋來蓋去,傳達資訊的效率很差,更何況你是在有N台電腦的網際網路?

*按: 學校電腦教室就是用這種方式共享檔案[ \\{電腦名} ←這是直接用電腦的NetBIOS名稱連線 ],所以在打開目標電腦的時候會很慢。

 

再來是介紹子網路,子網路就是子網路阿(無誤)Emotions,每個子網路都有個網段ID和廣播ID,他們分別是網段的第一個和最後一個IP位置,而且其IP位置不能被任何設備占用。

例如: 我有個網段192.168.1.10~192.168.1.200,其中網段ID就是192.168.1.10、廣播ID是192.168.1.200、設備可用IP範圍192.168.1.11~192.168.1.199

 

最後就是子網路遮罩,他用來細分網段,也因此是IP中最重要的一部分。

他的規則法大致像下圖

從圖片中紅色的字可以發現子網路遮罩其實很規則,而黃色的欄位則表示Class A,B,C的預設遮罩

子網路遮罩的功用就是"遮住"IP,舉例來說,用255.255.255.0當作遮罩,用二進位表示就會像下列一樣:

11111111  11111111  11111111  00000000

1就是遮掉,0就是保留

他把前面三組Octet的IP遮掉,剩下的機器數就會是最後一個1,也就是二進位的100000000,換算成十進位就是256,也就是256台機器

當我們想要再進一步分割,只要將1從左邊填入就可以了,舉例來說,我要把支援256台機器的範圍改成8台,就再填入5個1,用二進位表示如下:

11111111  11111111  11111111  11111000

剩下三個0,二進位1000,所以是8台機器,而子網路遮罩就變成255.255.255.248,248來自二進位的11111000

至於要增加網段範圍,只要把0從右邊加上去就行了,例如,我要把256台機器擴充為1024台機器,用二進位表示如下:

11111111  11111111  11111100  00000000

機器數是所有的0左邊加1,也就是二進位10000000000,等於十進位的1024,而子網路遮罩變成255.255.252.0

 

那要如何從一個IP和子網路遮罩得知整個網段的範圍呢?方法很簡單,只要有小算盤就搞定了Emotions

假設我有一個IP是10.241.168.19,子網路遮罩是255.255.192.0,而網段ID(起始點)就是10.241.128.0

操作方法就是打開小算盤,切換到"程式設計師"模式,輸入168,按"AND"鍵,再輸入192,接著按Enter,答案就出來了。

為什麼會這樣?其實我也不知道Emotions

不過"AND"在數學上是一種邏輯運算,他表示不同東西的"交集"

因此,把IP和子網路遮罩寫成二進位後,上下對齊後,兩者的交集便是答案了

範例

好啦,大概都說完了,IPv6我還沒學會,所以就不寫了Emotions

留言

  1. 今天要考呀~加油呀~~
    早上電腦又不明原因掛掉..
    連進bios都給我當機..
    (汗顏

  2. add oil and god bless.. ^__^

    • @j
      每間分公司內部的網段大小就看有多少設備決定
      分公司之間的直連網段只能佔用兩個IP,意思就是/31

  3. Subnet mask 就好像 我們我街名 和屋號
    如你寄信 會 寫 如 : 中華路 3 號

    中華路 和 3號 中間是分開的 來分別 路名 屋號
    而 IP address 都一樣 要分 network ID 和 Host ID

    如 192.168.0.1 是class C 的IP , 而Class C IP 是用了頭24 bit 即 192.168.0 是路名 ! 而最後8 bit 是街名 ! 這樣會易明白嗎?

    手機打字 排版不好 見諒!

    • @henry
      這樣說也是合理
      用"里"來說也不錯,比較有block的感覺

粗體斜體刪除線連結引用圖片程式碼

注意:您的電子信箱將不會被公開,且網站連結不會被搜尋引擎採計