|
|
Internet 中所謂的「IP 位址(IP Address)」,就像現實生活中每戶人家都要擁有唯一的地址一樣,傳送者可以根據 IP 位址進行辨識,將資料傳送到唯一目的地位址完成通訊。世界各地的 IP 位址必須具有一致性,才不會導致辨識上的混亂,故必須依循共同的規範才能達成。 7 o0 b" Z* c" J f5 p8 Q1 p% C2 K
目前我們所使用的 IP 位址為第四版 IP 位址,一般稱為 IPv4 位址。為滿足使用上的需求,又陸陸續續發展 IPv5、IPv6,IPv5 是提供給 Stream Protocol 實驗協定使用,而 IPv6 則是 IPv4 的擴充,為因應位址數量不敷使用的問題,在標頭格式也提供動態欄位設定。
# n$ G4 {3 v5 `& U5 I4 V0 l5 r6 k/ i/ p" I
IPv4 位址是由 32 位元所組成,一般以 8 位元為單位(octet)將 32 位元分成四部份,彼此間以 "." 做區隔,例如 "100100011.00001110.01001000.00011100",此即為「加點二進位表示法(dotted binary notation)」,由於二進位表示法太長不易記憶,故通常使用十進位來表示,上述的二進位 IP 位址即可表示成 "163.14.75.28",此即為「加點十進位表示法(dotted decimal notation)」。由於每一部份均由 8 位元所組成,故每個十進位值均介於 0 ~ 255 之間。
, ^! c3 `7 |$ z! R: t! ^; J: ^
, }8 r! W P8 n' d( aIP 位址主要分為兩部份:網路位元(Network bits)和主機位元(Host bits)。網路位元主要是用來辨識其 IP 位址是屬於哪一個網路系統;而主機位元則是用來辨識其 IP 位址在其所屬的網路系統中是屬於哪一台電腦主機。
* y6 L1 i. h5 m5 S) \2 t
$ ]% S. a" W! T9 Y3 y) H IP 位址 = 網路位元 + 主機位元 0 @2 v& T1 `6 r3 Y
6 j/ n7 B5 C! ^! B- r* ]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 b$ w, p; z, \' J7 C! X* w8 \9 y8 O2 J5 ~- B) D
類別 A IP 位址:0NNNNNNN.HHHHHHHH.HHHHHHHH.HHHHHHHH
& d) s0 a5 r, U6 b2 e3 H% U 類別 B IP 位址:10NNNNNN.NNNNNNNN.HHHHHHHH.HHHHHHHH " W+ O# F7 j* @2 D/ b/ ]
類別 C IP 位址:110NNNNN.NNNNNNNN.NNNNNNNN.HHHHHHHH , v+ _0 K7 K; i) m
類別 D IP 位址:1110MMMM.MMMMMMMM.MMMMMMMM.MMMMMMMM 9 O/ R, V5 ]6 p6 T# c7 x% b6 L( b
類別 E IP 位址:1111RRRR.RRRRRRRR.RRRRRRRR.RRRRRRRR ! j& K" u. y( [* f
+ u& W9 }4 ?$ e$ Y0 ~+ v N:網路位元 H:主機位元 M:群播位元 R:保留位元 7 B) D% n' {+ M p0 |
$ d( J$ O$ B* R2 z) O+ a' a- E+ t在類別 A、B、C(有網路位元和主機位元)IP 位址中,各含有兩個特殊位址不做主機位址使用。一為將 IP 位址中所有主機位元均設為 "0",即為「網域位址(Domain Address)」,用來判斷 IP 位址之所屬網域;另將所有主機位元值均設為 "1",即為「廣播位址(Broadcast Address)」,用來對所屬網域之所有主機進行廣播。以下將分別對各類型的IP位址設定做詳細的說明。
. ]' {' H9 R: k2 c! p
- X% E: J; D- q' ?* s8 N5 v1 e0 i$ w
類別 A IP 位址 4 @% L( A$ k3 p1 E3 q
- e0 n! s: z$ p0 v5 q* p; v類別 A IP 位址的最左邊位元固定為 "0",後接 7 個網路位元及 24 個主機位元。由於有 7 個網路位元 "0NNNNNNN",故可提供 2^7 = 128 個網路系統,該位元組的十進位則介於 0 ~ 127 之間,其中 0 和 127 兩個網域做特殊用途使用。
) D$ z: ]* i0 X; D. G, G) @5 `( Y% N( y" x# b0 _ G
除了 "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 位址不足的現象。
/ E; U' j D ] ^% n& L7 X' u
0 }7 n2 V. z- T A由上述可知,原本 128 個網路系統,扣掉 0、10、127 三個特殊網域,故實際上可用的網域為 1 ~ 9、11 ~ 126 共 125 個網域。 ( w Y+ ], O6 o' P5 I7 f3 {
: r; Q9 C" S* t) B2 t
類別 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 個。 0 L# p: e0 j. A9 P: M
+ ~2 j/ \% W* W/ P6 X! Q
從上述得知類別 A IP 位址可提供 125 個網域,而各網域可用( 2^24 - 2)個主機位址,故A類位址共可提供約 125 × 16,777,214 = 2,097,151,750 個 IP 位址。類別 A IP 位址已分配給早期參與 Internet 的組織機構使用,所以現在沒有空的類別 A IP 位址以供申請。 - H5 C% _3 i3 m) [: m" w9 w
& I1 F+ d% B t- G1 g5 U類別 A IP 位址保留 "127.0.0.1" 用來進行「迴路回測(Loopback Testing)」,主要是透過本身主機將訊息送回本身主機,以檢查主機的 TCP / IP 的設定是否正確,所使用的指令為 "ping 127.0.0.1",若 TCP / IP 設定不完整會出現錯誤訊息。
! l0 R2 Q' I' W4 p9 f5 W6 `, k* q$ K4 P: u6 j- c
+ }) J' O6 s9 W0 a( G9 T3 B
類別 B IP 位址
# b/ |* J+ ^2 z9 y. h& u* X6 k. x! u( g$ 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 個網路系統(網域)。 3 X3 T7 | u; O$ {
3 \7 h4 p0 j: K類別 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 位址以供申請。
" g* y1 U1 d) Z. e+ |: e3 _3 r# T$ S5 k. q% r$ f3 w' e
由上述可知,類別 B IP 位址可提供 2^14 個網域,而各網域可用 65,534 個主機位址,故類別 B IP 位址共可提供約 16,376 × 65,534 = 1,073,184,784 個 IP 位址。 $ J' @5 l1 b' K: T1 C- }
$ U8 w: `. ~: f2 g" H" j" L/ D+ l1 f, k3 Y4 p# R$ d
類別 C IP 位址 & j) A( @. I) y0 ?
; _6 L% U' U' I" I* V( R& V9 l類別 C IP 位址的最左邊三個位元固定為 "110",後接 21 個網路位元及 8 個主機位元。IP 位址左邊第一個網路位元組 "110NNNNN" 可提供 2^5 = 32 個組合,該位元組的十進位值介於 192 ~ 223 之間,而第二、三個網路位元組 "NNNNNNNN" 則分別可提供 2^8 = 256 個組合,十進位值介於 0 ~ 255 之間,此三個網路位元組可提供 2^21 = 2,097,152 個網路系統(網域)。
0 L) T3 @8 N4 F/ ?5 d- D
% [5 V/ Z9 q% B% C類別 C IP 位址的 8 個主機位元則提供 2^8 = 256 個主機位址,該主機位元組的十進位值介於 0 ~ 255 之間,同樣將所有主機位元設為 "0",十進位表示法 "N.N.N.0" 為網域位址;將所有主機位元設為 "1",十進位表示法 "N.N.N.255" 為廣播位址。故 256 個主機位址扣掉網域位址和廣播位址,實際上可用主機位址有 254 個。
0 o; P. }' t0 }9 v; ]
% B7 [! t" E9 p5 E L0 t另外,類別 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 ~$ X! {, w1 Q* q( D' ^' \+ V- B# ` O& M- E) @+ B
' k0 I- v2 i4 e5 d, J類別 D IP 位址
( i9 [( P! f, X7 r& D( Y' T5 J5 X4 w( }* h) y4 r7 q& i ~, Y* L% T
類別 D IP 位址的最左邊四個位元固定為 "1110",後接 28 個群播設定位元。IP 位址的左邊第一群播位元組 "1110MMMM" 可提供 2^4 個組合,十進位介於 224 ~ 239 之間,其他三個群播位元組則分別提供 2^8 個組合,十進位值介於 0 ~ 255 之間,故類別 D IP 位址共可提供 2^28 = 268,435,456 個群播 IP 位址。多點傳送操作並沒有區分網路位元與主機位元。 0 |4 K' k9 x l# \: k; r! |
) y# S+ c% ^) X0 M3 s8 L" v; q
所謂「多點傳送(Muticasting)」,或稱「群播」,是指一電腦主機可透過「多點傳送路由器(MRouter;Muticasting Router)」同時對多部主機傳送相同的資料。使用單點傳送(1 對 1)將相同資料送到三台主機,需要傳送三次才能完成;而多點傳送(1 對多)只需傳送一次即可,故多點傳送可以降低在網路上的資訊傳送量。欲進行多點傳送的群組必須擁有一個類別 D IP 位址方可彼此連繫。 * w' K' i) P* A/ z+ z
' K+ H7 Q& m& Q
在類別 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)則是保留給管理用途。 ( t4 M) L# L9 n6 S w# ^
& W. k6 I: K5 _& V, e+ K2 E
Microsoft 支援類別 D IP 位址,作為應用程式多點傳送資料至 Internet 上可多點傳送的主機。 ( @1 v% E& A0 \9 \. ~/ n
. ^. s$ m; y8 x$ @7 f
5 C, Q9 c6 d9 ], B" F8 s' Y! k8 Y
類別 E IP 位址 ; Q: |9 f2 E6 P! X$ d
% Q' l2 i# M2 Q
類別 E IP 位址最左邊四個位元固定為 "1111",後接 28 個保留位元。IP 位址的左邊第一個保留位元組 "1111RRRR" 之十進位值介 240 ~ 255 之間,類別 E IP 位址和類別 D IP 位址一樣,沒有網路位元和主機位元,共可提供 2^28 = 268,435,456 個 IP 位址。類別 E IP 位址是保留給實驗網路所使用。 / k: i2 f$ M! M. d0 W4 `1 B6 |
; X6 r1 Z* `# ^9 p/ m" j- N6 `8 D8 i
網路 ID 指南 7 d7 m0 r t1 k( P/ ^
7 I( X3 ~& n9 r; |# \( q+ L( b
網路 ID 識別位於相同實體網路上的 TCP/IP 主機。位在相同實體網路上的所有主機都必須指派相同的網路 ID,和其它主機通訊。指派網路 ID 時,請遵循以下指南:
; S- L. ~- n( U& o
1 x& D8 z2 A- s% v8 V
" |; H/ c/ r5 { w: T1 ?% q6 o網路位址必須是 IP internet 中的唯一值。如果您計劃以直接路由連線至公用 Internet,網路 ID 必須是 Internet 上的唯一值。如果您不打算連線至公用 Internet,區域網路 ID 必須是您的私有 internet 上的唯一值。
; E0 \6 u$ d- q- |9 N8 Z; E0 v3 o" x% ]
網路 ID 不可以數字 127 開頭。類別 A 位址中的數字 127 保留給內部反向迴圈功能使用。
# `$ h" s' K9 f+ z" {: G& u- g7 P9 T2 C! D6 T" a8 w3 P
網路 ID 中的所有位元不可設定為 1。網路 ID 中的全部 1 保留作為 IP 廣播位址使用。 + _" ?0 x7 V$ d) P& b$ m
0 f# Z8 @4 S, b網路 ID 中的所有位元不可設定為 0。網路 ID 中的全部 0 是用來表示區域網路上的指定主機,且不會被尋徑。 9 d3 i8 X% o: [. M2 W4 b% c
9 T6 L r& z. V! H 網路 ID 類別範圍 ! f+ X- }! ~$ G* N
1 V a/ e g4 X2 X) r 位址類別 第一個網路 ID 最後一個網路 ID
" G1 J* h( |# Y6 p- h0 g' X' Q ───────────────────────
5 v# x$ I+ k! _ 類別 A 1.0.0.0 126.0.0.0 ]8 M- s( Q1 l
類別 B 128.0.0.0 191.255.0.0 1 x: [) r/ `- U
類別 C 192.0.0.0 223.255.255.0
4 m* z$ N% f3 K1 _7 h$ g4 B) J7 Q8 _ J: K/ E: \7 P% L) J
/ {8 U1 `$ k3 V7 l2 R( d主機 ID 指南
5 x( v5 b. `, {5 _% ^$ y# @3 b; T6 C2 [1 g& f! U* j" I
主機 ID 識別網路中的 TCP/IP 主機。 IP 網路 ID 與 IP 主機 ID 的結合即代表 IP 位址。指派主機 ID 時,請遵循以下指南: 1 L8 Z( |3 }0 b, N w( O
3 t* R+ T4 O ~8 R( O; n: L; q
! [1 W* ]6 U4 t2 o' y主機 ID 必須是網路 ID 中的唯一值。 3 W- O) [9 `+ C5 C9 e& z2 t& m
0 x. R! C5 ]9 `1 ^4 w z c8 g
主機 ID 中的所有位元不可設定為 1,因為此主機 ID 保留作為廣播位址,傳送封包至網路上的所有主機。
2 I- K! x0 ]3 v3 `" v9 ]5 x) T- E4 y0 G* w' F8 @
主機 ID 中的所有位元不可設定為 0,因為此主機 ID 保留用來表示 IP 網路 ID 。
1 \1 Z5 s' W. c* f7 C, D1 N: d! Z. h H! W2 F- R, M
主機 ID 類別範圍 " E" X# R/ P% L: U! o; _
- q. g) z: C) s' l: R 位址類別 第一個主機 ID 最後一個主機 ID
7 }. {9 B8 A3 Z+ I9 v# h3 R d' i ────────────────────────
* o7 y8 Y( _2 o1 d( R 類別 A w.0.0.1 w.255.255.254 " M3 ]! {/ R2 I7 r; Q/ R: b
類別 B w.x.0.1 w.x.255.254 ; [* \& C/ ]( o3 D* Q5 m
類別 C w.x.y.1 w.x.y.254 ! z4 j4 O. [/ _# w; ^
4 Z& O- P6 ], `: e: r+ X( `& q
2 ^2 w' O. K9 ]( i& \虛擬 IP 位址指南 . M& I |8 h% w, }* o& D
! {3 m$ p! v+ f& t
依據RFC1918:Address Allocation for Private Internets(原為RFC1597),有三個區段的 IP 是作為 Private IP 使用: $ t7 Z* m1 {- u
) n; J# g8 t2 X 位址類別 第一個主機 ID 最後一個主機 ID ' j2 s) w* d! w
────────────────────────
) D6 n3 ?$ U7 C6 s! Z- P, P7 P5 ~ 類別 A 10.0.0.1 10.255.255.254 u/ g8 q; V6 A0 J
類別 B 172.16.0.1 172.31.255.254 * A: U# o. X1 X* e
類別 C 192.168.0.1 192.168.255.254 - i2 h) k, w" m% x3 ]7 s
2 X, F, i$ N6 }" P7 s) M" L* q當使用以上的 IP 位址的時候是有所限制的(此部份引自 Albert_Lu):
, m: |4 P$ l) S& Y A6 r2 H. `8 l- w) T; z/ |" t8 K* l" o
$ G8 T" D- d5 p4 D1 i0 y! j: Y虛擬 IP 位址的路由資訊不能對外散播。
/ T& ^1 y% t3 M& p$ ^$ i k
4 W1 O/ x' q" a: n3 ^1 b6 Y使用虛擬 IP 位址作為來源或目的地址的封包,不能透過 Internet 來轉送。 4 n- ]$ T5 y$ g% D2 u
0 G7 k- j4 L% r7 T
關於虛擬 IP 位址的參考紀錄(如 DNS),只能限於內部網路使用。 $ h2 w+ I3 j' ~& I+ ]
3 P" k K8 g3 f
由於有以上的限制,當我們使用這些虛擬 IP 位址來設定網路的時候,就無需擔心會和其它也使用相同位址的網路衝突了。 # i9 K- f3 ]( n6 \
|
|