|
|
Internet 中所謂的「IP 位址(IP Address)」,就像現實生活中每戶人家都要擁有唯一的地址一樣,傳送者可以根據 IP 位址進行辨識,將資料傳送到唯一目的地位址完成通訊。世界各地的 IP 位址必須具有一致性,才不會導致辨識上的混亂,故必須依循共同的規範才能達成。
1 `: i. ]- Q0 }5 P目前我們所使用的 IP 位址為第四版 IP 位址,一般稱為 IPv4 位址。為滿足使用上的需求,又陸陸續續發展 IPv5、IPv6,IPv5 是提供給 Stream Protocol 實驗協定使用,而 IPv6 則是 IPv4 的擴充,為因應位址數量不敷使用的問題,在標頭格式也提供動態欄位設定。
( n9 @. T, Q6 P3 G+ O: I) }$ N
IPv4 位址是由 32 位元所組成,一般以 8 位元為單位(octet)將 32 位元分成四部份,彼此間以 "." 做區隔,例如 "100100011.00001110.01001000.00011100",此即為「加點二進位表示法(dotted binary notation)」,由於二進位表示法太長不易記憶,故通常使用十進位來表示,上述的二進位 IP 位址即可表示成 "163.14.75.28",此即為「加點十進位表示法(dotted decimal notation)」。由於每一部份均由 8 位元所組成,故每個十進位值均介於 0 ~ 255 之間。
- I- h9 b8 [4 ?2 K1 h- D. f" e! i0 q8 [1 p' R s* U" v8 G
IP 位址主要分為兩部份:網路位元(Network bits)和主機位元(Host bits)。網路位元主要是用來辨識其 IP 位址是屬於哪一個網路系統;而主機位元則是用來辨識其 IP 位址在其所屬的網路系統中是屬於哪一台電腦主機。
0 y' d: j# A$ y, B6 }. @5 y! c1 E1 \' `
IP 位址 = 網路位元 + 主機位元
/ H* E+ \) l/ F' u$ {9 M P
. R/ \! Y4 w+ CIPv4 將位址分成 A、B、C、D、E 五類,分別用來表示不同的網路位址種類,各類的位址型態可從左邊固定的位元進行判斷。以下為各類 IP 位址的格式,其中沒有框的位元為固定位元,用以判別位址是屬於哪一類,N 代表網路位元,H 代表主機位元,而 M 和 R 則分別代表 D 類的多點傳送位元(Muticast bits)和 E 類的保留位元(Reserved bits)。類別 A、B、C IP 位址是最常使用的,而類別 D、E IP位址則是提供特殊用途。
4 \. [/ U, Q0 i/ P" q
" u w K% b* d) _& R7 p+ f 類別 A IP 位址:0NNNNNNN.HHHHHHHH.HHHHHHHH.HHHHHHHH
4 K! Y0 Y' K" y! G+ | 類別 B IP 位址:10NNNNNN.NNNNNNNN.HHHHHHHH.HHHHHHHH
& E: C H8 H3 F) x9 H; T+ k3 V 類別 C IP 位址:110NNNNN.NNNNNNNN.NNNNNNNN.HHHHHHHH
& q' I% z6 d5 j 類別 D IP 位址:1110MMMM.MMMMMMMM.MMMMMMMM.MMMMMMMM
7 n3 z9 o9 Q6 A" \+ I$ Y 類別 E IP 位址:1111RRRR.RRRRRRRR.RRRRRRRR.RRRRRRRR
}4 O, `3 M2 D( a: _
7 Y: z! y5 I0 T- U N:網路位元 H:主機位元 M:群播位元 R:保留位元
5 A0 L$ P/ i0 q: j( i, F9 p8 ~. g0 e8 w! L" y
在類別 A、B、C(有網路位元和主機位元)IP 位址中,各含有兩個特殊位址不做主機位址使用。一為將 IP 位址中所有主機位元均設為 "0",即為「網域位址(Domain Address)」,用來判斷 IP 位址之所屬網域;另將所有主機位元值均設為 "1",即為「廣播位址(Broadcast Address)」,用來對所屬網域之所有主機進行廣播。以下將分別對各類型的IP位址設定做詳細的說明。
$ s4 s9 [) f' P! s
c- N% ?5 y; A) p' r0 Q( T5 Z m! d$ c% O* N; ^& G
類別 A IP 位址 9 h/ w' ?; [0 c0 v
+ o5 T5 d* i9 k* w
類別 A IP 位址的最左邊位元固定為 "0",後接 7 個網路位元及 24 個主機位元。由於有 7 個網路位元 "0NNNNNNN",故可提供 2^7 = 128 個網路系統,該位元組的十進位則介於 0 ~ 127 之間,其中 0 和 127 兩個網域做特殊用途使用。 - j$ \ K0 ], I0 c5 x" Q8 o
2 m1 O0 b5 g6 \$ G f( A除了 "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 位址不足的現象。 8 I, e$ S8 e, h3 e( V% G: i) V+ z
" t5 y4 f: S* z7 x9 N
由上述可知,原本 128 個網路系統,扣掉 0、10、127 三個特殊網域,故實際上可用的網域為 1 ~ 9、11 ~ 126 共 125 個網域。
& ?- g0 u8 O2 L4 z' y# X) e$ w2 T7 J: A4 i
類別 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 個。
9 T* u# Y+ U9 T4 s
& v: N% ~; P4 M& q- W從上述得知類別 A IP 位址可提供 125 個網域,而各網域可用( 2^24 - 2)個主機位址,故A類位址共可提供約 125 × 16,777,214 = 2,097,151,750 個 IP 位址。類別 A IP 位址已分配給早期參與 Internet 的組織機構使用,所以現在沒有空的類別 A IP 位址以供申請。 7 p6 D6 ?# L; q1 i* c
0 S! F0 ^5 I9 n% C7 U( K類別 A IP 位址保留 "127.0.0.1" 用來進行「迴路回測(Loopback Testing)」,主要是透過本身主機將訊息送回本身主機,以檢查主機的 TCP / IP 的設定是否正確,所使用的指令為 "ping 127.0.0.1",若 TCP / IP 設定不完整會出現錯誤訊息。 6 Y" a5 U0 F* F/ Z m/ w
$ G5 M# y7 [: f9 Q
+ R) p2 H5 B H7 I' {4 R9 C, e類別 B IP 位址
# o! {" ?5 r- x0 m3 ?% \% h
' }( ]8 e8 T% e3 X+ @3 m類別 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 個網路系統(網域)。 % S1 C, H! W4 {& T9 m8 d( \6 G
?* a% r1 b. W2 b7 F* s' R
類別 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 位址以供申請。 & P$ g; O# B# E& r3 o9 ^
: @6 W6 Q u: O: D) x1 T
由上述可知,類別 B IP 位址可提供 2^14 個網域,而各網域可用 65,534 個主機位址,故類別 B IP 位址共可提供約 16,376 × 65,534 = 1,073,184,784 個 IP 位址。 , W/ e& r) d9 _: o0 e
' l! T4 J0 c9 M+ s5 X, ^9 {# g
$ V1 U* R( v/ s, B3 ^類別 C IP 位址
) l" O6 ]/ O1 I5 i- m- f( H0 q# c8 u: o6 H% Y$ S
類別 C IP 位址的最左邊三個位元固定為 "110",後接 21 個網路位元及 8 個主機位元。IP 位址左邊第一個網路位元組 "110NNNNN" 可提供 2^5 = 32 個組合,該位元組的十進位值介於 192 ~ 223 之間,而第二、三個網路位元組 "NNNNNNNN" 則分別可提供 2^8 = 256 個組合,十進位值介於 0 ~ 255 之間,此三個網路位元組可提供 2^21 = 2,097,152 個網路系統(網域)。 ! ^. b8 y+ w8 \$ N$ n
- |0 Y7 r( t/ t; H- p類別 C IP 位址的 8 個主機位元則提供 2^8 = 256 個主機位址,該主機位元組的十進位值介於 0 ~ 255 之間,同樣將所有主機位元設為 "0",十進位表示法 "N.N.N.0" 為網域位址;將所有主機位元設為 "1",十進位表示法 "N.N.N.255" 為廣播位址。故 256 個主機位址扣掉網域位址和廣播位址,實際上可用主機位址有 254 個。
% j$ ]& |' j# x. e0 _0 X
, Z4 R! q9 {; [4 y另外,類別 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 位址。
% T/ V" L' m; j3 y+ ~6 x: m t8 o0 U
+ ?" F0 w! ^/ [. |0 p7 P% k! B7 P( n% a, e
類別 D IP 位址 % L9 \4 h, `1 d
1 o2 w( I! X; O2 E1 t: m7 r類別 D IP 位址的最左邊四個位元固定為 "1110",後接 28 個群播設定位元。IP 位址的左邊第一群播位元組 "1110MMMM" 可提供 2^4 個組合,十進位介於 224 ~ 239 之間,其他三個群播位元組則分別提供 2^8 個組合,十進位值介於 0 ~ 255 之間,故類別 D IP 位址共可提供 2^28 = 268,435,456 個群播 IP 位址。多點傳送操作並沒有區分網路位元與主機位元。
( b" ^! {8 Z+ ^9 T& o8 u, V& T' N( p, Z- p8 l- R6 f+ S0 K
所謂「多點傳送(Muticasting)」,或稱「群播」,是指一電腦主機可透過「多點傳送路由器(MRouter;Muticasting Router)」同時對多部主機傳送相同的資料。使用單點傳送(1 對 1)將相同資料送到三台主機,需要傳送三次才能完成;而多點傳送(1 對多)只需傳送一次即可,故多點傳送可以降低在網路上的資訊傳送量。欲進行多點傳送的群組必須擁有一個類別 D IP 位址方可彼此連繫。
% _* S$ Y" r) Z8 h/ C! f7 J% y7 Y
在類別 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)則是保留給管理用途。 2 C0 W" M6 V7 O& k& I3 l7 N3 d7 d
* g: a* r$ [) |( ^& i+ H
Microsoft 支援類別 D IP 位址,作為應用程式多點傳送資料至 Internet 上可多點傳送的主機。 & q, H$ @% `7 l8 x+ M
( k; Y0 |9 W# M8 L4 q a7 T! O- M* ]( q V' r) _' E# @6 t7 x+ l
類別 E IP 位址
, k; u- ^3 X- T4 J. a$ I( G8 r& Z. D( M; a" _
類別 E IP 位址最左邊四個位元固定為 "1111",後接 28 個保留位元。IP 位址的左邊第一個保留位元組 "1111RRRR" 之十進位值介 240 ~ 255 之間,類別 E IP 位址和類別 D IP 位址一樣,沒有網路位元和主機位元,共可提供 2^28 = 268,435,456 個 IP 位址。類別 E IP 位址是保留給實驗網路所使用。 m: z8 k4 ^5 T7 f0 T# o4 y- R
4 \# S( l4 d# n5 I
- K8 J$ z5 s; T網路 ID 指南
' G! [& W3 P% p, Y5 J& Y6 j; }9 r+ o; ~4 W* }8 T
網路 ID 識別位於相同實體網路上的 TCP/IP 主機。位在相同實體網路上的所有主機都必須指派相同的網路 ID,和其它主機通訊。指派網路 ID 時,請遵循以下指南:
# x/ S5 q& d4 d- G% z+ h" q; _6 S0 n, |. |. K
& G% H6 ]$ P7 _$ m1 q
網路位址必須是 IP internet 中的唯一值。如果您計劃以直接路由連線至公用 Internet,網路 ID 必須是 Internet 上的唯一值。如果您不打算連線至公用 Internet,區域網路 ID 必須是您的私有 internet 上的唯一值。 9 _) T. `5 p' N$ F( h6 T
9 n$ W" I% e" C \* o
網路 ID 不可以數字 127 開頭。類別 A 位址中的數字 127 保留給內部反向迴圈功能使用。
2 z- _4 m3 V6 }' |7 q- U4 W3 e" V' ?, q, d) m* Q8 h
網路 ID 中的所有位元不可設定為 1。網路 ID 中的全部 1 保留作為 IP 廣播位址使用。 A% h6 M; ]! X( d
/ i8 u9 s4 {, x網路 ID 中的所有位元不可設定為 0。網路 ID 中的全部 0 是用來表示區域網路上的指定主機,且不會被尋徑。
) j: [: z8 t! T2 G) D/ F' c- O1 K
網路 ID 類別範圍
# n; \- S* d8 S' V& i6 b4 i1 h" P2 t. U0 y, {
位址類別 第一個網路 ID 最後一個網路 ID # N& S7 H# h1 p( D
─────────────────────── : o0 n5 h0 ?9 x# o4 w7 V+ u
類別 A 1.0.0.0 126.0.0.0 2 `5 O2 u$ }' O* Z% l/ Y
類別 B 128.0.0.0 191.255.0.0
# D, K/ H6 L# t/ f# q 類別 C 192.0.0.0 223.255.255.0 ( H: Z' S' O0 S. [6 w* L0 I
- ~% X5 ]3 n+ F7 W. w. L8 f6 |5 s
# D% i9 v0 Q. `% m- h. E) Z' s7 O. A p主機 ID 指南
6 |3 T& ]) k, ?9 z; q
; g. c1 L; t2 K$ V主機 ID 識別網路中的 TCP/IP 主機。 IP 網路 ID 與 IP 主機 ID 的結合即代表 IP 位址。指派主機 ID 時,請遵循以下指南:
1 }. D' l" a' E1 H r+ x* E6 O2 s' J# B5 M7 ^" J
( s3 v) A5 x- h+ ?0 o
主機 ID 必須是網路 ID 中的唯一值。 ?3 C& z& C' p; m7 L k: A
* {8 e' {# ~1 E2 s4 H! _8 T主機 ID 中的所有位元不可設定為 1,因為此主機 ID 保留作為廣播位址,傳送封包至網路上的所有主機。 - _$ Y% P5 V! {' m3 Z; ?
) Y$ M6 S% x9 J( M主機 ID 中的所有位元不可設定為 0,因為此主機 ID 保留用來表示 IP 網路 ID 。 ; j3 _, o. _- P2 K4 u# B ~
& r$ g) c1 E& P6 w 主機 ID 類別範圍 & r% H$ O4 r2 [% x1 x9 a1 B' Y4 k
6 s5 F5 R3 O. R( F# L% F 位址類別 第一個主機 ID 最後一個主機 ID - h" B K) E% j! t0 ~* b
──────────────────────── $ a- w7 f" y0 B6 q1 M7 O9 p) }1 V
類別 A w.0.0.1 w.255.255.254
* J" f" k! r: D2 ?7 V7 }2 m' D 類別 B w.x.0.1 w.x.255.254
4 J/ h# Z2 K5 w) Z. g9 }" ?9 G 類別 C w.x.y.1 w.x.y.254
6 }4 r! K0 m) e& z9 W
; R. X! S% H3 |0 X( x5 z+ t, H i' k/ ^4 y6 G
虛擬 IP 位址指南 , t, t$ w4 J. D1 V
* w0 F, T! K0 f& A- `2 d依據RFC1918:Address Allocation for Private Internets(原為RFC1597),有三個區段的 IP 是作為 Private IP 使用:
. l- a" A, G! H0 ~! s/ ^4 [8 Y
$ j; d3 t9 |6 I5 ?' p 位址類別 第一個主機 ID 最後一個主機 ID 8 x# n$ e8 Y v4 f" w
──────────────────────── # T- M7 t: M1 C4 G' |
類別 A 10.0.0.1 10.255.255.254
( f0 b6 ?* w# Z- E* D 類別 B 172.16.0.1 172.31.255.254 . ~9 M* g3 R( t- ]' Q
類別 C 192.168.0.1 192.168.255.254
* Y8 P8 ?& w8 ]9 |% m$ ^$ M8 Y6 r, i; I. R8 T- Y9 b
當使用以上的 IP 位址的時候是有所限制的(此部份引自 Albert_Lu):
' X% n2 h' C$ y: G) Y5 F3 B' u! S( r Y) }' }6 q
* S* E9 Q% L" h* v% ^虛擬 IP 位址的路由資訊不能對外散播。 7 s; n! w3 V0 o5 P: c5 g+ ]
( D+ a$ W) f% a: x; O0 ?使用虛擬 IP 位址作為來源或目的地址的封包,不能透過 Internet 來轉送。
* }4 O# g8 o' Q0 ? c9 G" p5 a
/ X* C; i8 E6 j1 p% g' d2 m關於虛擬 IP 位址的參考紀錄(如 DNS),只能限於內部網路使用。
, g; r5 u( V1 A0 w9 M$ ^% u6 f9 y; S: k! U" ~4 e
由於有以上的限制,當我們使用這些虛擬 IP 位址來設定網路的時候,就無需擔心會和其它也使用相同位址的網路衝突了。 ' C) @8 w! w4 a* N: I# q/ J
|
|