|
|
Internet 中所謂的「IP 位址(IP Address)」,就像現實生活中每戶人家都要擁有唯一的地址一樣,傳送者可以根據 IP 位址進行辨識,將資料傳送到唯一目的地位址完成通訊。世界各地的 IP 位址必須具有一致性,才不會導致辨識上的混亂,故必須依循共同的規範才能達成。
& }2 P) Z) X4 Z% P$ Y2 \% \目前我們所使用的 IP 位址為第四版 IP 位址,一般稱為 IPv4 位址。為滿足使用上的需求,又陸陸續續發展 IPv5、IPv6,IPv5 是提供給 Stream Protocol 實驗協定使用,而 IPv6 則是 IPv4 的擴充,為因應位址數量不敷使用的問題,在標頭格式也提供動態欄位設定。
0 ?% X0 n; x0 K( R) N/ i' N( l5 b# h( S% `
IPv4 位址是由 32 位元所組成,一般以 8 位元為單位(octet)將 32 位元分成四部份,彼此間以 "." 做區隔,例如 "100100011.00001110.01001000.00011100",此即為「加點二進位表示法(dotted binary notation)」,由於二進位表示法太長不易記憶,故通常使用十進位來表示,上述的二進位 IP 位址即可表示成 "163.14.75.28",此即為「加點十進位表示法(dotted decimal notation)」。由於每一部份均由 8 位元所組成,故每個十進位值均介於 0 ~ 255 之間。
6 p. O! ^/ C$ Y0 b1 R. y6 C5 g( k3 r0 @% b2 Y
IP 位址主要分為兩部份:網路位元(Network bits)和主機位元(Host bits)。網路位元主要是用來辨識其 IP 位址是屬於哪一個網路系統;而主機位元則是用來辨識其 IP 位址在其所屬的網路系統中是屬於哪一台電腦主機。 + T1 @/ Y6 ]- S; b0 i4 A% b* z
6 H: f( ]. I5 _ IP 位址 = 網路位元 + 主機位元
) M2 l7 R) G8 ]/ g4 w; z @# u5 f9 F: C2 q
IPv4 將位址分成 A、B、C、D、E 五類,分別用來表示不同的網路位址種類,各類的位址型態可從左邊固定的位元進行判斷。以下為各類 IP 位址的格式,其中沒有框的位元為固定位元,用以判別位址是屬於哪一類,N 代表網路位元,H 代表主機位元,而 M 和 R 則分別代表 D 類的多點傳送位元(Muticast bits)和 E 類的保留位元(Reserved bits)。類別 A、B、C IP 位址是最常使用的,而類別 D、E IP位址則是提供特殊用途。 5 T& p. n) j: j+ f( c
1 V7 O' ~7 y5 a. L
類別 A IP 位址:0NNNNNNN.HHHHHHHH.HHHHHHHH.HHHHHHHH
0 v/ u& F' g4 P- U 類別 B IP 位址:10NNNNNN.NNNNNNNN.HHHHHHHH.HHHHHHHH
9 {4 z* `2 d; J/ l& q 類別 C IP 位址:110NNNNN.NNNNNNNN.NNNNNNNN.HHHHHHHH 5 i* D, X' g- f) h6 [4 m1 [6 T
類別 D IP 位址:1110MMMM.MMMMMMMM.MMMMMMMM.MMMMMMMM
, L; D# Z# j$ d8 t8 ^ 類別 E IP 位址:1111RRRR.RRRRRRRR.RRRRRRRR.RRRRRRRR
# l, f0 h4 q. Z1 G4 p0 b$ y( f6 T7 F' M; P6 I5 \- s9 Q
N:網路位元 H:主機位元 M:群播位元 R:保留位元 - q* w& j3 \8 P7 x- Y
+ G! n( I- @3 f6 y
在類別 A、B、C(有網路位元和主機位元)IP 位址中,各含有兩個特殊位址不做主機位址使用。一為將 IP 位址中所有主機位元均設為 "0",即為「網域位址(Domain Address)」,用來判斷 IP 位址之所屬網域;另將所有主機位元值均設為 "1",即為「廣播位址(Broadcast Address)」,用來對所屬網域之所有主機進行廣播。以下將分別對各類型的IP位址設定做詳細的說明。
d! {2 }5 f" E
- X' c* J# U! c% ^( @: E0 u, x) i2 o( R7 s0 J m8 v
類別 A IP 位址 ) O8 L" c; `- l- N
( i* N- ^6 Y/ U# [類別 A IP 位址的最左邊位元固定為 "0",後接 7 個網路位元及 24 個主機位元。由於有 7 個網路位元 "0NNNNNNN",故可提供 2^7 = 128 個網路系統,該位元組的十進位則介於 0 ~ 127 之間,其中 0 和 127 兩個網域做特殊用途使用。 8 _4 j/ T+ N% i; \: _
' m: C8 s% l* T" _1 e除了 "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 @8 a @$ `4 V% T" d
; G u1 c2 ?+ E
由上述可知,原本 128 個網路系統,扣掉 0、10、127 三個特殊網域,故實際上可用的網域為 1 ~ 9、11 ~ 126 共 125 個網域。
: I: w6 u1 h0 ~8 W- b& @3 u5 _ b3 |7 @# `2 R
類別 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 個。
, t4 g7 ~. `6 B4 ~' |, V+ J) ?. z, @1 }
從上述得知類別 A IP 位址可提供 125 個網域,而各網域可用( 2^24 - 2)個主機位址,故A類位址共可提供約 125 × 16,777,214 = 2,097,151,750 個 IP 位址。類別 A IP 位址已分配給早期參與 Internet 的組織機構使用,所以現在沒有空的類別 A IP 位址以供申請。
% d4 F( L* o' Z. u9 g) q* ]2 F6 N! Y4 r# N
類別 A IP 位址保留 "127.0.0.1" 用來進行「迴路回測(Loopback Testing)」,主要是透過本身主機將訊息送回本身主機,以檢查主機的 TCP / IP 的設定是否正確,所使用的指令為 "ping 127.0.0.1",若 TCP / IP 設定不完整會出現錯誤訊息。
2 a2 C8 K& W3 F/ D' J8 b6 o8 `9 b) H
; ?) m6 Q! S% f% S0 S類別 B IP 位址 & D: a' k% B. g6 M
+ Q0 V; R8 d2 T% G' B# q. T類別 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 個網路系統(網域)。 " E1 S9 j4 ^& r8 j% M0 A4 L4 g
) G0 b5 s [/ `* H8 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 位址以供申請。
1 w# M4 B! M! f3 d \6 e4 G- r# Y/ B
由上述可知,類別 B IP 位址可提供 2^14 個網域,而各網域可用 65,534 個主機位址,故類別 B IP 位址共可提供約 16,376 × 65,534 = 1,073,184,784 個 IP 位址。 " u6 Q7 M2 B9 Y$ U9 u) I. i5 ?% x! u
7 O8 o, l+ W# q0 x9 a
. {8 L% E9 w% G* M8 @" D6 L9 |類別 C IP 位址 * I5 N a( `9 [: v0 B/ R+ ]
2 U- N1 h o& I1 F' f類別 C IP 位址的最左邊三個位元固定為 "110",後接 21 個網路位元及 8 個主機位元。IP 位址左邊第一個網路位元組 "110NNNNN" 可提供 2^5 = 32 個組合,該位元組的十進位值介於 192 ~ 223 之間,而第二、三個網路位元組 "NNNNNNNN" 則分別可提供 2^8 = 256 個組合,十進位值介於 0 ~ 255 之間,此三個網路位元組可提供 2^21 = 2,097,152 個網路系統(網域)。 9 e% }2 `; u2 ^6 r/ J
' E4 d$ Y. T# _% v類別 C IP 位址的 8 個主機位元則提供 2^8 = 256 個主機位址,該主機位元組的十進位值介於 0 ~ 255 之間,同樣將所有主機位元設為 "0",十進位表示法 "N.N.N.0" 為網域位址;將所有主機位元設為 "1",十進位表示法 "N.N.N.255" 為廣播位址。故 256 個主機位址扣掉網域位址和廣播位址,實際上可用主機位址有 254 個。
& n" j+ v. U3 V
0 C* ]' a1 V8 I) m: 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 位址。 . J8 }& b- f$ w T& L& {- p L
3 J/ ?+ w/ ?" s& e& Q. j
! U, \5 ?1 ?7 N7 U6 Y3 n; v `1 e類別 D IP 位址
% p9 a2 s! m; G4 C6 D7 c+ t0 T0 M9 w
類別 D IP 位址的最左邊四個位元固定為 "1110",後接 28 個群播設定位元。IP 位址的左邊第一群播位元組 "1110MMMM" 可提供 2^4 個組合,十進位介於 224 ~ 239 之間,其他三個群播位元組則分別提供 2^8 個組合,十進位值介於 0 ~ 255 之間,故類別 D IP 位址共可提供 2^28 = 268,435,456 個群播 IP 位址。多點傳送操作並沒有區分網路位元與主機位元。 4 W1 _/ Q* y( H
+ N9 Q% l! v v8 @( n
所謂「多點傳送(Muticasting)」,或稱「群播」,是指一電腦主機可透過「多點傳送路由器(MRouter;Muticasting Router)」同時對多部主機傳送相同的資料。使用單點傳送(1 對 1)將相同資料送到三台主機,需要傳送三次才能完成;而多點傳送(1 對多)只需傳送一次即可,故多點傳送可以降低在網路上的資訊傳送量。欲進行多點傳送的群組必須擁有一個類別 D IP 位址方可彼此連繫。
/ d/ b4 ]4 G) e* q& r0 q: E& T. d R& ]# D4 [5 X; t
在類別 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)則是保留給管理用途。
# W6 M, y4 ^' d& a0 V0 o5 d2 m
: ~- A, m# F1 D4 u' k' L9 z9 DMicrosoft 支援類別 D IP 位址,作為應用程式多點傳送資料至 Internet 上可多點傳送的主機。
* C# V4 V1 G7 B/ a ?7 p+ o8 U. r' f. w0 ?4 L8 L+ f! R
. m: @3 t; B$ T9 A3 O類別 E IP 位址 2 p5 r$ d# r6 x# [6 ^; F
/ ^6 d* A! k) T* d- D* A# {4 G& M; f類別 E IP 位址最左邊四個位元固定為 "1111",後接 28 個保留位元。IP 位址的左邊第一個保留位元組 "1111RRRR" 之十進位值介 240 ~ 255 之間,類別 E IP 位址和類別 D IP 位址一樣,沒有網路位元和主機位元,共可提供 2^28 = 268,435,456 個 IP 位址。類別 E IP 位址是保留給實驗網路所使用。 0 j5 Q' G% N$ S6 N0 u
" D ~$ o- e7 n( {7 a
( ~4 Y) G* ?2 m- k8 H網路 ID 指南
4 C+ D- v) d: P: P2 s# {8 J% f+ ?; c' U* x- @4 W/ X, Z1 o- G
網路 ID 識別位於相同實體網路上的 TCP/IP 主機。位在相同實體網路上的所有主機都必須指派相同的網路 ID,和其它主機通訊。指派網路 ID 時,請遵循以下指南:
. w K6 n$ T2 R8 |: v; @) L4 E/ d* O6 T2 Q
/ H; n3 t3 I2 K+ Z I; k% |& E
網路位址必須是 IP internet 中的唯一值。如果您計劃以直接路由連線至公用 Internet,網路 ID 必須是 Internet 上的唯一值。如果您不打算連線至公用 Internet,區域網路 ID 必須是您的私有 internet 上的唯一值。 5 N$ e: Y9 _ s$ c
7 b( r+ X3 j, o7 w3 r: e6 {網路 ID 不可以數字 127 開頭。類別 A 位址中的數字 127 保留給內部反向迴圈功能使用。
1 v, a0 x+ _4 }( A3 Z% x
2 K' ~5 r7 Y5 d: [- o' Z# L網路 ID 中的所有位元不可設定為 1。網路 ID 中的全部 1 保留作為 IP 廣播位址使用。 2 v; t1 \( n1 @+ |! v
8 N- ^1 f# h Q# T網路 ID 中的所有位元不可設定為 0。網路 ID 中的全部 0 是用來表示區域網路上的指定主機,且不會被尋徑。
1 X _7 T3 ]. x3 V3 {7 c* {: C6 L/ M% ~
網路 ID 類別範圍 ) }% s4 |1 i$ s$ D
9 [0 J% e# @& e) n1 |% O) K T8 J
位址類別 第一個網路 ID 最後一個網路 ID ( e* ]0 ]0 ]- N n9 U
─────────────────────── 5 V' T* H9 ?, U. r8 F
類別 A 1.0.0.0 126.0.0.0 . A3 y* o6 v( X2 O7 Z
類別 B 128.0.0.0 191.255.0.0 $ f# y# s2 B- R1 O) _- ]
類別 C 192.0.0.0 223.255.255.0
W7 Q* n& g) L$ E; M
% Z( ?& [4 e' m, Z& ^ b2 d
9 v% b$ _' W( i+ T主機 ID 指南
% g7 |2 Y" T0 x6 o6 b" |& q% c( F+ K
主機 ID 識別網路中的 TCP/IP 主機。 IP 網路 ID 與 IP 主機 ID 的結合即代表 IP 位址。指派主機 ID 時,請遵循以下指南: ! [/ x1 w4 H% d7 ~+ i X% y. l/ J
( [; l: K# |3 u
2 f, r! D, {& i! B) N2 t) J主機 ID 必須是網路 ID 中的唯一值。 & J5 A7 p- @* O6 R3 P
. b! L: z# _+ h
主機 ID 中的所有位元不可設定為 1,因為此主機 ID 保留作為廣播位址,傳送封包至網路上的所有主機。
/ y! O: s/ T6 E% k
* w" ^9 Q/ U, v4 _! C主機 ID 中的所有位元不可設定為 0,因為此主機 ID 保留用來表示 IP 網路 ID 。
, v; a3 ^$ [) h6 D/ c% c0 K u/ h: f% {
主機 ID 類別範圍 - W% f: C6 Y8 c! d0 n1 z( P
. D7 h' N& I# g: ~) {
位址類別 第一個主機 ID 最後一個主機 ID 3 H/ m3 X9 \$ h `# E" I
──────────────────────── 0 G. r; M5 o* D. |9 K/ Y6 W3 G
類別 A w.0.0.1 w.255.255.254
+ ?* K( d9 d2 |, C 類別 B w.x.0.1 w.x.255.254 / Z7 l3 \+ ]3 r7 r/ M$ V* ?
類別 C w.x.y.1 w.x.y.254 % c# j) }4 Z% L9 Z0 ?- W2 i
4 V$ l1 d+ T. U \ C) J
, k# p( v- d! |1 M* V7 t虛擬 IP 位址指南 $ k( G1 A: w6 `; d# _7 a$ h# F( g! c
9 z; r: P7 x% h
依據RFC1918:Address Allocation for Private Internets(原為RFC1597),有三個區段的 IP 是作為 Private IP 使用: 2 L( {- z1 ?, b; [) Y
/ f5 _. z# Z5 Q# x4 C* N
位址類別 第一個主機 ID 最後一個主機 ID . h; H/ m/ f2 j) K8 L/ M
────────────────────────
2 q8 t2 i% a* z 類別 A 10.0.0.1 10.255.255.254 ) m1 f% ^, F. P5 c8 e2 u
類別 B 172.16.0.1 172.31.255.254
4 e2 Z7 b! P4 j# }+ [ 類別 C 192.168.0.1 192.168.255.254
: Z% o( n$ o) @$ z$ \1 M
. m9 R; t' t" C6 P8 L當使用以上的 IP 位址的時候是有所限制的(此部份引自 Albert_Lu):
# u$ P8 k$ _5 z0 m8 h+ M6 @/ Q G3 e- `2 U4 A2 U5 _& i, d
2 U1 e) u- m& n' x, g. a) h8 ?
虛擬 IP 位址的路由資訊不能對外散播。
( C0 j/ a% }0 |- d2 E
" U) i( M. e5 B4 N- @使用虛擬 IP 位址作為來源或目的地址的封包,不能透過 Internet 來轉送。
: n, \9 w' c- X4 J% c" A5 V: K
關於虛擬 IP 位址的參考紀錄(如 DNS),只能限於內部網路使用。 - g* z" c5 {3 J. f
) r; N# L) V( I: z% f- ?, J9 {+ C
由於有以上的限制,當我們使用這些虛擬 IP 位址來設定網路的時候,就無需擔心會和其它也使用相同位址的網路衝突了。 * e/ T+ f2 j' B4 L
|
|