Ads 468x60px

##EasyReadMore##

07 2月, 2018

IP概念、分級與子網路遮罩

無類別域間路由(CIDR)表示法,它給出的是一個位址加上一個斜槓以及網路遮罩的二進位表示法中「1」的位數(即網路號中和網路遮罩相關的是哪些位)。例如,192.0.2.96/28表示的是一個前28位元被用作網路號的IP位址

子網路 - 維基百科,自由的百科全書 - https://goo.gl/NYHkzq

網路位址與等級

現今 Internet 網路中,主機與主機間的聯繫大都以 TCP/IP 協定進行溝通。而在 TCP/IP 網路環境裡,每一台已連線的電腦主機均有其特定唯一的位址,稱之為 IP Address;目前全世界所使用的 IP Address 規格為 Ipv4 (將來可能改為 Ipv6,共 16 個位元組長),每一個 IP 位址由四個位元組 (32-bits) 的二進位表示,但為了方便,可將之分為四個區段,每一段由 8-bits 組成,以下就是一般所看到的 IP 位址表示法 (十進位):192.168.1.1。

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億個

IP位址的組成
為了管理方便,使用上常將32 bit的IP再度拆分,由前方的「網路位址」加上後方的「主機位址」共同組成,此外IPv4更將位址分成5個等級,如以下圖片所示。

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 A

在Class  A之中,有4個網域無法使用,分別為0.0.0.0/8、10.0.0.0/8、100.64.0.0/10、127.0.0.0/8。0.0.0.0/8是個特殊的網路區段,這個位址表示所有、任何、預設的意思。如果在路由表的來源IP為只填入0.0.0.0,代表的就是無論資料封包從哪裡過來,一律套用此路由規則。

127.0.0.0/8,保留做為網路主機的內部迴圈之用,任何發送到127.0.0.1的資料封包,都將原封不動的傳回發送主機上,可用以偵測網路環境是否架設妥當。

10.0.0.0/8網路區段做為內部網路私有IP使用,這個範圍的IP不可在網際網路上使用,如果任何獲得此IP的主機,想要和網際網路上的電腦相互通訊時,則必須通過網路位址轉換(NAT、network address translation)機制,將私有IP轉換為合法的網際網路IP。由於10.0.0.0/8的私有IP不會在網際網路上出現,就可以在不同的網路下重複使用而不相互影響。
 

Class B

Class B將172.16.0.0/12切為內部網路私有I P之用,另外一方面,169.254.0.0/16這個網路範圍也座落在Class B之內,當新加入的電腦主機無法藉由DHCP(dynamic host configuration protocol)獲取相對應的IP設定時,會拿此範圍的IP自動套用。所以扣除以上部分之後,Class B網路可提供16367(16384-16-1)個網路,每個網路可提供65534(65536-2)個主機位址。

 

Class C

在Class  C中,被保留的位址範圍稍微多了一點,分別有192.0.0.0/24、192.0.2.0/24、192.88.99.0/24、192.168.0.0/16、198.18.0.0/15、198.51.100.0/24、203.0.113.0/24。
 
192.0.0.0/24特別保留給IETF(Internet  engineering  task  force)組織使用,其中192.0.0.0/29範圍給DS-Lite(一種IPv4/IPv6的轉換技術)使用。192.88.99.0/24給IPv6轉IPv4中繼使用、198.18.0.0/15則保留做為網路測試之用,192.0.2.0/24、198.51.100.0/24、203.0.113.0/24則是分別做為教學測試之用。以上除了192.88.99.0/24可在公用網際網路出現之外,其餘的位址皆不可在網際網路上流通,Class A和Class B的保留位址也是如此。

Class C的可用位址東扣西扣下來,只剩下206379(2097152-1-1-1-256-512-1-1)個網路可使用(不包含IPv6 to IPv4 relay位址),每個網路可提供254(256-2)個主機位址。

Class D、E

在最初的位址分類上,Class  D和Class  E就不是用來分配網路或主機的位址,而是拿來當作「用途」的IP位址,Class  D被用作多點傳播(Multicast),而Class E目前未被指配為特定用途,還處於保留未知狀態。

絕大多數網路上的訊息傳遞,都是單點傳播(Unicast),在資料封包內填入來源位址與目的位址,相關資料只在2點之間傳遞。假設今天某A主機想要傳送1份相同的檔案(演唱會實況、里長廣播、網路電台、視訊會議、老師的螢幕廣播⋯⋯)給其它數台電腦,便需要將此份檔案複製成許多份傳送,如圖所示。

不過既然這些資料為「一式多份」,為何不要在到達目的地時再進行複製工作,這樣不就可以減少部分的網路流量負荷嗎?沒錯!多點傳播就是在做這些事情,Class D位址保留做為多點傳播用途,每個不同的位址有其自身所代表的群體或意義。

子網路切割


一旦我們有了「網路和主機位址不必佔據固定的位元數量」的觀念後,我們就可以來任意切割網路區段。假設現在分配到192.168.0.0∼192.168.0.255的位址,我們可以將它直接劃作1個網路,若網路位址為前方24個位元,可塞入254台主機;或者是分割成2個網路,網路位址為前方25個位元,各可塞入126台主機。而在網路中,該如何確定網路位址的長度,就要靠子網路遮罩的設定了。

要進行子網路切割,將IP位址全部轉換為0或1比較容易理解,例如255.255.255.0的子網路遮罩,轉換為2進位制就是11111111  11111111 11111111 00000000。再利用子網路遮罩將和目前主機的IP做運算,便可得出目前的網路位址為何,最大可容納多少的主機數量。

以192.168.0.1位址和子網路遮罩255.255.255.0做為例子,轉換為2進位後便是11000000  10101000  00000000  00000001和11111111  11111111 11111111  00000000,將兩者進行布林運算AND之後,會得到11000000 10101000  00000000  00000000,轉換回十進位為192.168.0.0,所以192.168.0.0就是192.168.0.1的網路位置。

由此範例可知,子網路遮罩位元數為1的部分,就是對應到IP位址的網路部分;反過來說,可利用子網路遮罩控制IP位址中網路位元占用的多寡,控制子網路的大小(網路位元占得越多,主機位元就更少,單一網路可容納的主機數也越小)。藉由規則反推,Class A的子網路遮罩就是255.0.0.0、Class B為255.255.0.0、Class C就是255.255.255.0。

子網路遮罩位元為0的部分就是主機位址,掐頭去尾的去掉網路位址和廣播位址之後,192.168.0.0/24就有254個主機位址可供分配。


根據 RFC-1618 文件的制定,在 A、B、C 三個等級的網路中,特別保留一些特定的 IP 網域給私人虛擬網路使用,包括如下:


另外,每一個網路的第一個位址與最後一個位址各代表網路本身與廣播位址,任一 C 級網路例如:192.1.1.0其實只有 254 個位址可供個別主機用,因為 192.1.1.0 代表整個網路,而 192.1.1.255 則是廣播位址。同理,任一B級網路其實只有 65534 個主機位址,而非 65536 個。

網路架構大概論3-IP概念、分級與子網路遮罩 - 第 2 頁 | T客邦 - 我只推薦好東西 - https://goo.gl/7Fa1x4

0 意見:

張貼留言

 
Blogger Templates