|
|
Internet 中所謂的「IP 位址(IP Address)」,就像現實生活中每戶人家都要擁有唯一的地址一樣,傳送者可以根據 IP 位址進行辨識,將資料傳送到唯一目的地位址完成通訊。世界各地的 IP 位址必須具有一致性,才不會導致辨識上的混亂,故必須依循共同的規範才能達成。
, }2 j2 f- ]3 h& X! ^目前我們所使用的 IP 位址為第四版 IP 位址,一般稱為 IPv4 位址。為滿足使用上的需求,又陸陸續續發展 IPv5、IPv6,IPv5 是提供給 Stream Protocol 實驗協定使用,而 IPv6 則是 IPv4 的擴充,為因應位址數量不敷使用的問題,在標頭格式也提供動態欄位設定。
7 R8 }* p0 M& ^) r6 F( y y3 Z% F" f
IPv4 位址是由 32 位元所組成,一般以 8 位元為單位(octet)將 32 位元分成四部份,彼此間以 "." 做區隔,例如 "100100011.00001110.01001000.00011100",此即為「加點二進位表示法(dotted binary notation)」,由於二進位表示法太長不易記憶,故通常使用十進位來表示,上述的二進位 IP 位址即可表示成 "163.14.75.28",此即為「加點十進位表示法(dotted decimal notation)」。由於每一部份均由 8 位元所組成,故每個十進位值均介於 0 ~ 255 之間。
, j* I! [( a' M0 P; n6 q
- d: R: j U- m" V1 D& ~; PIP 位址主要分為兩部份:網路位元(Network bits)和主機位元(Host bits)。網路位元主要是用來辨識其 IP 位址是屬於哪一個網路系統;而主機位元則是用來辨識其 IP 位址在其所屬的網路系統中是屬於哪一台電腦主機。 ; f7 k. Y6 u$ [. V2 t. n- H& ^
7 k' i5 J! X) k' L: w
IP 位址 = 網路位元 + 主機位元
1 U+ N2 @- ^4 |" x' r; T+ N: N# ?* V; ?) k5 W
IPv4 將位址分成 A、B、C、D、E 五類,分別用來表示不同的網路位址種類,各類的位址型態可從左邊固定的位元進行判斷。以下為各類 IP 位址的格式,其中沒有框的位元為固定位元,用以判別位址是屬於哪一類,N 代表網路位元,H 代表主機位元,而 M 和 R 則分別代表 D 類的多點傳送位元(Muticast bits)和 E 類的保留位元(Reserved bits)。類別 A、B、C IP 位址是最常使用的,而類別 D、E IP位址則是提供特殊用途。 H1 z' ?7 d: j* A
4 F- m8 V7 V3 U' T: ]$ k 類別 A IP 位址:0NNNNNNN.HHHHHHHH.HHHHHHHH.HHHHHHHH
8 D0 m1 k0 ?3 i" S' G% C 類別 B IP 位址:10NNNNNN.NNNNNNNN.HHHHHHHH.HHHHHHHH . @! q* M( p+ f; x2 ]" K
類別 C IP 位址:110NNNNN.NNNNNNNN.NNNNNNNN.HHHHHHHH 1 ^+ R/ S, b9 n( U' ?9 \
類別 D IP 位址:1110MMMM.MMMMMMMM.MMMMMMMM.MMMMMMMM
. }) n% S: C# z" W( S/ R 類別 E IP 位址:1111RRRR.RRRRRRRR.RRRRRRRR.RRRRRRRR
8 u: X' q7 c6 M0 y3 @! D3 n% \- u
) I7 G$ `$ E+ Y) y" b N:網路位元 H:主機位元 M:群播位元 R:保留位元 3 P' P; T2 ]( d8 A
0 H9 v3 A" k( |; K4 Y7 R$ u
在類別 A、B、C(有網路位元和主機位元)IP 位址中,各含有兩個特殊位址不做主機位址使用。一為將 IP 位址中所有主機位元均設為 "0",即為「網域位址(Domain Address)」,用來判斷 IP 位址之所屬網域;另將所有主機位元值均設為 "1",即為「廣播位址(Broadcast Address)」,用來對所屬網域之所有主機進行廣播。以下將分別對各類型的IP位址設定做詳細的說明。
* X+ ^8 f: h. e4 W
5 N u5 z$ L2 U. Z! ? R! b& x& z) {8 W' X
類別 A IP 位址
' N# o# |& ?; Q
- d* Y3 ?) O1 ~7 k類別 A IP 位址的最左邊位元固定為 "0",後接 7 個網路位元及 24 個主機位元。由於有 7 個網路位元 "0NNNNNNN",故可提供 2^7 = 128 個網路系統,該位元組的十進位則介於 0 ~ 127 之間,其中 0 和 127 兩個網域做特殊用途使用。 4 F3 p4 p9 R" q# | ~# h
/ V' S) V8 G7 v" n; [
除了 "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 位址不足的現象。
, Z9 T$ U& {- w! `2 _% \3 ?
3 u# N- h/ G4 J3 T$ p% s# l0 S+ H由上述可知,原本 128 個網路系統,扣掉 0、10、127 三個特殊網域,故實際上可用的網域為 1 ~ 9、11 ~ 126 共 125 個網域。 + T6 C2 I3 u$ `* N; w
B& M9 I% N8 B! B- r# M類別 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 個。 ! I7 h& R5 y! r; L
6 `" a! v% c6 J( q- n( m從上述得知類別 A IP 位址可提供 125 個網域,而各網域可用( 2^24 - 2)個主機位址,故A類位址共可提供約 125 × 16,777,214 = 2,097,151,750 個 IP 位址。類別 A IP 位址已分配給早期參與 Internet 的組織機構使用,所以現在沒有空的類別 A IP 位址以供申請。 9 V, {4 A. \* H1 Z0 p/ r9 c u
1 A) V# Q! j. y3 ]0 y1 H7 k- V
類別 A IP 位址保留 "127.0.0.1" 用來進行「迴路回測(Loopback Testing)」,主要是透過本身主機將訊息送回本身主機,以檢查主機的 TCP / IP 的設定是否正確,所使用的指令為 "ping 127.0.0.1",若 TCP / IP 設定不完整會出現錯誤訊息。 4 I4 Y, x9 G3 L+ U
3 u6 e% c+ r$ S5 a& n3 E- P
" a/ U" T) [# j類別 B IP 位址
8 @- W/ L0 b! c6 U0 x/ ~0 D/ ]/ b. C, Q: M; g7 f
類別 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 個網路系統(網域)。 8 r- o$ O4 m# m" H y
l2 j, h" t+ 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 位址以供申請。 8 Y0 t8 i& s+ l3 ? u6 x* O
$ n8 ^5 z# E* I1 r) c- V. ?; g3 B
由上述可知,類別 B IP 位址可提供 2^14 個網域,而各網域可用 65,534 個主機位址,故類別 B IP 位址共可提供約 16,376 × 65,534 = 1,073,184,784 個 IP 位址。
# s5 X( O% |4 B' d- L; P2 D$ T3 b$ M- X Y9 {4 V
( F3 G: }) J# Z. d: s9 Y/ |類別 C IP 位址 : \. F6 T1 Q9 `
7 s0 x) i8 \0 m* y1 W+ O) G% y
類別 C IP 位址的最左邊三個位元固定為 "110",後接 21 個網路位元及 8 個主機位元。IP 位址左邊第一個網路位元組 "110NNNNN" 可提供 2^5 = 32 個組合,該位元組的十進位值介於 192 ~ 223 之間,而第二、三個網路位元組 "NNNNNNNN" 則分別可提供 2^8 = 256 個組合,十進位值介於 0 ~ 255 之間,此三個網路位元組可提供 2^21 = 2,097,152 個網路系統(網域)。 / S. h7 e) Z8 C
# z: A) X( o% ~4 ` h
類別 C IP 位址的 8 個主機位元則提供 2^8 = 256 個主機位址,該主機位元組的十進位值介於 0 ~ 255 之間,同樣將所有主機位元設為 "0",十進位表示法 "N.N.N.0" 為網域位址;將所有主機位元設為 "1",十進位表示法 "N.N.N.255" 為廣播位址。故 256 個主機位址扣掉網域位址和廣播位址,實際上可用主機位址有 254 個。 . I( O- z) }* t! a4 L; K; [, a
# O) N2 G+ E; X6 V另外,類別 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 位址。
_2 `2 L, f* n% f
; W. @# a' K8 x# ?
: ?+ `# Y9 z' ^( d( s類別 D IP 位址
8 @1 W) m" D' J0 |! R$ l. D# N+ _1 l/ w# q2 m5 ?
類別 D IP 位址的最左邊四個位元固定為 "1110",後接 28 個群播設定位元。IP 位址的左邊第一群播位元組 "1110MMMM" 可提供 2^4 個組合,十進位介於 224 ~ 239 之間,其他三個群播位元組則分別提供 2^8 個組合,十進位值介於 0 ~ 255 之間,故類別 D IP 位址共可提供 2^28 = 268,435,456 個群播 IP 位址。多點傳送操作並沒有區分網路位元與主機位元。 0 u+ V9 u+ m2 y2 ^- \* w4 w
0 s6 Q6 k1 z% m2 V4 B( P
所謂「多點傳送(Muticasting)」,或稱「群播」,是指一電腦主機可透過「多點傳送路由器(MRouter;Muticasting Router)」同時對多部主機傳送相同的資料。使用單點傳送(1 對 1)將相同資料送到三台主機,需要傳送三次才能完成;而多點傳送(1 對多)只需傳送一次即可,故多點傳送可以降低在網路上的資訊傳送量。欲進行多點傳送的群組必須擁有一個類別 D IP 位址方可彼此連繫。 % _- ~( {9 V* Y. R' S
- f% u2 c; m4 H5 s
在類別 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)則是保留給管理用途。 1 H7 u6 P% N- A
4 m0 k O! o- p9 ~ I" UMicrosoft 支援類別 D IP 位址,作為應用程式多點傳送資料至 Internet 上可多點傳送的主機。 ~5 H+ k0 M0 Y* l
+ x/ N- s3 d# n; `' l: Q
* A. D2 O/ C5 _% L
類別 E IP 位址
) |0 ?2 E' @/ Q7 L
7 n, e( |- R( E3 j: r6 q. i類別 E IP 位址最左邊四個位元固定為 "1111",後接 28 個保留位元。IP 位址的左邊第一個保留位元組 "1111RRRR" 之十進位值介 240 ~ 255 之間,類別 E IP 位址和類別 D IP 位址一樣,沒有網路位元和主機位元,共可提供 2^28 = 268,435,456 個 IP 位址。類別 E IP 位址是保留給實驗網路所使用。 * @" ]0 x- R- l- A0 q
( d3 L$ |( z# c# x
3 U* A( T, P: _, [1 k
網路 ID 指南
( j* T2 K( n9 Q1 k+ z% ]' g: g3 D$ W+ H6 Z( e
網路 ID 識別位於相同實體網路上的 TCP/IP 主機。位在相同實體網路上的所有主機都必須指派相同的網路 ID,和其它主機通訊。指派網路 ID 時,請遵循以下指南:
# |: j k1 Z Q/ k1 x8 C* D% v* I. ]' V- W. R6 K; J; s
' }5 ?/ S* m, ^, M. P/ S- |( p
網路位址必須是 IP internet 中的唯一值。如果您計劃以直接路由連線至公用 Internet,網路 ID 必須是 Internet 上的唯一值。如果您不打算連線至公用 Internet,區域網路 ID 必須是您的私有 internet 上的唯一值。 5 i! w5 F- C; x+ w' b+ m
) w7 F: v4 z$ }' u1 y0 r
網路 ID 不可以數字 127 開頭。類別 A 位址中的數字 127 保留給內部反向迴圈功能使用。 : I6 Y/ O9 D6 h6 m) o
, }, Z3 [5 B& d8 a- t4 s網路 ID 中的所有位元不可設定為 1。網路 ID 中的全部 1 保留作為 IP 廣播位址使用。
5 v' e) ^0 c; M
& R. E* v% t. S- P$ E" Y/ o網路 ID 中的所有位元不可設定為 0。網路 ID 中的全部 0 是用來表示區域網路上的指定主機,且不會被尋徑。 0 D& l% E* t- z6 }1 k+ Y* V' c
/ N8 h& d4 v2 j1 b9 H
網路 ID 類別範圍
/ _5 |4 C+ \! ?9 ~6 |4 v1 v' S$ k1 _8 y7 c
位址類別 第一個網路 ID 最後一個網路 ID
3 r% }; A) c! f* t) | ───────────────────────
) h: L/ ?7 \0 ^$ C 類別 A 1.0.0.0 126.0.0.0
4 y" S6 D+ B4 V- [, z( g 類別 B 128.0.0.0 191.255.0.0
( k7 A0 _5 Q3 S 類別 C 192.0.0.0 223.255.255.0
5 f1 D* H0 }& r* W; t
) O; U, m! k6 n/ q! {
. R Y6 A$ c) G7 B8 \主機 ID 指南 ' _( B `5 i2 v( S$ m1 q/ l
& a: G' a; E- W0 F5 t5 i. z/ @
主機 ID 識別網路中的 TCP/IP 主機。 IP 網路 ID 與 IP 主機 ID 的結合即代表 IP 位址。指派主機 ID 時,請遵循以下指南:
7 W6 D9 }+ s- A# b
; \0 A$ e9 E# \3 [
. Z% `3 ] J! f% s+ ~. d2 o主機 ID 必須是網路 ID 中的唯一值。 8 x* W. X0 O. O- Q3 R( P8 ?
% F. d ~+ d" H! G
主機 ID 中的所有位元不可設定為 1,因為此主機 ID 保留作為廣播位址,傳送封包至網路上的所有主機。
# A/ o0 g/ I; k, U
) ~- X9 X1 F6 A主機 ID 中的所有位元不可設定為 0,因為此主機 ID 保留用來表示 IP 網路 ID 。 & m2 |; b' o# l. ^: _0 Y
. |7 S4 P3 H# x: l 主機 ID 類別範圍
J" X1 x; B5 M& R# L4 K* P" q" G
位址類別 第一個主機 ID 最後一個主機 ID
! h s+ }+ U. C5 G! w ────────────────────────
9 Y7 z, ^' b5 K- f+ g0 k( _5 l 類別 A w.0.0.1 w.255.255.254
% F3 a+ D& X% y! R/ Y 類別 B w.x.0.1 w.x.255.254
+ v$ X1 W6 M$ O 類別 C w.x.y.1 w.x.y.254 ) k; i, p1 b: D1 F& ^6 G6 C7 f4 b
9 B3 L0 B- J$ `
2 O1 x4 y$ ] u7 T' p$ {% j虛擬 IP 位址指南
* Q+ [: K$ |/ p; `8 F) y
6 W' \2 V/ R6 V0 c依據RFC1918:Address Allocation for Private Internets(原為RFC1597),有三個區段的 IP 是作為 Private IP 使用: H' c) `1 S7 f+ a, }& Q
. w$ J G9 y) q* _9 u# d# N 位址類別 第一個主機 ID 最後一個主機 ID % c+ s/ |- h, j$ `6 |0 L
──────────────────────── $ f/ @3 ?! h& R4 x6 ?( C
類別 A 10.0.0.1 10.255.255.254 2 `+ h1 u; u) ~ }. f$ `2 Z
類別 B 172.16.0.1 172.31.255.254
6 e& y8 n0 x) {( ?* e 類別 C 192.168.0.1 192.168.255.254
, z; x5 i$ r+ \5 v0 ?1 G( t+ I7 |7 N8 |3 N+ Y- r4 ~6 G1 k7 y
當使用以上的 IP 位址的時候是有所限制的(此部份引自 Albert_Lu):
. o3 W" i5 B" a! N5 a9 B# K$ W- t
$ y2 w/ K7 x4 `1 E; p虛擬 IP 位址的路由資訊不能對外散播。 ; ]: E2 I' r* f$ k! R
4 z) Q2 G7 U; {. K# ]5 b使用虛擬 IP 位址作為來源或目的地址的封包,不能透過 Internet 來轉送。
' b, d; c3 t* J! T8 h, n! R' f0 l3 P8 _$ H3 K: o
關於虛擬 IP 位址的參考紀錄(如 DNS),只能限於內部網路使用。
$ |+ Y0 J7 M8 l, U) x# }+ E
0 h0 E& I: B: e- A4 I0 z" O由於有以上的限制,當我們使用這些虛擬 IP 位址來設定網路的時候,就無需擔心會和其它也使用相同位址的網路衝突了。 4 V9 I% w0 I8 ~7 J0 S- T
|
|