|
|
Internet 中所謂的「IP 位址(IP Address)」,就像現實生活中每戶人家都要擁有唯一的地址一樣,傳送者可以根據 IP 位址進行辨識,將資料傳送到唯一目的地位址完成通訊。世界各地的 IP 位址必須具有一致性,才不會導致辨識上的混亂,故必須依循共同的規範才能達成。
( J. \, m! K, t; d目前我們所使用的 IP 位址為第四版 IP 位址,一般稱為 IPv4 位址。為滿足使用上的需求,又陸陸續續發展 IPv5、IPv6,IPv5 是提供給 Stream Protocol 實驗協定使用,而 IPv6 則是 IPv4 的擴充,為因應位址數量不敷使用的問題,在標頭格式也提供動態欄位設定。
1 a, u. z/ t; M- c, D' z4 R. w7 E3 t0 O. T" S# h1 w
IPv4 位址是由 32 位元所組成,一般以 8 位元為單位(octet)將 32 位元分成四部份,彼此間以 "." 做區隔,例如 "100100011.00001110.01001000.00011100",此即為「加點二進位表示法(dotted binary notation)」,由於二進位表示法太長不易記憶,故通常使用十進位來表示,上述的二進位 IP 位址即可表示成 "163.14.75.28",此即為「加點十進位表示法(dotted decimal notation)」。由於每一部份均由 8 位元所組成,故每個十進位值均介於 0 ~ 255 之間。 , f* {, U4 w% E
' u( k9 [3 m9 C7 [; K( fIP 位址主要分為兩部份:網路位元(Network bits)和主機位元(Host bits)。網路位元主要是用來辨識其 IP 位址是屬於哪一個網路系統;而主機位元則是用來辨識其 IP 位址在其所屬的網路系統中是屬於哪一台電腦主機。 ' Q; g3 g- T: Z9 {
& r4 s5 J0 A4 e' n2 ^3 o
IP 位址 = 網路位元 + 主機位元 - j: {9 Q' d q. x
9 f d$ U5 [+ i$ E( u: V
IPv4 將位址分成 A、B、C、D、E 五類,分別用來表示不同的網路位址種類,各類的位址型態可從左邊固定的位元進行判斷。以下為各類 IP 位址的格式,其中沒有框的位元為固定位元,用以判別位址是屬於哪一類,N 代表網路位元,H 代表主機位元,而 M 和 R 則分別代表 D 類的多點傳送位元(Muticast bits)和 E 類的保留位元(Reserved bits)。類別 A、B、C IP 位址是最常使用的,而類別 D、E IP位址則是提供特殊用途。
1 r, Y! N, x3 G5 ]4 t" B
+ l7 d, [: a' a1 n' n' I$ X4 t 類別 A IP 位址:0NNNNNNN.HHHHHHHH.HHHHHHHH.HHHHHHHH & t$ i: R4 z0 p5 w! N+ b# e
類別 B IP 位址:10NNNNNN.NNNNNNNN.HHHHHHHH.HHHHHHHH
0 d; h+ R1 C6 I& i+ B 類別 C IP 位址:110NNNNN.NNNNNNNN.NNNNNNNN.HHHHHHHH
& O! v. p0 [3 x# M( Z0 w 類別 D IP 位址:1110MMMM.MMMMMMMM.MMMMMMMM.MMMMMMMM ) N+ Q4 i; f; u3 K# m) i
類別 E IP 位址:1111RRRR.RRRRRRRR.RRRRRRRR.RRRRRRRR ! \, g& X% C: `
8 F0 Y3 w- `# w3 P$ x" x5 k. I* \* g
N:網路位元 H:主機位元 M:群播位元 R:保留位元
' n$ d+ {$ b# P Q. p) ]& C/ O2 b6 f& |
在類別 A、B、C(有網路位元和主機位元)IP 位址中,各含有兩個特殊位址不做主機位址使用。一為將 IP 位址中所有主機位元均設為 "0",即為「網域位址(Domain Address)」,用來判斷 IP 位址之所屬網域;另將所有主機位元值均設為 "1",即為「廣播位址(Broadcast Address)」,用來對所屬網域之所有主機進行廣播。以下將分別對各類型的IP位址設定做詳細的說明。 7 C+ s: t- s6 M2 O5 ]4 ~3 [
: [2 N! t* b7 Z" `" ]
5 H& Q! F& [5 E% A- N類別 A IP 位址
" i# _( p* s4 I& @6 D7 [. |+ [' J- g* x
類別 A IP 位址的最左邊位元固定為 "0",後接 7 個網路位元及 24 個主機位元。由於有 7 個網路位元 "0NNNNNNN",故可提供 2^7 = 128 個網路系統,該位元組的十進位則介於 0 ~ 127 之間,其中 0 和 127 兩個網域做特殊用途使用。
: }' o' t% F; h- X X, u6 t* l" I+ ^6 T' ^
除了 "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 位址不足的現象。
j, S% z3 t/ f, d g6 R# u% n& E Z+ p* h. [
由上述可知,原本 128 個網路系統,扣掉 0、10、127 三個特殊網域,故實際上可用的網域為 1 ~ 9、11 ~ 126 共 125 個網域。
' D) \, ~4 J, }! i' T) r2 E$ F
8 @# u* O( a3 [; [; m5 ^1 N類別 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 個。
& I# ~! j3 L V- S4 K: E. v3 L5 z* [, V; S0 ~
從上述得知類別 A IP 位址可提供 125 個網域,而各網域可用( 2^24 - 2)個主機位址,故A類位址共可提供約 125 × 16,777,214 = 2,097,151,750 個 IP 位址。類別 A IP 位址已分配給早期參與 Internet 的組織機構使用,所以現在沒有空的類別 A IP 位址以供申請。 , ?1 y" ?2 ?& |6 g; ^) ?7 C" }: o
3 i8 F. J* j% w% ]/ @
類別 A IP 位址保留 "127.0.0.1" 用來進行「迴路回測(Loopback Testing)」,主要是透過本身主機將訊息送回本身主機,以檢查主機的 TCP / IP 的設定是否正確,所使用的指令為 "ping 127.0.0.1",若 TCP / IP 設定不完整會出現錯誤訊息。
' l9 e: ]/ |1 Z- U: \& i6 w! z5 O' i& g
+ u. t/ V( ^) G: w. a2 ?% m
類別 B IP 位址
0 Q" n, j! M# [+ i& ?5 ?$ b- o1 u0 P4 v, \1 k+ r/ x5 I
類別 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 個網路系統(網域)。 7 o I6 i6 a5 h3 q" o# n" J3 n
3 |, \5 d/ l' [ i類別 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 位址以供申請。 + t/ {4 n# [- B9 S7 X" j R
^7 I/ H" @1 x' o由上述可知,類別 B IP 位址可提供 2^14 個網域,而各網域可用 65,534 個主機位址,故類別 B IP 位址共可提供約 16,376 × 65,534 = 1,073,184,784 個 IP 位址。 6 p2 W1 K+ s% u& Y. M! W" U
) `0 K# p+ ?9 P3 B3 D
& E t% A( ^" L' I# _% ?/ o# k' p類別 C IP 位址 + {4 c, u2 ?0 b- N1 }/ E: a3 y5 ^! J
4 e. G6 h4 t4 N$ |! K類別 C IP 位址的最左邊三個位元固定為 "110",後接 21 個網路位元及 8 個主機位元。IP 位址左邊第一個網路位元組 "110NNNNN" 可提供 2^5 = 32 個組合,該位元組的十進位值介於 192 ~ 223 之間,而第二、三個網路位元組 "NNNNNNNN" 則分別可提供 2^8 = 256 個組合,十進位值介於 0 ~ 255 之間,此三個網路位元組可提供 2^21 = 2,097,152 個網路系統(網域)。
. b. {1 ^8 T% ]8 \, a, I0 V4 w8 ?7 L- ~; v n0 H* p
類別 C IP 位址的 8 個主機位元則提供 2^8 = 256 個主機位址,該主機位元組的十進位值介於 0 ~ 255 之間,同樣將所有主機位元設為 "0",十進位表示法 "N.N.N.0" 為網域位址;將所有主機位元設為 "1",十進位表示法 "N.N.N.255" 為廣播位址。故 256 個主機位址扣掉網域位址和廣播位址,實際上可用主機位址有 254 個。 8 K; J$ a# h9 R, B
7 x" Z( F. H; u7 U+ `另外,類別 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 位址。 0 \0 [6 R& i0 S. O" }
" ^8 s# g5 \& _3 m
) q6 T6 `; ?6 t" F. F5 h, h- u* L' E2 z類別 D IP 位址 " m, g1 M' @9 t- z9 Q8 t6 R
% k; I; T; ?& n# `
類別 D IP 位址的最左邊四個位元固定為 "1110",後接 28 個群播設定位元。IP 位址的左邊第一群播位元組 "1110MMMM" 可提供 2^4 個組合,十進位介於 224 ~ 239 之間,其他三個群播位元組則分別提供 2^8 個組合,十進位值介於 0 ~ 255 之間,故類別 D IP 位址共可提供 2^28 = 268,435,456 個群播 IP 位址。多點傳送操作並沒有區分網路位元與主機位元。 6 q, e" I! \1 L
! }( @3 C0 ~3 n所謂「多點傳送(Muticasting)」,或稱「群播」,是指一電腦主機可透過「多點傳送路由器(MRouter;Muticasting Router)」同時對多部主機傳送相同的資料。使用單點傳送(1 對 1)將相同資料送到三台主機,需要傳送三次才能完成;而多點傳送(1 對多)只需傳送一次即可,故多點傳送可以降低在網路上的資訊傳送量。欲進行多點傳送的群組必須擁有一個類別 D IP 位址方可彼此連繫。
# n' k/ m/ r, J) n
2 \/ g: x0 H$ l5 u+ {在類別 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)則是保留給管理用途。 * T( K. Q+ Z9 U
) r9 {( ~5 ?- ^) OMicrosoft 支援類別 D IP 位址,作為應用程式多點傳送資料至 Internet 上可多點傳送的主機。
0 c& G$ X2 e1 H5 ?8 I, v3 z
* z" f! Y) i7 N( k( \; X }' f _, e* l% _! V
類別 E IP 位址
% x; B t; O, C8 b0 I0 E, b- h0 H: V, i; z M! B+ {: c
類別 E IP 位址最左邊四個位元固定為 "1111",後接 28 個保留位元。IP 位址的左邊第一個保留位元組 "1111RRRR" 之十進位值介 240 ~ 255 之間,類別 E IP 位址和類別 D IP 位址一樣,沒有網路位元和主機位元,共可提供 2^28 = 268,435,456 個 IP 位址。類別 E IP 位址是保留給實驗網路所使用。 8 B" J, U7 r6 k
7 e5 t* j8 W- F/ Y6 x5 j3 B `9 [7 b) U- a/ V
網路 ID 指南
* }+ ?! `7 o3 e" h4 u. Q
3 p& p, V# f5 V' @9 c. B" e網路 ID 識別位於相同實體網路上的 TCP/IP 主機。位在相同實體網路上的所有主機都必須指派相同的網路 ID,和其它主機通訊。指派網路 ID 時,請遵循以下指南: ) G% D, g' Z: n' v6 ~! P
$ K8 r( o4 f$ M, V9 T2 L; o( s
0 u' E' S, x3 i* Z. }, e+ _3 I9 t網路位址必須是 IP internet 中的唯一值。如果您計劃以直接路由連線至公用 Internet,網路 ID 必須是 Internet 上的唯一值。如果您不打算連線至公用 Internet,區域網路 ID 必須是您的私有 internet 上的唯一值。 ' ?$ B( E5 X5 F4 {2 @/ c& V
9 `3 O. a4 f" F3 e$ h: @網路 ID 不可以數字 127 開頭。類別 A 位址中的數字 127 保留給內部反向迴圈功能使用。 ! i8 |& g% L E( L
, u" w' f, ]$ c1 g* P9 L3 |
網路 ID 中的所有位元不可設定為 1。網路 ID 中的全部 1 保留作為 IP 廣播位址使用。 7 R1 k2 P' t0 t- @/ W2 u
/ x5 P# y8 y: p2 C* }4 O# s/ ~
網路 ID 中的所有位元不可設定為 0。網路 ID 中的全部 0 是用來表示區域網路上的指定主機,且不會被尋徑。
2 Z* S3 ~* l+ a& t& P0 Q$ k- e0 [& K+ j
網路 ID 類別範圍
! ?% h; {* ?3 G6 q7 ]! I$ m* e, d1 T/ f1 d7 z
位址類別 第一個網路 ID 最後一個網路 ID
% g/ {/ S: g6 K. C, H' }2 k |( s ─────────────────────── 9 W, l! R1 s9 m3 b1 H" l }1 t
類別 A 1.0.0.0 126.0.0.0
8 ?; B; I2 y7 L- e4 X3 _8 r 類別 B 128.0.0.0 191.255.0.0 6 |4 }. { ^% p. ^ R. F. H" W, }
類別 C 192.0.0.0 223.255.255.0 ! \8 q1 }# M$ U" p$ v) \; D
( c; B+ v7 L K8 ?& s
+ a0 l: Q: g1 a. H3 p S- W主機 ID 指南
1 p6 c- h8 b/ M
; j% S( U1 P9 G* ~( B3 s主機 ID 識別網路中的 TCP/IP 主機。 IP 網路 ID 與 IP 主機 ID 的結合即代表 IP 位址。指派主機 ID 時,請遵循以下指南: ' ]8 L/ ~5 {' H8 `
8 A4 Q# W8 Z+ Y' c/ _" n
# Z+ I8 X! w; H8 U9 y: W! X3 ?+ r主機 ID 必須是網路 ID 中的唯一值。 : c* F+ g \- h: N! N
. p% U# c! V; O: T; D3 E
主機 ID 中的所有位元不可設定為 1,因為此主機 ID 保留作為廣播位址,傳送封包至網路上的所有主機。 & v7 K# j2 m* x
. I7 J9 [+ _4 G& @* O" Q主機 ID 中的所有位元不可設定為 0,因為此主機 ID 保留用來表示 IP 網路 ID 。
$ y/ S' X( l6 V9 e& }- L5 ~' z I/ Y; k9 g! d
主機 ID 類別範圍
/ ?2 o( m5 k& x' D( v
/ [/ g( {8 n) J0 Q6 O& B 位址類別 第一個主機 ID 最後一個主機 ID # b9 E8 X9 x$ i! Q
──────────────────────── 5 n ^( ^, C1 B* I4 k9 l: ?
類別 A w.0.0.1 w.255.255.254
i- n& k9 |2 ]+ ]3 Z: j 類別 B w.x.0.1 w.x.255.254
4 X8 F% S Y: ~0 {9 T* U; J 類別 C w.x.y.1 w.x.y.254 : X7 _: _) E, R% V8 U- o
. u% _* q6 z2 Z2 d' u- @: T# A
& G3 p* N; y% O( a: `: x' d
虛擬 IP 位址指南
- l9 q5 z# i8 W" I
; S+ ]% W( g, O+ [" ^依據RFC1918:Address Allocation for Private Internets(原為RFC1597),有三個區段的 IP 是作為 Private IP 使用: 4 H$ s5 m9 H( M7 }" y9 L
3 A r/ L E& Y) M! _2 H% y
位址類別 第一個主機 ID 最後一個主機 ID
, `, }' ^% e I- f& _5 i! t ────────────────────────
8 L( s% U, Q- E! @2 E 類別 A 10.0.0.1 10.255.255.254
9 Q1 N/ y' `, h1 T* d$ ?7 Y; \ 類別 B 172.16.0.1 172.31.255.254
1 |1 }9 p9 H. R 類別 C 192.168.0.1 192.168.255.254
, F% A/ J# h g( ?$ c
! @: `$ Q3 c/ U% X, A2 h* N當使用以上的 IP 位址的時候是有所限制的(此部份引自 Albert_Lu):
: S6 o3 s2 Q2 t5 i$ i, [8 S3 Q; N: N# E: U) [! _& U# [0 B8 f* h8 p
1 s; ^' y" j& _2 z1 R5 u( J' a
虛擬 IP 位址的路由資訊不能對外散播。 ! B/ {0 K7 V8 r ^+ i+ z
2 V* d+ k* s9 L1 o- V使用虛擬 IP 位址作為來源或目的地址的封包,不能透過 Internet 來轉送。
+ M7 j% k. k2 H" K0 d! C& W1 {" l' V7 E1 n8 f* v
關於虛擬 IP 位址的參考紀錄(如 DNS),只能限於內部網路使用。
# N6 `3 e/ m/ w4 C6 k7 v0 m+ [3 ]9 E1 r. V
由於有以上的限制,當我們使用這些虛擬 IP 位址來設定網路的時候,就無需擔心會和其它也使用相同位址的網路衝突了。 |
|