|
|
Internet 中所謂的「IP 位址(IP Address)」,就像現實生活中每戶人家都要擁有唯一的地址一樣,傳送者可以根據 IP 位址進行辨識,將資料傳送到唯一目的地位址完成通訊。世界各地的 IP 位址必須具有一致性,才不會導致辨識上的混亂,故必須依循共同的規範才能達成。 V) W8 W! n0 O" M
目前我們所使用的 IP 位址為第四版 IP 位址,一般稱為 IPv4 位址。為滿足使用上的需求,又陸陸續續發展 IPv5、IPv6,IPv5 是提供給 Stream Protocol 實驗協定使用,而 IPv6 則是 IPv4 的擴充,為因應位址數量不敷使用的問題,在標頭格式也提供動態欄位設定。
% ^% i/ W- H& p: [& R! {5 s# c" }8 j$ V- C1 |" B# Z; L/ l
IPv4 位址是由 32 位元所組成,一般以 8 位元為單位(octet)將 32 位元分成四部份,彼此間以 "." 做區隔,例如 "100100011.00001110.01001000.00011100",此即為「加點二進位表示法(dotted binary notation)」,由於二進位表示法太長不易記憶,故通常使用十進位來表示,上述的二進位 IP 位址即可表示成 "163.14.75.28",此即為「加點十進位表示法(dotted decimal notation)」。由於每一部份均由 8 位元所組成,故每個十進位值均介於 0 ~ 255 之間。
) a+ I# j& O. T+ w; t4 c- ?. W. O6 x4 k8 ~$ g
IP 位址主要分為兩部份:網路位元(Network bits)和主機位元(Host bits)。網路位元主要是用來辨識其 IP 位址是屬於哪一個網路系統;而主機位元則是用來辨識其 IP 位址在其所屬的網路系統中是屬於哪一台電腦主機。
; k. b* c2 ]: }- l5 l3 i- l% x
' t3 w6 q! d+ M, F, T+ V IP 位址 = 網路位元 + 主機位元 3 y3 {5 e$ p' f3 |# \4 X3 U, l
; V& }6 w0 F/ I+ N9 B
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 ]% s) O, H8 o; u/ }; g7 V: X
類別 A IP 位址:0NNNNNNN.HHHHHHHH.HHHHHHHH.HHHHHHHH 4 R f6 z9 E% E! m" P- w9 H
類別 B IP 位址:10NNNNNN.NNNNNNNN.HHHHHHHH.HHHHHHHH
6 f# n6 w( N M, B; _ 類別 C IP 位址:110NNNNN.NNNNNNNN.NNNNNNNN.HHHHHHHH ; I! R5 g. ~( I0 @) j( x
類別 D IP 位址:1110MMMM.MMMMMMMM.MMMMMMMM.MMMMMMMM
2 q: n' E0 `# a! @4 b6 U! r" b 類別 E IP 位址:1111RRRR.RRRRRRRR.RRRRRRRR.RRRRRRRR
4 t% ~( R9 E' ]$ G7 B& _" ]7 ]' s! A, y
N:網路位元 H:主機位元 M:群播位元 R:保留位元
9 [5 C( }5 `$ B9 [& O M7 y& t" |5 U0 y6 `
在類別 A、B、C(有網路位元和主機位元)IP 位址中,各含有兩個特殊位址不做主機位址使用。一為將 IP 位址中所有主機位元均設為 "0",即為「網域位址(Domain Address)」,用來判斷 IP 位址之所屬網域;另將所有主機位元值均設為 "1",即為「廣播位址(Broadcast Address)」,用來對所屬網域之所有主機進行廣播。以下將分別對各類型的IP位址設定做詳細的說明。
$ X* g3 v) @3 U2 o+ Q1 c; q- l' m% z& c9 g! w' @ n* p
0 C/ r6 S0 d: n+ ^0 o! d' _. U" f類別 A IP 位址 6 `! c, |. W2 h8 u
* x& |6 L/ k2 U4 ?% F( p類別 A IP 位址的最左邊位元固定為 "0",後接 7 個網路位元及 24 個主機位元。由於有 7 個網路位元 "0NNNNNNN",故可提供 2^7 = 128 個網路系統,該位元組的十進位則介於 0 ~ 127 之間,其中 0 和 127 兩個網域做特殊用途使用。
% D: t1 o3 L1 `6 r8 b% `3 ?/ }. Q
1 Q8 `. W! s! T$ {$ l除了 "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 位址不足的現象。
7 K* O, Y' `" g7 s7 O- c8 y) V3 Z8 ^+ D* L: a' l
由上述可知,原本 128 個網路系統,扣掉 0、10、127 三個特殊網域,故實際上可用的網域為 1 ~ 9、11 ~ 126 共 125 個網域。
! z* z0 i5 O/ g8 y" w5 Z& n9 a) ]2 P! {
類別 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 個。 " N1 W: N- j+ s' D
1 b u+ |3 @( p) i7 b1 W& n) X; J從上述得知類別 A IP 位址可提供 125 個網域,而各網域可用( 2^24 - 2)個主機位址,故A類位址共可提供約 125 × 16,777,214 = 2,097,151,750 個 IP 位址。類別 A IP 位址已分配給早期參與 Internet 的組織機構使用,所以現在沒有空的類別 A IP 位址以供申請。
W- a% q8 R/ E$ R
( q& ? [1 y3 N3 @% g3 }類別 A IP 位址保留 "127.0.0.1" 用來進行「迴路回測(Loopback Testing)」,主要是透過本身主機將訊息送回本身主機,以檢查主機的 TCP / IP 的設定是否正確,所使用的指令為 "ping 127.0.0.1",若 TCP / IP 設定不完整會出現錯誤訊息。
1 Q/ h3 i ]0 L$ [; q) a; W# |8 _' }* k! c6 r0 P& \7 W
& _7 F! b6 D% [2 Q% H3 U& H
類別 B IP 位址
* T$ ^7 t, O/ X5 S
% h0 a2 ]) U' \3 d9 J類別 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! U5 ^' q0 n9 Q) |
$ s+ g; F0 d+ b! J
類別 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 位址以供申請。 ! \) r2 I0 ^# K
: `+ i3 Q$ E- n0 ^ a. f& ?, X
由上述可知,類別 B IP 位址可提供 2^14 個網域,而各網域可用 65,534 個主機位址,故類別 B IP 位址共可提供約 16,376 × 65,534 = 1,073,184,784 個 IP 位址。
) K1 W# k+ n/ X6 p& ^& H# }, ?+ m8 V$ u9 D
3 D1 q8 Q, J' V& I8 q- ]; k
類別 C IP 位址
b' c1 ]/ i: x
V3 `$ f; f4 X; A5 w1 c7 p) ?類別 C IP 位址的最左邊三個位元固定為 "110",後接 21 個網路位元及 8 個主機位元。IP 位址左邊第一個網路位元組 "110NNNNN" 可提供 2^5 = 32 個組合,該位元組的十進位值介於 192 ~ 223 之間,而第二、三個網路位元組 "NNNNNNNN" 則分別可提供 2^8 = 256 個組合,十進位值介於 0 ~ 255 之間,此三個網路位元組可提供 2^21 = 2,097,152 個網路系統(網域)。
5 ?. ^' g- J+ t6 s0 Q; I- h
* z9 H1 Q+ a. f8 d類別 C IP 位址的 8 個主機位元則提供 2^8 = 256 個主機位址,該主機位元組的十進位值介於 0 ~ 255 之間,同樣將所有主機位元設為 "0",十進位表示法 "N.N.N.0" 為網域位址;將所有主機位元設為 "1",十進位表示法 "N.N.N.255" 為廣播位址。故 256 個主機位址扣掉網域位址和廣播位址,實際上可用主機位址有 254 個。 5 _0 J, X: n9 h5 W: W5 R8 f1 H9 j2 m
* ]" U* S# O6 S% T1 x0 g* W' r另外,類別 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 i* c9 x6 v9 x* F
8 n& y- [+ g% I. n' c$ N3 |- H+ w+ H* p4 X
類別 D IP 位址 ( R8 Z" @- @7 j' x8 @
& ]: \8 S6 _/ ?
類別 D IP 位址的最左邊四個位元固定為 "1110",後接 28 個群播設定位元。IP 位址的左邊第一群播位元組 "1110MMMM" 可提供 2^4 個組合,十進位介於 224 ~ 239 之間,其他三個群播位元組則分別提供 2^8 個組合,十進位值介於 0 ~ 255 之間,故類別 D IP 位址共可提供 2^28 = 268,435,456 個群播 IP 位址。多點傳送操作並沒有區分網路位元與主機位元。
1 a& S5 G& U9 F. q
, ~3 x* l! Q; }. P8 S所謂「多點傳送(Muticasting)」,或稱「群播」,是指一電腦主機可透過「多點傳送路由器(MRouter;Muticasting Router)」同時對多部主機傳送相同的資料。使用單點傳送(1 對 1)將相同資料送到三台主機,需要傳送三次才能完成;而多點傳送(1 對多)只需傳送一次即可,故多點傳送可以降低在網路上的資訊傳送量。欲進行多點傳送的群組必須擁有一個類別 D IP 位址方可彼此連繫。 8 s2 S9 h; V5 t2 z! v
2 I9 ]5 y# |' o# 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)則是保留給管理用途。
# C b0 V7 @8 v! |, ]8 e% Z; P' @" x3 i- C* {$ a
Microsoft 支援類別 D IP 位址,作為應用程式多點傳送資料至 Internet 上可多點傳送的主機。 _9 ^+ n% E5 E, d
2 w) p& g# M# m9 }; m
3 @) O _, n+ ]8 x8 e' K V$ z; |類別 E IP 位址
; K1 V) o+ i, s' _
6 e2 y- _; `' [8 E" n類別 E IP 位址最左邊四個位元固定為 "1111",後接 28 個保留位元。IP 位址的左邊第一個保留位元組 "1111RRRR" 之十進位值介 240 ~ 255 之間,類別 E IP 位址和類別 D IP 位址一樣,沒有網路位元和主機位元,共可提供 2^28 = 268,435,456 個 IP 位址。類別 E IP 位址是保留給實驗網路所使用。
5 t* G- ^5 L6 c% l" Y1 W# p. S
" N' | M) ?, P, C8 G
" \% Y! H7 L, f: x2 t網路 ID 指南
' _$ m& Y; U3 n# N5 {
/ a1 K( t+ f3 u2 M' x0 }, p$ p網路 ID 識別位於相同實體網路上的 TCP/IP 主機。位在相同實體網路上的所有主機都必須指派相同的網路 ID,和其它主機通訊。指派網路 ID 時,請遵循以下指南:
; w0 a& W" W5 Z" j1 P @3 r
% l! d/ {% _. \* o" q5 p4 `$ b s7 R9 z8 i/ H6 r
網路位址必須是 IP internet 中的唯一值。如果您計劃以直接路由連線至公用 Internet,網路 ID 必須是 Internet 上的唯一值。如果您不打算連線至公用 Internet,區域網路 ID 必須是您的私有 internet 上的唯一值。
- x+ G( ]+ K h6 l: R ] }/ H5 h" o/ |! P* ^" f
網路 ID 不可以數字 127 開頭。類別 A 位址中的數字 127 保留給內部反向迴圈功能使用。 6 `$ B, M( q( C- t2 I% u: M
4 H- R5 e+ ~9 U網路 ID 中的所有位元不可設定為 1。網路 ID 中的全部 1 保留作為 IP 廣播位址使用。
m/ ]& ^& z1 v. l" K$ N, w
5 X; e9 O y5 [) I網路 ID 中的所有位元不可設定為 0。網路 ID 中的全部 0 是用來表示區域網路上的指定主機,且不會被尋徑。
% {9 t+ q7 ]; Q; C+ B% c1 d1 F, V7 s
Z' W% W) E" a. g 網路 ID 類別範圍
6 q9 w5 g' ?/ v+ ]6 C P* B2 `) J5 x- i, W4 r: F
位址類別 第一個網路 ID 最後一個網路 ID 9 C2 z! ~1 O) b: _( ^% r* U
─────────────────────── ' M# y5 [2 K$ `- ?# s# z. [
類別 A 1.0.0.0 126.0.0.0
( _: E( i2 }! i3 {$ A s 類別 B 128.0.0.0 191.255.0.0
; ~1 n9 S8 V6 A8 {% p1 A* j 類別 C 192.0.0.0 223.255.255.0
6 I9 I3 p2 ]& y/ }4 C) R
6 j( c' Z+ T- s: y$ _0 e0 y/ I4 v$ F! I, B1 P
主機 ID 指南 0 k: [) t/ _, _" V c, I8 `* t
O) R. {( i; j% t% F主機 ID 識別網路中的 TCP/IP 主機。 IP 網路 ID 與 IP 主機 ID 的結合即代表 IP 位址。指派主機 ID 時,請遵循以下指南: 7 _! n' W2 |0 s
' t9 [9 {. W: V4 a
2 e0 b5 s4 F) L ?! O# F% J% p主機 ID 必須是網路 ID 中的唯一值。
3 f8 ], ~1 I& f2 c! V6 o$ x# N% \$ g" Y: z. O( G6 R5 X
主機 ID 中的所有位元不可設定為 1,因為此主機 ID 保留作為廣播位址,傳送封包至網路上的所有主機。 3 z: k2 I2 N' C- [# P" Z; ^ Q
0 ~! c3 E: P: t5 c7 I! C R' d
主機 ID 中的所有位元不可設定為 0,因為此主機 ID 保留用來表示 IP 網路 ID 。 0 M8 G4 v5 ~6 O! W- c
) N" t) u6 E8 K7 N! e F8 b# O 主機 ID 類別範圍
1 M6 W/ ~7 ]" K& ^
( T) @; {; n7 r. M% A 位址類別 第一個主機 ID 最後一個主機 ID
7 ?7 A/ N! t9 a0 J ──────────────────────── - | ~7 N- h8 H2 U* F2 p
類別 A w.0.0.1 w.255.255.254 8 B' h! |0 h w8 U
類別 B w.x.0.1 w.x.255.254
+ ^1 ^; z/ I1 U$ v+ c 類別 C w.x.y.1 w.x.y.254 / r7 s* y8 I5 _7 S9 F' a5 R# Y
# T% P/ J& C% w8 T' k
. P l* n3 w/ o2 c; y: t虛擬 IP 位址指南 : q& }! k8 Y) o
- C! }' g$ d# v) `+ G; F依據RFC1918:Address Allocation for Private Internets(原為RFC1597),有三個區段的 IP 是作為 Private IP 使用: 5 J6 G5 L( w" p. X
# P( A4 v: B2 P( k a" E( z' Y
位址類別 第一個主機 ID 最後一個主機 ID
/ s5 L D3 d. h- w, ]5 A( g% j ──────────────────────── ; J- j1 p2 j# J% K; Z3 v
類別 A 10.0.0.1 10.255.255.254
$ _" a( H' U, { d3 u& R5 R 類別 B 172.16.0.1 172.31.255.254
6 H2 {: |+ [' N7 ]' T 類別 C 192.168.0.1 192.168.255.254 ' U' _3 E! B& p8 K2 f8 A
- A2 O9 O. f+ b) [8 ? I# B2 T4 R當使用以上的 IP 位址的時候是有所限制的(此部份引自 Albert_Lu): ; ?/ B% l0 q( L+ f" _) f( z, a8 `$ W* h
! L) p+ ` U& j- Y c( s
8 ~# [9 Q1 C5 j& e; V: h3 \- g虛擬 IP 位址的路由資訊不能對外散播。 ) ?9 e* k4 \; s$ f. z7 W% S7 H. [
D$ O* e- q0 l+ i
使用虛擬 IP 位址作為來源或目的地址的封包,不能透過 Internet 來轉送。
1 n5 \6 j8 e. q0 H& ~( J
. L& |5 L2 e g. J* O關於虛擬 IP 位址的參考紀錄(如 DNS),只能限於內部網路使用。 ) U3 Q/ R5 }8 @0 [
l9 Y3 t: f7 a- S5 p- _
由於有以上的限制,當我們使用這些虛擬 IP 位址來設定網路的時候,就無需擔心會和其它也使用相同位址的網路衝突了。 # e2 d4 k/ {9 S8 h9 F5 z5 l
|
|