|
|
Internet 中所謂的「IP 位址(IP Address)」,就像現實生活中每戶人家都要擁有唯一的地址一樣,傳送者可以根據 IP 位址進行辨識,將資料傳送到唯一目的地位址完成通訊。世界各地的 IP 位址必須具有一致性,才不會導致辨識上的混亂,故必須依循共同的規範才能達成。
/ r7 D+ e0 d2 b目前我們所使用的 IP 位址為第四版 IP 位址,一般稱為 IPv4 位址。為滿足使用上的需求,又陸陸續續發展 IPv5、IPv6,IPv5 是提供給 Stream Protocol 實驗協定使用,而 IPv6 則是 IPv4 的擴充,為因應位址數量不敷使用的問題,在標頭格式也提供動態欄位設定。
1 R/ z+ R S, h! M
; J% T7 U) P# f9 uIPv4 位址是由 32 位元所組成,一般以 8 位元為單位(octet)將 32 位元分成四部份,彼此間以 "." 做區隔,例如 "100100011.00001110.01001000.00011100",此即為「加點二進位表示法(dotted binary notation)」,由於二進位表示法太長不易記憶,故通常使用十進位來表示,上述的二進位 IP 位址即可表示成 "163.14.75.28",此即為「加點十進位表示法(dotted decimal notation)」。由於每一部份均由 8 位元所組成,故每個十進位值均介於 0 ~ 255 之間。
8 a( |8 o3 c1 P6 Q, E/ N- o- y$ F% y0 D# I
IP 位址主要分為兩部份:網路位元(Network bits)和主機位元(Host bits)。網路位元主要是用來辨識其 IP 位址是屬於哪一個網路系統;而主機位元則是用來辨識其 IP 位址在其所屬的網路系統中是屬於哪一台電腦主機。
, b3 z+ ]* }! @* Y9 Z
2 M! e( Z5 R6 M6 Z- ^9 n IP 位址 = 網路位元 + 主機位元 $ H8 F8 w+ r6 f
2 z9 c1 | B9 _4 o2 cIPv4 將位址分成 A、B、C、D、E 五類,分別用來表示不同的網路位址種類,各類的位址型態可從左邊固定的位元進行判斷。以下為各類 IP 位址的格式,其中沒有框的位元為固定位元,用以判別位址是屬於哪一類,N 代表網路位元,H 代表主機位元,而 M 和 R 則分別代表 D 類的多點傳送位元(Muticast bits)和 E 類的保留位元(Reserved bits)。類別 A、B、C IP 位址是最常使用的,而類別 D、E IP位址則是提供特殊用途。
s$ F# m9 H f6 J2 D
. d: y% j5 X* K# C 類別 A IP 位址:0NNNNNNN.HHHHHHHH.HHHHHHHH.HHHHHHHH J2 G w" u! |* L8 G
類別 B IP 位址:10NNNNNN.NNNNNNNN.HHHHHHHH.HHHHHHHH + C+ T9 C6 @2 v4 F" |( l0 }
類別 C IP 位址:110NNNNN.NNNNNNNN.NNNNNNNN.HHHHHHHH & E: H/ O* j; D8 J
類別 D IP 位址:1110MMMM.MMMMMMMM.MMMMMMMM.MMMMMMMM
& R9 i: @- m1 _# L 類別 E IP 位址:1111RRRR.RRRRRRRR.RRRRRRRR.RRRRRRRR ) m4 l: v5 {" s$ ?
% D% c# {5 J( p+ F
N:網路位元 H:主機位元 M:群播位元 R:保留位元 ; E2 A C% o, H
( ^5 J8 b- d/ l# x g
在類別 A、B、C(有網路位元和主機位元)IP 位址中,各含有兩個特殊位址不做主機位址使用。一為將 IP 位址中所有主機位元均設為 "0",即為「網域位址(Domain Address)」,用來判斷 IP 位址之所屬網域;另將所有主機位元值均設為 "1",即為「廣播位址(Broadcast Address)」,用來對所屬網域之所有主機進行廣播。以下將分別對各類型的IP位址設定做詳細的說明。
+ e' @4 Q# t. l" w0 M; s8 F) _# h( s
% O" E1 a, I' ^. v% {: }4 _
類別 A IP 位址
3 @4 Z/ a, u) ^" l3 Y3 N
. f3 r% \8 w5 o6 e; F+ ?, \類別 A IP 位址的最左邊位元固定為 "0",後接 7 個網路位元及 24 個主機位元。由於有 7 個網路位元 "0NNNNNNN",故可提供 2^7 = 128 個網路系統,該位元組的十進位則介於 0 ~ 127 之間,其中 0 和 127 兩個網域做特殊用途使用。
. o k' W' g/ J1 k: I) E V% x/ A7 G+ Z& L# N) v5 s3 P
除了 "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 位址不足的現象。
! |8 K0 W2 y6 v, V1 M+ F g4 e0 X4 X1 E) y' x) M' o! P3 c* K
由上述可知,原本 128 個網路系統,扣掉 0、10、127 三個特殊網域,故實際上可用的網域為 1 ~ 9、11 ~ 126 共 125 個網域。 " ^) m+ j8 G4 s# I0 ~
+ N5 n! z* F+ V4 A6 K; [7 g, Z
類別 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 個。
. e% z: H) K! y4 T+ }# P0 X' j5 l% p' m, ]; g
從上述得知類別 A IP 位址可提供 125 個網域,而各網域可用( 2^24 - 2)個主機位址,故A類位址共可提供約 125 × 16,777,214 = 2,097,151,750 個 IP 位址。類別 A IP 位址已分配給早期參與 Internet 的組織機構使用,所以現在沒有空的類別 A IP 位址以供申請。 3 N3 c3 q9 p" c( b4 t
+ I2 S3 z! d1 {; P類別 A IP 位址保留 "127.0.0.1" 用來進行「迴路回測(Loopback Testing)」,主要是透過本身主機將訊息送回本身主機,以檢查主機的 TCP / IP 的設定是否正確,所使用的指令為 "ping 127.0.0.1",若 TCP / IP 設定不完整會出現錯誤訊息。
# x$ [4 ?- _7 D( q* n6 v; x! ]8 X
+ }" h* {9 w! S5 Y5 a, k類別 B IP 位址
6 d4 x. ~ {! l/ W! L2 [
2 l0 ?' n+ W8 E. A類別 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 個網路系統(網域)。 # O( z2 H; F% z( N& h# Q
/ L' O1 l {) d# M2 m7 Y類別 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 位址以供申請。 6 B' J/ y! M! F, R5 }* C
2 o, H+ n/ v8 Q4 ^* {" V( |3 i
由上述可知,類別 B IP 位址可提供 2^14 個網域,而各網域可用 65,534 個主機位址,故類別 B IP 位址共可提供約 16,376 × 65,534 = 1,073,184,784 個 IP 位址。 2 j$ u! |2 i, e% M
! W5 @2 W9 J7 u! |+ h5 }/ A
3 g t! P8 M5 z- v類別 C IP 位址 + j1 c+ k ?3 W
! `: _; Q* u. I! S, C: ?( O; I+ K4 T類別 C IP 位址的最左邊三個位元固定為 "110",後接 21 個網路位元及 8 個主機位元。IP 位址左邊第一個網路位元組 "110NNNNN" 可提供 2^5 = 32 個組合,該位元組的十進位值介於 192 ~ 223 之間,而第二、三個網路位元組 "NNNNNNNN" 則分別可提供 2^8 = 256 個組合,十進位值介於 0 ~ 255 之間,此三個網路位元組可提供 2^21 = 2,097,152 個網路系統(網域)。
) j+ a6 `+ m5 `- }: n6 B9 {1 z; U s& W! l" q# t9 D
類別 C IP 位址的 8 個主機位元則提供 2^8 = 256 個主機位址,該主機位元組的十進位值介於 0 ~ 255 之間,同樣將所有主機位元設為 "0",十進位表示法 "N.N.N.0" 為網域位址;將所有主機位元設為 "1",十進位表示法 "N.N.N.255" 為廣播位址。故 256 個主機位址扣掉網域位址和廣播位址,實際上可用主機位址有 254 個。 1 Z9 ~" `& e) X; n8 v; X
; y* ~4 g. [& ~5 g/ }& d另外,類別 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 位址。
- ^3 M- X7 s: B* _4 J9 Q C! q
- `# W- a6 }. j. [
2 ~, L6 i0 u6 l7 K+ T& \' S類別 D IP 位址 9 A# m6 u1 h" ?
& L/ \6 E7 a" d) m. Y: O/ Y類別 D IP 位址的最左邊四個位元固定為 "1110",後接 28 個群播設定位元。IP 位址的左邊第一群播位元組 "1110MMMM" 可提供 2^4 個組合,十進位介於 224 ~ 239 之間,其他三個群播位元組則分別提供 2^8 個組合,十進位值介於 0 ~ 255 之間,故類別 D IP 位址共可提供 2^28 = 268,435,456 個群播 IP 位址。多點傳送操作並沒有區分網路位元與主機位元。
1 ]7 p9 J4 U ]3 X! b
9 Y7 i; L9 ~2 n& U$ p1 y4 B8 Q所謂「多點傳送(Muticasting)」,或稱「群播」,是指一電腦主機可透過「多點傳送路由器(MRouter;Muticasting Router)」同時對多部主機傳送相同的資料。使用單點傳送(1 對 1)將相同資料送到三台主機,需要傳送三次才能完成;而多點傳送(1 對多)只需傳送一次即可,故多點傳送可以降低在網路上的資訊傳送量。欲進行多點傳送的群組必須擁有一個類別 D IP 位址方可彼此連繫。 + h( J5 l+ `# \- V. P
1 u% T( z2 d# v; R4 x) }: B* 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)則是保留給管理用途。 & a# {; T: P# h% `% x, E' G) W; ?
8 N* K% l" \9 B9 `- M$ bMicrosoft 支援類別 D IP 位址,作為應用程式多點傳送資料至 Internet 上可多點傳送的主機。
) F; g) b9 d( v# k0 [
, d+ X4 j; U( I; H( k" f
, j9 q% k+ Q4 E類別 E IP 位址 ; q# F- X. Z5 @) w. ]' s
' p0 u% {* |5 c+ C類別 E IP 位址最左邊四個位元固定為 "1111",後接 28 個保留位元。IP 位址的左邊第一個保留位元組 "1111RRRR" 之十進位值介 240 ~ 255 之間,類別 E IP 位址和類別 D IP 位址一樣,沒有網路位元和主機位元,共可提供 2^28 = 268,435,456 個 IP 位址。類別 E IP 位址是保留給實驗網路所使用。 / r# N% @. q5 e- @. O5 v1 _% M L, y
+ {: d& ^8 b+ I& F0 D m
, Q! G- n( D6 ?4 q
網路 ID 指南
0 u) Y$ y# f/ d( X" N7 I
6 _$ `8 U9 U7 _8 @. m網路 ID 識別位於相同實體網路上的 TCP/IP 主機。位在相同實體網路上的所有主機都必須指派相同的網路 ID,和其它主機通訊。指派網路 ID 時,請遵循以下指南: # C: M4 i0 S6 [! t4 i" R# v
. K8 m6 R4 [5 ]0 x3 I/ |
/ o0 `2 R2 L6 r* y網路位址必須是 IP internet 中的唯一值。如果您計劃以直接路由連線至公用 Internet,網路 ID 必須是 Internet 上的唯一值。如果您不打算連線至公用 Internet,區域網路 ID 必須是您的私有 internet 上的唯一值。 ) G1 U& b% G7 p+ S' \: }- \
! {- G" E9 T+ o
網路 ID 不可以數字 127 開頭。類別 A 位址中的數字 127 保留給內部反向迴圈功能使用。
9 }# i! }3 B# S; H9 ^% q
0 \6 t' n5 ~9 c+ Z網路 ID 中的所有位元不可設定為 1。網路 ID 中的全部 1 保留作為 IP 廣播位址使用。
5 k2 k% A. L% A* F" l2 V
4 { {8 f# V$ {網路 ID 中的所有位元不可設定為 0。網路 ID 中的全部 0 是用來表示區域網路上的指定主機,且不會被尋徑。 7 r9 z# f+ ^7 q9 W4 f$ k
$ Z2 x( G! f+ R* B1 F8 Z" k 網路 ID 類別範圍
7 A2 W9 D* t% v% h+ h( W. V+ W; M; k# W5 Q9 t: I
位址類別 第一個網路 ID 最後一個網路 ID ( G6 w& N5 j9 V+ U
───────────────────────
3 A( [4 L2 ?9 \5 L1 B 類別 A 1.0.0.0 126.0.0.0
- H2 q/ G. B( w* x% v! | 類別 B 128.0.0.0 191.255.0.0
, R0 V. V" M' c) Z5 T) z$ s2 s, v 類別 C 192.0.0.0 223.255.255.0 ) K: R: Q2 m# s2 k' ?% j
7 [, W, J5 s6 ~, V9 n+ O( x. \% {& R8 \
主機 ID 指南 5 T2 @/ i" ~- ^+ Q* D
; m! B, I1 b* X" u F主機 ID 識別網路中的 TCP/IP 主機。 IP 網路 ID 與 IP 主機 ID 的結合即代表 IP 位址。指派主機 ID 時,請遵循以下指南:
7 o$ {0 ?3 c7 o6 O# g$ B+ X! E$ x) O% @! l% r: P
! @3 b. R0 [+ ]7 @主機 ID 必須是網路 ID 中的唯一值。
: p4 Z( }3 G7 i( v7 W. m3 m5 a( r
主機 ID 中的所有位元不可設定為 1,因為此主機 ID 保留作為廣播位址,傳送封包至網路上的所有主機。 ' o6 G+ v3 d) o
+ }1 Y0 D) K7 E6 p0 g7 A主機 ID 中的所有位元不可設定為 0,因為此主機 ID 保留用來表示 IP 網路 ID 。
4 y0 ]: X/ m& ]3 H* d
9 K, ]* `: i1 h1 C! X% M" b 主機 ID 類別範圍 $ D: u* i( V/ `( H: e2 U
$ s/ s+ L5 Z$ w4 y; s+ J( S' b 位址類別 第一個主機 ID 最後一個主機 ID & R+ B4 x' }8 f
────────────────────────
$ ?4 E, J7 ]( p3 @0 v# Y 類別 A w.0.0.1 w.255.255.254 5 J' K( H( U Y2 X1 }& }; c
類別 B w.x.0.1 w.x.255.254
8 B }- I$ {1 S* T 類別 C w.x.y.1 w.x.y.254 6 k1 P, F% O/ I8 C* s% A
' A; e6 X0 j9 p& X9 x# y: J
s2 `) d# f( h( Y- n虛擬 IP 位址指南
/ b- s. m) Y' W* k( @7 A$ N
3 E4 P6 H( @' _ r& l依據RFC1918:Address Allocation for Private Internets(原為RFC1597),有三個區段的 IP 是作為 Private IP 使用:
; U/ h: K' P/ S/ M9 F* h$ N
7 @+ w! B3 M) m+ B( B. q 位址類別 第一個主機 ID 最後一個主機 ID # H( W' `) r" B9 D! v* I, p2 g. }3 P
────────────────────────
* c E7 t$ D/ |6 O 類別 A 10.0.0.1 10.255.255.254 3 A5 e3 e2 _& q; e# ]$ V
類別 B 172.16.0.1 172.31.255.254
. J# @' g2 t5 C$ N 類別 C 192.168.0.1 192.168.255.254
! m0 M; O1 S- Z0 |8 g$ j- R; s; d* v" J
當使用以上的 IP 位址的時候是有所限制的(此部份引自 Albert_Lu):
$ e5 a5 G; N( d. s* v
" D2 J. X$ X3 w/ \/ n; A1 p( L; q" b$ r' C U
虛擬 IP 位址的路由資訊不能對外散播。
+ N' m }" |3 O" R" o# ^1 I: f# o1 R5 U% S- K: j
使用虛擬 IP 位址作為來源或目的地址的封包,不能透過 Internet 來轉送。 * T& n+ k, N$ ~
& k; O: j N7 D2 J關於虛擬 IP 位址的參考紀錄(如 DNS),只能限於內部網路使用。 ) F+ W( y" r/ L* {* C
% G0 w: K }4 d: E由於有以上的限制,當我們使用這些虛擬 IP 位址來設定網路的時候,就無需擔心會和其它也使用相同位址的網路衝突了。 4 Q+ {8 f* E( Q: o% B4 o( g# w" A
|
|