ADVERTISEMENT
希望經過上篇的連續燃燒彈轟炸之後,各位讀者還有力氣接續看完這篇文章。如果讀者上篇沒有把整篇看懂,至少要知道最基礎的網路4層架構,從上層數下來就是應用層、傳輸層、網路層、鏈結層,從下往上數也要背得滾瓜爛熟,不僅有助理解本次內容,對於未來自行架設網路也相當有幫助。
說到自行架設家庭網路,就不能不談到IP,IP活在網路架構第2層,是現今網路的主要架構。如果讀者已有自行裝設家用路由器的經驗,或曾經接觸過192.168.0.1這類的數字,就應該對IP概念略知一二;但筆者相信絕大多數人對於IP還是懵懵懂懂的狀態,曾架設過家庭網路的讀者也可能只知道將IP位址設定在192.168.0.x就會通了,知其然不知其所以然,並不了解為什麼設定這種IP就會通。
IPv4的位址
在此我們就跳過IP版本發展的歷史,直接進入目前世界上使用最廣泛的第四版IP;IPv4定義IP使用32個連續的0或是1來定址,而大家經常把32 bit分組,以1組8 bit轉換為10進位標示。例如00000001 00000010 00000100 00001000經常轉換成1.2.4.8這種表示法,所以說32 bit的IP位址,共有0.0.0.0∼255.255.255.255這麼多的位址可以使用,為2^32個,可分配給約43億個網路設備相互連接,但實際上因為繞送或是其它特殊的保留位置,實際可用的位址約42億個,消失的位址稍後會詳細說明。除此之外1.2.4.8和001.002.004.008這2個指的都是同樣的位址,只不過在實務上會將0省略不寫。
只要裝置想連上網路,每個網路介面都需要1個網路IP位置,如果你的電腦中裝設2張網路介面卡,則2張介面卡均要取得IP為止才能正常運作;同理可證,如果筆電同時擁有無線和有線網路,同樣各需取得IP才能上網。
▲IPv4位址的不同表示法,圖片表示的位址都是對等的
IP位址的組成
為了管理方便,使用上常將32 bit的IP再度拆分,由前方的「網路位址」加上後方的「主機位址」共同組成,此外IPv4更將位址分成5個等級,如以下圖片所示。
▲Class A∼E 5種不同的IP位址等級
Class A∼C的分法比較常見,Class D、E做為特殊保留用途,之後再詳加說明。大家應該會發現,在圖片中的寫法分別出現了0、1、n、x不同的寫法,而這是有其含意的。
Class A∼C有規定其開頭位元數值,Class A為02、Class B為102、Class C為1102,所以只要看到IP位址開頭為0.x.x.x∼127.x.x.x,都是屬於Class A的位址。Class B的位址則是因為10開頭,所以位址128.0.x.x∼191.255.x.x都是Class B的管轄範圍;那Class C呢?就請各位讀者自行算算看了。
各個等級的網路,旗下能夠劃分幾個網路系統也有所規定,Class A網路除了第一個位元須以0開頭之外,其後7個位元就是網路的位址(圖中n的部分),之後的24個位元就是主機位址。也就是說,Class A能夠擁有128個網路系統,而每個網路系統能夠擁有16777216個位址(圖中x的部分)。Class B則是規定以10開頭,其後14個位元為網路位址,最後16個位元為主機位址,可提供16384個網路,每個網路擁有65536個位址。
至於Class C的網路則是以110開頭,後接21個位元網路位址,再接8個位元主機位址,可提供2097152個網路系統,每個網路系統256個位址。
101010^2
在一連串的數值之後,緊接著「下標的數字」,其意義為表示這串數值使用何種進位算法,例如2進位(2)、8進位(8)、16進位(16)。為避免內文雜亂,本文只在少部分數值加入此種寫法。
保留的IP位址
本文開頭時有說到,部分IP位址會保留做為其它用途,實際上無法分配給主機使用。其中有2種IP位址不可分配給主機使用,分別為主機位址全為0、或是全為1的狀況。
第一種情形,就是主機位址不可全部為0,例如1.0.0.0(Class A)或是192.168.0.0(Class C)這種狀況,這種位址原本是用來設計將資料封包丟給網路下所有的主機,但現今大多用於識別IP位址所屬網域,所以這種位址不可分配。
第二種情形就是主機位置全部為1的狀況,例如1.255.255.255(Class A)或是192.168.0.255(Class C),此種IP位址指的是「把資料送給此網路下的所有主機」。如果今天某主機送出的資料封包目的地為192.168.0.255,路由器就會把這份資料封包送給192.168.0.1∼192.168.0.254當中所有的電腦。我們把192.168.0.255這個IP位址稱作「廣播位置」,如同里長伯使用擴音喇叭公告事項般,任何想傳送到這個位址上的資料,都會被送到網路中每一台主機。
請注意!留言要自負法律責任,相關案例層出不窮,請慎重發文!