|
|
Internet 中所謂的「IP 位址(IP Address)」,就像現實生活中每戶人家都要擁有唯一的地址一樣,傳送者可以根據 IP 位址進行辨識,將資料傳送到唯一目的地位址完成通訊。世界各地的 IP 位址必須具有一致性,才不會導致辨識上的混亂,故必須依循共同的規範才能達成。 . Z& n: k' k& ~. _6 O
目前我們所使用的 IP 位址為第四版 IP 位址,一般稱為 IPv4 位址。為滿足使用上的需求,又陸陸續續發展 IPv5、IPv6,IPv5 是提供給 Stream Protocol 實驗協定使用,而 IPv6 則是 IPv4 的擴充,為因應位址數量不敷使用的問題,在標頭格式也提供動態欄位設定。 * s7 _2 ^$ B" d$ U, V/ C) k
# S8 Q; S: d. ?" }: l5 m6 h3 _# SIPv4 位址是由 32 位元所組成,一般以 8 位元為單位(octet)將 32 位元分成四部份,彼此間以 "." 做區隔,例如 "100100011.00001110.01001000.00011100",此即為「加點二進位表示法(dotted binary notation)」,由於二進位表示法太長不易記憶,故通常使用十進位來表示,上述的二進位 IP 位址即可表示成 "163.14.75.28",此即為「加點十進位表示法(dotted decimal notation)」。由於每一部份均由 8 位元所組成,故每個十進位值均介於 0 ~ 255 之間。
0 b- T+ _0 Q9 z0 L% \% o1 S! _' s& @& _7 V! ], t' J3 C# d
IP 位址主要分為兩部份:網路位元(Network bits)和主機位元(Host bits)。網路位元主要是用來辨識其 IP 位址是屬於哪一個網路系統;而主機位元則是用來辨識其 IP 位址在其所屬的網路系統中是屬於哪一台電腦主機。
0 V: \1 ~% o o7 }6 N, F( P/ F W K$ i
IP 位址 = 網路位元 + 主機位元 ' z. ?5 r& b: k! x* u1 P- X2 ~
' |& ?8 r+ j% T3 V2 @0 z2 `( _4 t+ I
IPv4 將位址分成 A、B、C、D、E 五類,分別用來表示不同的網路位址種類,各類的位址型態可從左邊固定的位元進行判斷。以下為各類 IP 位址的格式,其中沒有框的位元為固定位元,用以判別位址是屬於哪一類,N 代表網路位元,H 代表主機位元,而 M 和 R 則分別代表 D 類的多點傳送位元(Muticast bits)和 E 類的保留位元(Reserved bits)。類別 A、B、C IP 位址是最常使用的,而類別 D、E IP位址則是提供特殊用途。
" h/ R8 G" e" o1 t2 v0 x* L2 ]. |0 Y0 Z: l
類別 A IP 位址:0NNNNNNN.HHHHHHHH.HHHHHHHH.HHHHHHHH ; h, o. }) o( v* u
類別 B IP 位址:10NNNNNN.NNNNNNNN.HHHHHHHH.HHHHHHHH
. J/ ?3 H% U+ Q) \7 {* ^ 類別 C IP 位址:110NNNNN.NNNNNNNN.NNNNNNNN.HHHHHHHH " m9 j& l* ^! J4 C# N7 X; P
類別 D IP 位址:1110MMMM.MMMMMMMM.MMMMMMMM.MMMMMMMM
; d5 Q# n9 H" j# D5 { 類別 E IP 位址:1111RRRR.RRRRRRRR.RRRRRRRR.RRRRRRRR 2 P+ x$ H/ f) D
) ^1 K+ ?6 x0 R% h2 S6 {- C- o! T
N:網路位元 H:主機位元 M:群播位元 R:保留位元 8 b m* q& }: c
. p V, }. f0 ^$ a+ B3 W& N
在類別 A、B、C(有網路位元和主機位元)IP 位址中,各含有兩個特殊位址不做主機位址使用。一為將 IP 位址中所有主機位元均設為 "0",即為「網域位址(Domain Address)」,用來判斷 IP 位址之所屬網域;另將所有主機位元值均設為 "1",即為「廣播位址(Broadcast Address)」,用來對所屬網域之所有主機進行廣播。以下將分別對各類型的IP位址設定做詳細的說明。 & c7 i. V$ \0 m8 a- k& S2 |
! |9 `+ R9 f6 n: }
% V2 W2 d( ]( @6 G% ^. L1 H
類別 A IP 位址 % J# `, C/ V3 U$ ]- Q, D1 \
\2 T( W6 Y% {! \類別 A IP 位址的最左邊位元固定為 "0",後接 7 個網路位元及 24 個主機位元。由於有 7 個網路位元 "0NNNNNNN",故可提供 2^7 = 128 個網路系統,該位元組的十進位則介於 0 ~ 127 之間,其中 0 和 127 兩個網域做特殊用途使用。
7 f; z! g" Y, G; m6 l7 ]+ @+ N
& B% b3 }' t/ o除了 "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 位址不足的現象。 2 U5 `: E$ ^9 g9 a W
1 }1 W4 G& w* m$ Q2 J: |- r9 ^由上述可知,原本 128 個網路系統,扣掉 0、10、127 三個特殊網域,故實際上可用的網域為 1 ~ 9、11 ~ 126 共 125 個網域。
7 r* v: {' K1 n8 e: Y& \0 X
' {$ f" l/ L* m' x類別 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 個。 5 T# y) b3 @5 t% X5 q
6 k+ F$ Y1 i7 W Y1 q- G( X* q$ Q從上述得知類別 A IP 位址可提供 125 個網域,而各網域可用( 2^24 - 2)個主機位址,故A類位址共可提供約 125 × 16,777,214 = 2,097,151,750 個 IP 位址。類別 A IP 位址已分配給早期參與 Internet 的組織機構使用,所以現在沒有空的類別 A IP 位址以供申請。 - m$ N8 m0 J* S* e: c
' Z' j/ ?0 `* L* S" Z1 B
類別 A IP 位址保留 "127.0.0.1" 用來進行「迴路回測(Loopback Testing)」,主要是透過本身主機將訊息送回本身主機,以檢查主機的 TCP / IP 的設定是否正確,所使用的指令為 "ping 127.0.0.1",若 TCP / IP 設定不完整會出現錯誤訊息。 8 P6 C4 y9 U _) _5 _7 Z$ n6 x
9 C- w/ }1 E9 N9 V5 k& M$ D7 x& C4 e1 c0 m/ F3 t
類別 B IP 位址
. I! a( Z: O; ^, }( Y$ m2 x! t9 }$ n R
類別 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 個網路系統(網域)。 0 A+ O% u: R7 I
5 w. w: s: d2 Y7 D4 ~& o類別 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 位址以供申請。 7 {( [" c. e9 G+ G
, Y" ~* X% D& ~+ A6 L- f* \- X( {- E& w由上述可知,類別 B IP 位址可提供 2^14 個網域,而各網域可用 65,534 個主機位址,故類別 B IP 位址共可提供約 16,376 × 65,534 = 1,073,184,784 個 IP 位址。
: T% V% E/ I7 R
$ z9 F& r1 m8 d' z: {# Y9 P, e: u8 s# t3 c" O% f- u( T
類別 C IP 位址 . G" W9 L" e1 z. j+ B
* t, Y* s$ q7 \, k) j類別 C IP 位址的最左邊三個位元固定為 "110",後接 21 個網路位元及 8 個主機位元。IP 位址左邊第一個網路位元組 "110NNNNN" 可提供 2^5 = 32 個組合,該位元組的十進位值介於 192 ~ 223 之間,而第二、三個網路位元組 "NNNNNNNN" 則分別可提供 2^8 = 256 個組合,十進位值介於 0 ~ 255 之間,此三個網路位元組可提供 2^21 = 2,097,152 個網路系統(網域)。 ( g0 c2 I# n3 x: c1 T
; D$ {0 M! q: R- q7 g' H* K類別 C IP 位址的 8 個主機位元則提供 2^8 = 256 個主機位址,該主機位元組的十進位值介於 0 ~ 255 之間,同樣將所有主機位元設為 "0",十進位表示法 "N.N.N.0" 為網域位址;將所有主機位元設為 "1",十進位表示法 "N.N.N.255" 為廣播位址。故 256 個主機位址扣掉網域位址和廣播位址,實際上可用主機位址有 254 個。
/ U$ O# Q& ?5 x L! G- M1 ]% R$ {6 L; d4 q2 H
另外,類別 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 位址。 ; W/ u' x+ v' I( \4 n2 {3 g
6 a7 m4 n; X& C3 ?# I# Z. u' T# H3 O. j9 ~) K
類別 D IP 位址
2 K' L5 Z, t/ |; c6 s: G! \
5 u$ F! E/ o5 z$ w7 X1 g1 |類別 D IP 位址的最左邊四個位元固定為 "1110",後接 28 個群播設定位元。IP 位址的左邊第一群播位元組 "1110MMMM" 可提供 2^4 個組合,十進位介於 224 ~ 239 之間,其他三個群播位元組則分別提供 2^8 個組合,十進位值介於 0 ~ 255 之間,故類別 D IP 位址共可提供 2^28 = 268,435,456 個群播 IP 位址。多點傳送操作並沒有區分網路位元與主機位元。 & D8 T& h: X: u) P6 e6 x+ }8 G* g0 \$ d
. h3 [) z" R9 ^. e
所謂「多點傳送(Muticasting)」,或稱「群播」,是指一電腦主機可透過「多點傳送路由器(MRouter;Muticasting Router)」同時對多部主機傳送相同的資料。使用單點傳送(1 對 1)將相同資料送到三台主機,需要傳送三次才能完成;而多點傳送(1 對多)只需傳送一次即可,故多點傳送可以降低在網路上的資訊傳送量。欲進行多點傳送的群組必須擁有一個類別 D IP 位址方可彼此連繫。
% m5 v, ~7 P# E0 X$ ^) k) |! S' m' I7 @ C
在類別 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)則是保留給管理用途。 - ~& Q2 i+ k- t3 E" D) b1 @7 @
7 K* v* [& S- Y* g# N
Microsoft 支援類別 D IP 位址,作為應用程式多點傳送資料至 Internet 上可多點傳送的主機。
$ x) Z: t. D( o( H8 t; k, d; H* X5 j/ d$ C
. w3 G; o; K% t/ `類別 E IP 位址
- Y; o$ c+ w9 N+ _, e+ U6 y* M N: @' _3 j0 P) T6 ?6 U
類別 E IP 位址最左邊四個位元固定為 "1111",後接 28 個保留位元。IP 位址的左邊第一個保留位元組 "1111RRRR" 之十進位值介 240 ~ 255 之間,類別 E IP 位址和類別 D IP 位址一樣,沒有網路位元和主機位元,共可提供 2^28 = 268,435,456 個 IP 位址。類別 E IP 位址是保留給實驗網路所使用。 " |7 k/ k2 Y; a, |
. B- o" G. k) J9 D3 N T* T, f
' m: J0 G/ ~: b8 c# N/ i& Y
網路 ID 指南
% l8 |$ W( d7 D# t' K
/ |) i0 P' |. y/ r, J3 L: N3 z0 Y" b網路 ID 識別位於相同實體網路上的 TCP/IP 主機。位在相同實體網路上的所有主機都必須指派相同的網路 ID,和其它主機通訊。指派網路 ID 時,請遵循以下指南:
9 m, w) ?; ` E2 d' H+ o1 ~! O6 j; i1 c
; }! L2 Q1 g( k7 d, Q網路位址必須是 IP internet 中的唯一值。如果您計劃以直接路由連線至公用 Internet,網路 ID 必須是 Internet 上的唯一值。如果您不打算連線至公用 Internet,區域網路 ID 必須是您的私有 internet 上的唯一值。
5 @4 f% D9 E" Z8 I; }5 t o) _4 V- X
網路 ID 不可以數字 127 開頭。類別 A 位址中的數字 127 保留給內部反向迴圈功能使用。 ' f }9 G; q7 _5 r" ?, ~' V- N
3 Z, F) L% j9 m( r
網路 ID 中的所有位元不可設定為 1。網路 ID 中的全部 1 保留作為 IP 廣播位址使用。 . Y" h( d { B7 F- |, {4 N
: U7 G$ @& d+ {+ ]0 j/ B網路 ID 中的所有位元不可設定為 0。網路 ID 中的全部 0 是用來表示區域網路上的指定主機,且不會被尋徑。
) ]1 H5 b+ l3 R8 n8 Y) P- n/ m* ]+ C, z2 K- N& I/ x! u
網路 ID 類別範圍 " `4 r( M* j9 }& W
5 m2 b( w' C- K1 t4 j
位址類別 第一個網路 ID 最後一個網路 ID
$ ]/ }2 |/ i! _ ─────────────────────── , s3 N6 [; C U' z4 Y
類別 A 1.0.0.0 126.0.0.0
& R2 l J" P( [: r6 K 類別 B 128.0.0.0 191.255.0.0 $ a' t: I' w q! M9 `4 f4 r
類別 C 192.0.0.0 223.255.255.0 1 @- [$ H- N, g0 V: b" t. R
: y% |& b. g4 ]; l& ` U
* ~6 o* W+ N5 f3 C7 ~* a
主機 ID 指南 3 Z4 `; r0 a( [4 u& S a% i" I
) T& ~ i6 l. V- C
主機 ID 識別網路中的 TCP/IP 主機。 IP 網路 ID 與 IP 主機 ID 的結合即代表 IP 位址。指派主機 ID 時,請遵循以下指南: ! g* d% g9 X6 X* c$ D8 h ~" R, ]: I
) d9 M( P4 Q0 O1 e0 I" ^. U: g
& P1 w: `# F4 @* b3 |( Q4 S主機 ID 必須是網路 ID 中的唯一值。
% `6 `' ?6 Z1 G4 C* X
. H% r8 }+ B9 |5 D* f0 B* x# N, G) Q主機 ID 中的所有位元不可設定為 1,因為此主機 ID 保留作為廣播位址,傳送封包至網路上的所有主機。
' v; d u$ c! w/ s0 ^8 @, Z+ @ r5 u; W
主機 ID 中的所有位元不可設定為 0,因為此主機 ID 保留用來表示 IP 網路 ID 。 ! t: O9 @4 w" e3 u: ^
4 W/ A) z. w W: b 主機 ID 類別範圍
( e! o' s x$ B4 h) T8 a+ F+ M6 b9 H& R) \2 b: W. Z
位址類別 第一個主機 ID 最後一個主機 ID
_. _5 x; V, \* k; ^. Z5 W L+ ] ────────────────────────
6 R; c, n1 l9 T1 o+ v$ Z 類別 A w.0.0.1 w.255.255.254 ; S5 A$ i9 B, f2 d0 O x" C
類別 B w.x.0.1 w.x.255.254 ; a- Y- R! o- d$ O+ N" [
類別 C w.x.y.1 w.x.y.254
; L1 `* T3 t" g- r4 j; [
7 q2 o4 G1 b4 }) @+ h# \5 d; k* c: o% F* l
虛擬 IP 位址指南
p# V6 |$ l* y( J" y+ [' C3 L/ P/ P: a6 j+ ]
依據RFC1918:Address Allocation for Private Internets(原為RFC1597),有三個區段的 IP 是作為 Private IP 使用: u% }- o, S' B
" @ M' Z+ n/ F& Y; T+ M
位址類別 第一個主機 ID 最後一個主機 ID 2 d( c) D% ?, z# E
──────────────────────── + C x( G. o: g0 n6 x [; h
類別 A 10.0.0.1 10.255.255.254
+ z3 _5 M8 k H% Q 類別 B 172.16.0.1 172.31.255.254 W. L; r$ \% w6 ~0 u
類別 C 192.168.0.1 192.168.255.254
/ _+ x. L! W2 W* n' N( w% e7 {, j* n2 Z; Z$ G5 f3 @
當使用以上的 IP 位址的時候是有所限制的(此部份引自 Albert_Lu):
- m- j+ V* l5 l$ l+ B) n
9 s H( @, l8 ]( I/ H3 G
; \* o3 Z- b9 D- ~9 m虛擬 IP 位址的路由資訊不能對外散播。 6 D1 ? D4 T4 [7 a
4 d7 S1 n+ x9 J使用虛擬 IP 位址作為來源或目的地址的封包,不能透過 Internet 來轉送。 . Z3 R h: z5 s4 R4 S" Z( a
, |! ?6 z* |6 i) R% R0 m
關於虛擬 IP 位址的參考紀錄(如 DNS),只能限於內部網路使用。
4 p- O8 Z8 f2 s1 k$ @, s* O4 S! h9 X% {2 z$ j7 [; v, C. F
由於有以上的限制,當我們使用這些虛擬 IP 位址來設定網路的時候,就無需擔心會和其它也使用相同位址的網路衝突了。
" w+ r! J/ | J0 q |
|