|
|
Internet 中所謂的「IP 位址(IP Address)」,就像現實生活中每戶人家都要擁有唯一的地址一樣,傳送者可以根據 IP 位址進行辨識,將資料傳送到唯一目的地位址完成通訊。世界各地的 IP 位址必須具有一致性,才不會導致辨識上的混亂,故必須依循共同的規範才能達成。
* t9 @/ A/ |/ R3 D4 ~目前我們所使用的 IP 位址為第四版 IP 位址,一般稱為 IPv4 位址。為滿足使用上的需求,又陸陸續續發展 IPv5、IPv6,IPv5 是提供給 Stream Protocol 實驗協定使用,而 IPv6 則是 IPv4 的擴充,為因應位址數量不敷使用的問題,在標頭格式也提供動態欄位設定。
2 `: `" {. l' g) Q% I$ m7 y9 d9 j8 `' j4 E" v
IPv4 位址是由 32 位元所組成,一般以 8 位元為單位(octet)將 32 位元分成四部份,彼此間以 "." 做區隔,例如 "100100011.00001110.01001000.00011100",此即為「加點二進位表示法(dotted binary notation)」,由於二進位表示法太長不易記憶,故通常使用十進位來表示,上述的二進位 IP 位址即可表示成 "163.14.75.28",此即為「加點十進位表示法(dotted decimal notation)」。由於每一部份均由 8 位元所組成,故每個十進位值均介於 0 ~ 255 之間。 2 h$ x0 A+ j3 a+ d1 {
/ F5 L/ O! p' o7 j v$ i& g
IP 位址主要分為兩部份:網路位元(Network bits)和主機位元(Host bits)。網路位元主要是用來辨識其 IP 位址是屬於哪一個網路系統;而主機位元則是用來辨識其 IP 位址在其所屬的網路系統中是屬於哪一台電腦主機。 3 F. I3 f) _9 \( d& X
5 K% w" z& G& D+ y" t
IP 位址 = 網路位元 + 主機位元 6 C+ q0 q) B2 q7 Z- G: q4 _- h
/ C2 i5 H0 }" @1 c; h$ M, @& `IPv4 將位址分成 A、B、C、D、E 五類,分別用來表示不同的網路位址種類,各類的位址型態可從左邊固定的位元進行判斷。以下為各類 IP 位址的格式,其中沒有框的位元為固定位元,用以判別位址是屬於哪一類,N 代表網路位元,H 代表主機位元,而 M 和 R 則分別代表 D 類的多點傳送位元(Muticast bits)和 E 類的保留位元(Reserved bits)。類別 A、B、C IP 位址是最常使用的,而類別 D、E IP位址則是提供特殊用途。
3 f8 E2 @ U- ?5 e4 r/ z% U2 X/ j O: {0 L! p' l
類別 A IP 位址:0NNNNNNN.HHHHHHHH.HHHHHHHH.HHHHHHHH 9 G9 L( P9 u' c! [* ^; N) |( ]
類別 B IP 位址:10NNNNNN.NNNNNNNN.HHHHHHHH.HHHHHHHH
2 A) z) K$ L/ G2 f$ I 類別 C IP 位址:110NNNNN.NNNNNNNN.NNNNNNNN.HHHHHHHH " @. s$ }0 S5 T0 V6 Z
類別 D IP 位址:1110MMMM.MMMMMMMM.MMMMMMMM.MMMMMMMM # V0 T3 |5 E0 [" H
類別 E IP 位址:1111RRRR.RRRRRRRR.RRRRRRRR.RRRRRRRR
. e8 S5 C. h+ x! U& m3 b
- ~9 r9 p" f! ? E6 I; M3 |0 V: P N:網路位元 H:主機位元 M:群播位元 R:保留位元 ; \1 C; p1 B* ]# n& X2 c T
: D/ e2 O7 A0 D9 V/ g; b在類別 A、B、C(有網路位元和主機位元)IP 位址中,各含有兩個特殊位址不做主機位址使用。一為將 IP 位址中所有主機位元均設為 "0",即為「網域位址(Domain Address)」,用來判斷 IP 位址之所屬網域;另將所有主機位元值均設為 "1",即為「廣播位址(Broadcast Address)」,用來對所屬網域之所有主機進行廣播。以下將分別對各類型的IP位址設定做詳細的說明。
9 d: W! v" u) z4 ?0 h) L
- I9 Z1 s1 u1 q; y- U1 Q5 Q
$ k9 M7 M' |- d' X# B- r類別 A IP 位址 - M4 e( j4 Z" l# }) O: V
& e; Q/ F9 D9 ~( _$ A* j" |類別 A IP 位址的最左邊位元固定為 "0",後接 7 個網路位元及 24 個主機位元。由於有 7 個網路位元 "0NNNNNNN",故可提供 2^7 = 128 個網路系統,該位元組的十進位則介於 0 ~ 127 之間,其中 0 和 127 兩個網域做特殊用途使用。
; N9 Y& C& Q# a) V% O0 Z
# S7 g; d" [. P' k# f除了 "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 位址不足的現象。
$ l" s; w1 F5 f4 D
# {4 E( I% U* x. D% \' K& q由上述可知,原本 128 個網路系統,扣掉 0、10、127 三個特殊網域,故實際上可用的網域為 1 ~ 9、11 ~ 126 共 125 個網域。
2 O. A; ^, ]( {/ C; x
( Z; p" i7 i5 C/ _! [8 V類別 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 個。
' ]) T( G7 X$ n+ z: s& B/ @- `1 H: C Y( O
從上述得知類別 A IP 位址可提供 125 個網域,而各網域可用( 2^24 - 2)個主機位址,故A類位址共可提供約 125 × 16,777,214 = 2,097,151,750 個 IP 位址。類別 A IP 位址已分配給早期參與 Internet 的組織機構使用,所以現在沒有空的類別 A IP 位址以供申請。
, e6 r: V g5 J* R0 I) l1 ]! Z# T! I' V3 @2 S
類別 A IP 位址保留 "127.0.0.1" 用來進行「迴路回測(Loopback Testing)」,主要是透過本身主機將訊息送回本身主機,以檢查主機的 TCP / IP 的設定是否正確,所使用的指令為 "ping 127.0.0.1",若 TCP / IP 設定不完整會出現錯誤訊息。
9 m2 `1 p2 ]* C$ x9 N( q
: x& [1 x- m4 q: M I
& Q1 s# x/ h% R- F, O: w3 x類別 B IP 位址
( c$ U; M4 ~: V% L
. `; Y; O& W6 ?0 c; d0 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 個網路系統(網域)。
, g# P: u' o% s9 x# k( T' |) B, v) \# h4 q$ s, v
類別 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 位址以供申請。
" Q4 Z% y) x2 ]4 U6 X: p! T. x- W' }0 J, |7 l3 l) ^0 P; R* k
由上述可知,類別 B IP 位址可提供 2^14 個網域,而各網域可用 65,534 個主機位址,故類別 B IP 位址共可提供約 16,376 × 65,534 = 1,073,184,784 個 IP 位址。 7 O4 @3 W" T8 u) o0 [) I. j
* [9 `& n+ I9 U+ x4 R
6 q6 ^, `$ E; ^; _! l" o類別 C IP 位址
$ J8 B+ _: k, w9 P, x4 a* K: t" M; W% k0 R- y8 o
類別 C IP 位址的最左邊三個位元固定為 "110",後接 21 個網路位元及 8 個主機位元。IP 位址左邊第一個網路位元組 "110NNNNN" 可提供 2^5 = 32 個組合,該位元組的十進位值介於 192 ~ 223 之間,而第二、三個網路位元組 "NNNNNNNN" 則分別可提供 2^8 = 256 個組合,十進位值介於 0 ~ 255 之間,此三個網路位元組可提供 2^21 = 2,097,152 個網路系統(網域)。 7 W' L# M8 q& w& N) P
+ x: ]1 Z% f% C' L3 W6 g
類別 C IP 位址的 8 個主機位元則提供 2^8 = 256 個主機位址,該主機位元組的十進位值介於 0 ~ 255 之間,同樣將所有主機位元設為 "0",十進位表示法 "N.N.N.0" 為網域位址;將所有主機位元設為 "1",十進位表示法 "N.N.N.255" 為廣播位址。故 256 個主機位址扣掉網域位址和廣播位址,實際上可用主機位址有 254 個。
z2 M" y# e# S# ^9 r* C9 A
9 d: H4 I3 I$ G7 o' q另外,類別 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 位址。 8 v3 g% K2 g- J/ ]
' b/ r" {$ F L* H! _3 Y
( f) v$ H4 L, Z' _
類別 D IP 位址
& f6 [4 q- w2 h- D/ r: t* L9 W* M! V* t* O+ S$ [
類別 D IP 位址的最左邊四個位元固定為 "1110",後接 28 個群播設定位元。IP 位址的左邊第一群播位元組 "1110MMMM" 可提供 2^4 個組合,十進位介於 224 ~ 239 之間,其他三個群播位元組則分別提供 2^8 個組合,十進位值介於 0 ~ 255 之間,故類別 D IP 位址共可提供 2^28 = 268,435,456 個群播 IP 位址。多點傳送操作並沒有區分網路位元與主機位元。 ( {) v* g( m" l6 B# H
$ G- Q. G' Y* r- N
所謂「多點傳送(Muticasting)」,或稱「群播」,是指一電腦主機可透過「多點傳送路由器(MRouter;Muticasting Router)」同時對多部主機傳送相同的資料。使用單點傳送(1 對 1)將相同資料送到三台主機,需要傳送三次才能完成;而多點傳送(1 對多)只需傳送一次即可,故多點傳送可以降低在網路上的資訊傳送量。欲進行多點傳送的群組必須擁有一個類別 D IP 位址方可彼此連繫。 ; H: A6 l* ~( r6 r9 @6 m- S* R
+ c7 k% F0 l4 q' S: y) n, {
在類別 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)則是保留給管理用途。 ' T3 W6 q# p! c% z9 f$ E
/ K7 m8 O! w2 k6 f) Y5 }# j9 xMicrosoft 支援類別 D IP 位址,作為應用程式多點傳送資料至 Internet 上可多點傳送的主機。
) d& j, n8 w% f. z: T* w5 ?* G# p* j* q. k+ E& L
, w" @0 Q9 C# \8 t
類別 E IP 位址
# m i4 v: q' h; |& I* G
" ~9 E. S8 i( Z: I8 a, H) N: \5 k類別 E IP 位址最左邊四個位元固定為 "1111",後接 28 個保留位元。IP 位址的左邊第一個保留位元組 "1111RRRR" 之十進位值介 240 ~ 255 之間,類別 E IP 位址和類別 D IP 位址一樣,沒有網路位元和主機位元,共可提供 2^28 = 268,435,456 個 IP 位址。類別 E IP 位址是保留給實驗網路所使用。 ! R4 a; b( r- n
( a6 a: S$ f* m1 ?
( i- a+ \! l, L% N網路 ID 指南
( |& U6 c2 e, I: V! b# A; s3 a
' m. h0 m) D& h8 J* K3 a網路 ID 識別位於相同實體網路上的 TCP/IP 主機。位在相同實體網路上的所有主機都必須指派相同的網路 ID,和其它主機通訊。指派網路 ID 時,請遵循以下指南: + b5 A1 y6 l6 r* U7 L
5 p* n- Y: |$ }# W7 U0 y7 m: E" k
; x% S8 u3 P& o v& J; M
網路位址必須是 IP internet 中的唯一值。如果您計劃以直接路由連線至公用 Internet,網路 ID 必須是 Internet 上的唯一值。如果您不打算連線至公用 Internet,區域網路 ID 必須是您的私有 internet 上的唯一值。
! d5 W0 F6 d' M9 t$ S9 f, \0 _9 g- h' J
網路 ID 不可以數字 127 開頭。類別 A 位址中的數字 127 保留給內部反向迴圈功能使用。 8 r, L$ a3 s1 x
% H* B$ R, x- Y3 c3 T網路 ID 中的所有位元不可設定為 1。網路 ID 中的全部 1 保留作為 IP 廣播位址使用。
6 e2 e& N8 d) a
Z5 Q) u0 d% C9 [網路 ID 中的所有位元不可設定為 0。網路 ID 中的全部 0 是用來表示區域網路上的指定主機,且不會被尋徑。
. V) o0 \% D. d6 y U% M) f+ S+ S- K
網路 ID 類別範圍 9 c3 V* \9 X9 C2 q
O* ?8 j4 F' T& ]. ]
位址類別 第一個網路 ID 最後一個網路 ID
' j! D% U6 f& j. [5 i ───────────────────────
/ T5 d) t. {! E: _& X J9 Q 類別 A 1.0.0.0 126.0.0.0
* j0 F# H) S5 O4 f; x/ u. X 類別 B 128.0.0.0 191.255.0.0
' R+ `/ r s" R2 l& a8 o! { 類別 C 192.0.0.0 223.255.255.0
8 B2 `4 r& A5 R
# M7 Y- j% h$ M; C; k6 ]2 G6 q3 d
主機 ID 指南 " s; }# S5 ?. m% k" ^7 K" f
: T6 f' L# p: Q+ c0 B主機 ID 識別網路中的 TCP/IP 主機。 IP 網路 ID 與 IP 主機 ID 的結合即代表 IP 位址。指派主機 ID 時,請遵循以下指南:
6 S3 P2 S$ w& ?& `! d! j! S! g& O) s6 L& ]+ N7 [
/ n, ~; O2 m/ s1 X7 p主機 ID 必須是網路 ID 中的唯一值。 B0 \% N; v+ m3 I7 t# _
. h+ h- i; l# P2 c. @" q& l8 J
主機 ID 中的所有位元不可設定為 1,因為此主機 ID 保留作為廣播位址,傳送封包至網路上的所有主機。
' ], c# T" U% m) C1 s% J
* T7 }# p- f5 H8 U主機 ID 中的所有位元不可設定為 0,因為此主機 ID 保留用來表示 IP 網路 ID 。
. r- J# D; w9 M7 z/ C) F4 y1 E7 A; K! T
主機 ID 類別範圍
$ N! d( w/ C$ X: ~& i- ?9 Z# o
; i+ U( y- f$ Y* c; d! q; w) Q 位址類別 第一個主機 ID 最後一個主機 ID - K; r, h% K; A
────────────────────────
) g- m8 ~/ [4 ]2 y" l- ]) `, p# l 類別 A w.0.0.1 w.255.255.254 * P3 K$ L2 J7 V: c) l
類別 B w.x.0.1 w.x.255.254 " ? A+ D \' ^! Q7 }$ d! x- N3 E' t
類別 C w.x.y.1 w.x.y.254 ! o: q% p' T _2 t. o: t, I* X& k
- }% t* @$ y' {; c9 A
+ d; A: W) z1 ~虛擬 IP 位址指南
$ E& T' N J4 E }- D& O* E6 U; l- ]1 j! H8 n; c0 i% W3 h$ ~+ T
依據RFC1918:Address Allocation for Private Internets(原為RFC1597),有三個區段的 IP 是作為 Private IP 使用:
$ z& f/ ^( M1 w! z% d: J1 ~) o/ w: _ a
位址類別 第一個主機 ID 最後一個主機 ID & B3 Q$ f' A. }+ ~ u |
────────────────────────
1 |, ^- S) h) F. P% ] 類別 A 10.0.0.1 10.255.255.254
7 O5 | ?* H, q5 ? 類別 B 172.16.0.1 172.31.255.254 , G% v7 o: t3 c: W
類別 C 192.168.0.1 192.168.255.254 ' c& \4 L* b9 _8 h0 o B7 J: |
, q9 d) \" N, h& V* \
當使用以上的 IP 位址的時候是有所限制的(此部份引自 Albert_Lu): 6 Z2 k$ Q7 ?, k' P7 k
+ R( N$ ^5 @' L9 Q6 a+ ^8 k% ?3 f
0 M/ ?6 ^' E: L虛擬 IP 位址的路由資訊不能對外散播。
4 Z% d' M m- e7 k5 U4 q
6 d1 U; Q; r1 w9 i; N使用虛擬 IP 位址作為來源或目的地址的封包,不能透過 Internet 來轉送。
( e$ N9 H4 p# k1 q$ a3 X* v; a4 h+ f3 Q3 e8 F z z
關於虛擬 IP 位址的參考紀錄(如 DNS),只能限於內部網路使用。
6 A1 V( m6 R9 ^0 p+ L' q6 v% f6 ~, \ N i; z* |
由於有以上的限制,當我們使用這些虛擬 IP 位址來設定網路的時候,就無需擔心會和其它也使用相同位址的網路衝突了。 . G' x7 J6 i* n. Y
|
|