|
|
Internet 中所謂的「IP 位址(IP Address)」,就像現實生活中每戶人家都要擁有唯一的地址一樣,傳送者可以根據 IP 位址進行辨識,將資料傳送到唯一目的地位址完成通訊。世界各地的 IP 位址必須具有一致性,才不會導致辨識上的混亂,故必須依循共同的規範才能達成。
( I( h) A0 L9 }' n" C: Z' A$ P目前我們所使用的 IP 位址為第四版 IP 位址,一般稱為 IPv4 位址。為滿足使用上的需求,又陸陸續續發展 IPv5、IPv6,IPv5 是提供給 Stream Protocol 實驗協定使用,而 IPv6 則是 IPv4 的擴充,為因應位址數量不敷使用的問題,在標頭格式也提供動態欄位設定。
; m0 [8 v7 B, E' Q) ]) w. k# \- y- o7 T- t7 C: ]2 h5 e, t
IPv4 位址是由 32 位元所組成,一般以 8 位元為單位(octet)將 32 位元分成四部份,彼此間以 "." 做區隔,例如 "100100011.00001110.01001000.00011100",此即為「加點二進位表示法(dotted binary notation)」,由於二進位表示法太長不易記憶,故通常使用十進位來表示,上述的二進位 IP 位址即可表示成 "163.14.75.28",此即為「加點十進位表示法(dotted decimal notation)」。由於每一部份均由 8 位元所組成,故每個十進位值均介於 0 ~ 255 之間。 2 J! R, M- `# n' L5 ]/ ~. V
6 K- h5 q7 r: b! V. c9 |$ pIP 位址主要分為兩部份:網路位元(Network bits)和主機位元(Host bits)。網路位元主要是用來辨識其 IP 位址是屬於哪一個網路系統;而主機位元則是用來辨識其 IP 位址在其所屬的網路系統中是屬於哪一台電腦主機。
( M3 g8 V. V+ Q6 l; q6 K' u
: `+ v$ E/ a! K+ `% v) k IP 位址 = 網路位元 + 主機位元 ; g) T' U" g3 s z* K$ X
1 k% P" u" H, z/ E' N$ c' u( z- |$ b$ p
IPv4 將位址分成 A、B、C、D、E 五類,分別用來表示不同的網路位址種類,各類的位址型態可從左邊固定的位元進行判斷。以下為各類 IP 位址的格式,其中沒有框的位元為固定位元,用以判別位址是屬於哪一類,N 代表網路位元,H 代表主機位元,而 M 和 R 則分別代表 D 類的多點傳送位元(Muticast bits)和 E 類的保留位元(Reserved bits)。類別 A、B、C IP 位址是最常使用的,而類別 D、E IP位址則是提供特殊用途。
! L, B# w# }" D' U7 D
6 |1 k- y; f- A$ V4 g' m" h/ V. N 類別 A IP 位址:0NNNNNNN.HHHHHHHH.HHHHHHHH.HHHHHHHH 4 o7 A/ \& r* H B* G+ h; A
類別 B IP 位址:10NNNNNN.NNNNNNNN.HHHHHHHH.HHHHHHHH
4 Z9 H% B4 z) Y0 \6 H 類別 C IP 位址:110NNNNN.NNNNNNNN.NNNNNNNN.HHHHHHHH
/ E0 O& ? O6 ?1 P+ K 類別 D IP 位址:1110MMMM.MMMMMMMM.MMMMMMMM.MMMMMMMM
% C3 v L, Q( q9 Z 類別 E IP 位址:1111RRRR.RRRRRRRR.RRRRRRRR.RRRRRRRR
2 x X( c1 ~. `1 S& P3 t P/ [ L& p3 Q( \2 U5 N
N:網路位元 H:主機位元 M:群播位元 R:保留位元 : e# u9 l- t9 P
3 D1 C2 l" w7 h) I在類別 A、B、C(有網路位元和主機位元)IP 位址中,各含有兩個特殊位址不做主機位址使用。一為將 IP 位址中所有主機位元均設為 "0",即為「網域位址(Domain Address)」,用來判斷 IP 位址之所屬網域;另將所有主機位元值均設為 "1",即為「廣播位址(Broadcast Address)」,用來對所屬網域之所有主機進行廣播。以下將分別對各類型的IP位址設定做詳細的說明。
0 O1 L" c( h7 z9 l% g5 x+ l1 f
4 n1 ]1 J1 {8 o2 i5 T4 o0 y# w7 k
6 h, Y3 h" M7 [2 g$ E1 {類別 A IP 位址 , M8 z9 I+ w: i. ?
# a0 ~7 s5 O2 i2 b$ i類別 A IP 位址的最左邊位元固定為 "0",後接 7 個網路位元及 24 個主機位元。由於有 7 個網路位元 "0NNNNNNN",故可提供 2^7 = 128 個網路系統,該位元組的十進位則介於 0 ~ 127 之間,其中 0 和 127 兩個網域做特殊用途使用。
8 m, J# M/ x$ J, [$ L0 L" J2 U; t) t. {0 T5 M5 N8 E/ F9 X/ N8 K
除了 "0.0.0.0" 和 "127.0.0.0" 兩個網域外,類別 A IP 位址另外保留網域 "10.0.0.0",提供給企業內網路(Intranet)IP 位址設定。由於 Intranet 彼此間獨立的網路架構,故分別使用 "10.0.0.0" 網域並不會互相衝突。若 Intranet 要與外部的 Internet 連繫,必須透過「網路位址轉譯(Network Address Translation,NAT)」路由器提供一個可辨識使用的 IP 位址與外界溝通。由於各個 Intranet 均可提供以 "10.0.0.0" 為網域的所有主機位址,故可改善 IP 位址不足的現象。 / r) J6 A+ s b" H
8 u2 ]1 E" M; ?- f& G9 N4 k由上述可知,原本 128 個網路系統,扣掉 0、10、127 三個特殊網域,故實際上可用的網域為 1 ~ 9、11 ~ 126 共 125 個網域。
- `; H7 r5 _' o( c6 X8 D0 H) x2 [$ k- E9 L
類別 A IP 位址的 24 個主機位元則可提供 2^24 個主機位址,各位元組的十進位值介於 0 ~ 255 之間,其中將所有主機位元設為 "0",用十進位將 IP 位址表示成 "N.0.0.0" 為網域位址;將所有主機位元設為 "1", 用十進位將 IP 位址表示成 "N.255.255.255" 為廣播位址。故個主機位址扣掉網域位址和廣播位址,實際上可用的主機位址為 2^24 -2 = 16,777,214 個。
& B( L5 U q/ D6 U; J8 y, Q* _! _, m; M! i) c
從上述得知類別 A IP 位址可提供 125 個網域,而各網域可用( 2^24 - 2)個主機位址,故A類位址共可提供約 125 × 16,777,214 = 2,097,151,750 個 IP 位址。類別 A IP 位址已分配給早期參與 Internet 的組織機構使用,所以現在沒有空的類別 A IP 位址以供申請。
* G+ }, n+ T7 }% S0 J B9 i9 b9 ?1 V- T& J
類別 A IP 位址保留 "127.0.0.1" 用來進行「迴路回測(Loopback Testing)」,主要是透過本身主機將訊息送回本身主機,以檢查主機的 TCP / IP 的設定是否正確,所使用的指令為 "ping 127.0.0.1",若 TCP / IP 設定不完整會出現錯誤訊息。 ' g5 d$ t1 ?5 q3 Y, l0 M2 L
+ `4 N+ z" s8 p9 x- L$ N' G
9 r6 \/ T! t' V" C" C2 Y) Q
類別 B IP 位址
8 B* V; `2 N" X+ _6 w9 t
! x6 P7 M2 ^ j類別 B IP 位址的最左邊兩個位元固定為 "10",後接 14 個網路位元及 16 個主機位元。IP 位址的左邊第一個網路位元組 "10NNNNNN" 可提供 2^6 個組合,該位元組的十進位值介於 128 ~ 191 之間,而第二個網路位元組 "NNNNNNNN" 則可提供 2^8 個組合,十進位值介於 0 ~ 255 之間﹔另外,類別 B IP 位址保留 "172.16.0.0 ~ 172.31.255.255" 網域作為企業內網路(Intranet)使用。由此二個網路位元組即可提供 2^14 -8 = 16,376 個網路系統(網域)。
& ?% @% f) e0 a0 x! X* O; H# ]. R' N1 C e. H
類別 B IP 位址的 16 個主機位元則可提供 2^16 個主機位址,各位元組的十進位值介於 0 ~ 255 之間,同樣將所有主機位元設為 "0",十進位 IP 位址表示法 "N.N.0.0" 為網域位址;將所有主機位址設為 "1",十進位 IP 位址表示法 "N.N.255.255" 為廣播位址。故個主機位址扣掉網域位址和廣播位址,實際上可用的主機位址有 2^16 - 2 = 65,534 個。類別 B IP 位址也已發送完畢,所以現在沒有空的類別 B IP 位址以供申請。 $ j; X2 W. h9 w! s6 X. x+ k' C
& T* l3 F% D. l$ n由上述可知,類別 B IP 位址可提供 2^14 個網域,而各網域可用 65,534 個主機位址,故類別 B IP 位址共可提供約 16,376 × 65,534 = 1,073,184,784 個 IP 位址。 - ~& q$ L7 g9 c9 e/ g7 ^5 a
6 g: G" Y1 a8 z H! ^3 V9 N1 M
+ H. N: d1 [1 P8 H; ?5 e
類別 C IP 位址
( y8 t2 ^' V7 Q# |7 I6 d
3 {* B ^2 ^2 I$ A) G! V, J類別 C IP 位址的最左邊三個位元固定為 "110",後接 21 個網路位元及 8 個主機位元。IP 位址左邊第一個網路位元組 "110NNNNN" 可提供 2^5 = 32 個組合,該位元組的十進位值介於 192 ~ 223 之間,而第二、三個網路位元組 "NNNNNNNN" 則分別可提供 2^8 = 256 個組合,十進位值介於 0 ~ 255 之間,此三個網路位元組可提供 2^21 = 2,097,152 個網路系統(網域)。
; ]: ?* }* y& h% @8 ~, M7 }4 D% G
類別 C IP 位址的 8 個主機位元則提供 2^8 = 256 個主機位址,該主機位元組的十進位值介於 0 ~ 255 之間,同樣將所有主機位元設為 "0",十進位表示法 "N.N.N.0" 為網域位址;將所有主機位元設為 "1",十進位表示法 "N.N.N.255" 為廣播位址。故 256 個主機位址扣掉網域位址和廣播位址,實際上可用主機位址有 254 個。 ) r# P7 c; i) C4 i
5 `2 M0 Z& u) x4 c1 L6 Q
另外,類別 C IP 位址保留 "192.168.0.0" 網域作為企業內網路(Intranet)使用。由此可知 C 類位址可提供 2,097,152 - 1 = 2,097,151 個網域,而各網域可用 254 個主機位址,故C類位址共可提供約 2,097,151 × 254 = 532,676,354 個 IP 位址。
E! A4 ~+ ]1 \2 B( F- J! z" x( o! N5 s5 k* j2 L2 h3 x' K
) O' m6 m2 d/ b
類別 D IP 位址
( D% x" q" J3 R0 j) E2 m0 C; s/ I2 L6 Q, r( `# K/ X% T8 P/ w5 R3 t
類別 D IP 位址的最左邊四個位元固定為 "1110",後接 28 個群播設定位元。IP 位址的左邊第一群播位元組 "1110MMMM" 可提供 2^4 個組合,十進位介於 224 ~ 239 之間,其他三個群播位元組則分別提供 2^8 個組合,十進位值介於 0 ~ 255 之間,故類別 D IP 位址共可提供 2^28 = 268,435,456 個群播 IP 位址。多點傳送操作並沒有區分網路位元與主機位元。
) W; O+ l9 Y3 W* N* Q" J( I- a. J; |" i5 a: e3 O8 z
所謂「多點傳送(Muticasting)」,或稱「群播」,是指一電腦主機可透過「多點傳送路由器(MRouter;Muticasting Router)」同時對多部主機傳送相同的資料。使用單點傳送(1 對 1)將相同資料送到三台主機,需要傳送三次才能完成;而多點傳送(1 對多)只需傳送一次即可,故多點傳送可以降低在網路上的資訊傳送量。欲進行多點傳送的群組必須擁有一個類別 D IP 位址方可彼此連繫。
" ^1 p1 }# D6 c) @6 F8 K; C- P7 R/ I1 V8 Y7 X$ C& H
在類別 D IP 位址中,224.0.0.0 ~ 224.0.0.255(224.0.0.0/24)是保留給區域子網路(local subnet)之用,其封包不會被路由器傳送出去,不論其 TTL 為何﹔而 IP 位址在 224.0.1.0 ~ 238.255.255.255 是為多點傳送正常使用﹔IP 位址在 239.0.0.0 ~ 239.255.255.255(239.0.0.0/8)則是保留給管理用途。
9 r/ A' Z1 R/ m( o" a, q1 ?* F( `. f+ c' I% U
Microsoft 支援類別 D IP 位址,作為應用程式多點傳送資料至 Internet 上可多點傳送的主機。
- [) M, z- \! B0 w
7 [# g0 Y8 W! E4 J0 b" R1 |6 Y3 f: f4 ?* x* Y! k
類別 E IP 位址
3 @5 n3 P9 E4 u; Y. b j6 u: Q5 h3 z+ L
類別 E IP 位址最左邊四個位元固定為 "1111",後接 28 個保留位元。IP 位址的左邊第一個保留位元組 "1111RRRR" 之十進位值介 240 ~ 255 之間,類別 E IP 位址和類別 D IP 位址一樣,沒有網路位元和主機位元,共可提供 2^28 = 268,435,456 個 IP 位址。類別 E IP 位址是保留給實驗網路所使用。 ; `# `2 K4 H2 `' Y
0 a* h' k2 W! c; `0 ^
4 v) O4 a3 ]$ X6 c. |; c網路 ID 指南 ! R7 @$ P$ x; T* m/ a$ T
5 i$ S5 g* {0 G5 O* ]網路 ID 識別位於相同實體網路上的 TCP/IP 主機。位在相同實體網路上的所有主機都必須指派相同的網路 ID,和其它主機通訊。指派網路 ID 時,請遵循以下指南: 3 B( U) z& r+ B1 c0 ]
% l }& ?- f1 A+ y# b$ \4 o: A+ ]' G* b: d/ J
網路位址必須是 IP internet 中的唯一值。如果您計劃以直接路由連線至公用 Internet,網路 ID 必須是 Internet 上的唯一值。如果您不打算連線至公用 Internet,區域網路 ID 必須是您的私有 internet 上的唯一值。 ; ?/ c( W s* ~4 `! Z- Z' k9 `: O
+ j8 j s, t' f3 V1 C$ n網路 ID 不可以數字 127 開頭。類別 A 位址中的數字 127 保留給內部反向迴圈功能使用。 1 e/ E, f5 e1 L- W$ `# H: q
F( U& s% F6 ?2 Z" i網路 ID 中的所有位元不可設定為 1。網路 ID 中的全部 1 保留作為 IP 廣播位址使用。
% K7 S1 B9 g, }7 W7 z* B5 h" Z- G# B3 M, t' m* u1 J" u+ v0 e7 n. y
網路 ID 中的所有位元不可設定為 0。網路 ID 中的全部 0 是用來表示區域網路上的指定主機,且不會被尋徑。
) |& S4 P$ C" J" B, v4 ^
/ e5 Z2 N3 N3 ^% M5 `1 U$ t: U 網路 ID 類別範圍 & R; t- E! _: W; _- V
2 @/ |) v T. Y/ H4 x! n: p, C5 g
位址類別 第一個網路 ID 最後一個網路 ID 2 d% p) }9 j0 V* B6 l+ Y0 d+ R
─────────────────────── 5 `" t6 N: Q/ @# A. P
類別 A 1.0.0.0 126.0.0.0
; ?* ` [# C8 F) W 類別 B 128.0.0.0 191.255.0.0 , n9 I" p- {: B" x- W
類別 C 192.0.0.0 223.255.255.0
- T: h% {9 @' a! e6 Q' j
# G. ^9 a4 H2 @1 c
+ |4 U( Q0 j2 h9 R) |- e3 l9 _主機 ID 指南
/ G8 z0 g. x1 J; K
) ?0 S8 A3 q5 Y. ?" R: n$ x1 J1 U主機 ID 識別網路中的 TCP/IP 主機。 IP 網路 ID 與 IP 主機 ID 的結合即代表 IP 位址。指派主機 ID 時,請遵循以下指南: 0 U$ j( r; r6 H; u6 b
9 M/ k/ @/ d6 `9 p F' Z+ O# G A
9 Y% J" l. O, F% `% E6 Z4 ]# h主機 ID 必須是網路 ID 中的唯一值。 3 R; {; s9 y- v D! b
& p' w) O8 |+ ~- z
主機 ID 中的所有位元不可設定為 1,因為此主機 ID 保留作為廣播位址,傳送封包至網路上的所有主機。
& K$ v2 Y, s# l& S
# v" V$ T3 O" h主機 ID 中的所有位元不可設定為 0,因為此主機 ID 保留用來表示 IP 網路 ID 。 2 G- ?' j6 V7 f' R2 b, z
: T3 m( E m1 b3 |0 Q+ U W& R) T% I 主機 ID 類別範圍 & F& O1 B' t3 L, d0 i7 E
0 \. ~" p; `4 v( {' D: x 位址類別 第一個主機 ID 最後一個主機 ID
0 u# n1 X7 u( U( f5 g1 ^ ──────────────────────── " F9 ?+ o/ s% @! X$ [1 H
類別 A w.0.0.1 w.255.255.254
6 v2 S) l0 g# N; A 類別 B w.x.0.1 w.x.255.254 9 L g/ i0 l5 X z2 V, ]
類別 C w.x.y.1 w.x.y.254
; i7 _9 i1 Z6 p
* o5 S6 S/ {% f+ }8 Q- w
8 j% ~. i1 s s- O虛擬 IP 位址指南
0 M- ?' q$ ^- e, x" n2 P( ^
- s4 D1 a7 ^& `依據RFC1918:Address Allocation for Private Internets(原為RFC1597),有三個區段的 IP 是作為 Private IP 使用:
- h5 i0 [# Y& }. w$ c5 Y, z0 R
位址類別 第一個主機 ID 最後一個主機 ID
6 P1 W+ v6 _8 U# m6 V; j ────────────────────────
4 l. [/ L( A; c8 G8 o) T% f 類別 A 10.0.0.1 10.255.255.254 ' C5 ?" U' S; [* R( I3 A
類別 B 172.16.0.1 172.31.255.254
# E) h% k. Y* w- | 類別 C 192.168.0.1 192.168.255.254 ; a! J1 d' ?; A6 k& X6 b. m& @1 @. ~
# [. v+ C+ C% d" R/ o* d+ _當使用以上的 IP 位址的時候是有所限制的(此部份引自 Albert_Lu):
' ~: d, I6 P: y" N2 m! \ F* A3 S3 X* u: Y, J" q$ _4 |8 W
8 J: |$ V8 P0 s: Z& p( w" X. F虛擬 IP 位址的路由資訊不能對外散播。
3 m4 }3 G/ o; k1 {
. L* e5 Z) D: Z9 E! l( w! t7 f使用虛擬 IP 位址作為來源或目的地址的封包,不能透過 Internet 來轉送。 7 R. M$ K7 U9 d6 a
5 K9 y7 }0 N/ c關於虛擬 IP 位址的參考紀錄(如 DNS),只能限於內部網路使用。 ( G5 Y' U* S+ S5 V' k. l0 f
; q4 d$ w7 N1 _
由於有以上的限制,當我們使用這些虛擬 IP 位址來設定網路的時候,就無需擔心會和其它也使用相同位址的網路衝突了。 ' F2 T* B: a# }
|
|