文章主題 : 徹底明白IP地址的含義發表於 : 週二 12月 14, 2004 11:22 am
註冊時間: 週三 10月 16, 2002 8:58 am
文章: 4137 徹底明白IP地址的含義
作者:擔子 發文時間:2004.11.29
不管是學習網路還是上網,IP位址都是出現頻率非常高的詞。Windows系統中設置IP位址的介面如圖1所示,圖中出現了IP地址、子網路遮罩、默認閘道和DNS伺服器這幾個需要設置的地方,只有正確設置,網路才能通,那這些名詞都是什麼意思呢?學習IP位址的相關知識時還會遇到網路位址、廣播位址、子網等概念,這些又是什麼意思呢?
圖1
要解答這些問題,先看一個日常生活中的例子。如圖2所示,住在北大街的住戶要能互相找到對方,必須各自都要有個門牌號,這個門牌號就是各家的位址,門牌號的表示方法為:北大街+XX號。假如1號住戶要找6號住戶,過程是這樣的,1號在大街上喊了一聲:"誰是6號,請回答。",這時北大街的住戶都聽到了,但只有6號作了回答,這個喊的過程叫"廣播",北大街的所有用戶就是他的廣播範圍,假如北大街共有20個用戶,那廣播地址就是:北大街 21號。也就是說,北大街的任何一個用戶喊一聲能讓"廣播位址-1"個用戶聽到。
圖2
從這個例中可以抽出下面幾個詞:
街道地址:北大街,如果給該大街一個位址則用第一個住戶的位址-1,此例為:北大街0號
住戶的號:如1號、2號等。
住戶的地址:街道地址+XX號,如北大街 1號、北大街 2號等
廣播地址:最後一個住戶的位址+1,此例為:北大街21號
Internet網路中,每個上網的電腦都有一個像上述例子的位址,這個位址就是IP位址,是分配給網路設備的門牌號,為了網路中的電腦能夠互相訪問,IP位址=網路位址+主機位址,圖1中的IP位址是192.168.100.1,這個位址中包含了很多含義。如下所示:
網路位址(相當於街道地址): 192.168.100.0
主機位址(相當於各戶的門號): 0.0.0.1
IP地址(相當於住戶地址): 網路位址+主機位址=192.168.100.1
廣播地址: 192.168.100.255
這些位址是如何計算出來的呢?為什麼計算這些位址呢?要想知道如何,先要明白一個道理,學習網路的目的就是如何讓網路中的電腦相互通訊,也就是說要圍繞著"通"這個字來學習和理解網路中的概念,而不是只為背幾個名詞。
注:192.168.100.1是私有位址,是不能直接在Internet網路中應用的,上Internet要轉為公有地址,下面詳細說明。
一、為什麼要計算網路位址
一句話就是讓網路中的電腦能夠相互通訊。先看看最簡單的網路,圖3中是用網線(交叉線)直接將兩台電腦連起來。下面是幾種IP位址設置,看看在不同設置下網路是通還是不通。
1、設置1號機的IP位址為192.168.0.1子網路遮罩為255.255.255.0,2號機的IP地址為192.168.0.200子網路遮罩為255.255.255.0,這來台電腦就能正常通訊。
2、如果1號機地址不變,將2號機的IP地址改為192.168.1.200子網路遮罩還是為255.255.255.0,那這兩台就無法通訊。
3、設置1號機的IP位址為192.168.0.1子網路遮罩為255.255.255.192,2號機的IP地址為192.168.0.200子網路遮罩為255.255.255.192,注意和第1種情況的區別在於子網路遮罩,1為255.255.255.0本例是255.255.255.192這來台電腦就能正常通訊。
圖3
第1種情況能通是因為這兩台電腦處在同一網路192.168.0.0,所以能通,而2、3種情況下兩台電腦處在不同的網路,所以不通。
這裏先給個結論:用網線直接連接的電腦或是通過HUB或普通交換機間接的電腦之間要能夠相互通,電腦必須要在同一網路,也就是說它們的網路位址必須相同,而且主機位址必須不一樣。如果不在一個網路就無法通。這就像我們上面舉的例子,同是北大街的住戶由於街道名稱都是北大街,且各自的門牌號不同,所以能夠相互找到對方。
計算網路位址就是判斷網路中的電腦在不在同一網路,在就能通,不在就不能通。注意,這裏說的在不在同一網路指的是IP位址而不是物理連接。那麼如何計算呢?
二、如何計算網路位址
我們日常生活中的地址如:北大街1號,從字面上就能看出街道地址是北大街,而我們從IP地址中卻難以看出網路位址,要計算網路位址,必須借助我們上邊提到過的子網路遮罩。
計算過程是這樣的,將IP位址和子網路遮罩都換算成二進位,然後進行與運算,結果就是網路位址。與運算如下所示,上下對齊,1位1位的算,1與1=1 ,其餘組合都為0
圖4
例如:計算IP位址為:202.99.160.50子網路遮罩是255.255.255.0的網路位址步驟如下:
1)將IP地址和子網路遮罩分別換算成二進位
202.99.160.50 換算成二進位為 11001010•01100011•10100000•00110010
255.255.255.0 換算成二進位為 11111111•11111111•11111111•00000000
2)將二者進行與運算
圖5
3)將運算結果換算成十進位,這就是網路位址。
11001010•01100011•10100000•00000000換算成十進位就是202.99.160.0
現在我們就可以解答上面三種情況的通與不通的問題了。
1、從下面運算結果可以看出二台電腦的網路位址都為192.168.0.0且IP位址不同,所以可以通。
圖6
2、從下面運算結果可以看出1號機的網路位址為192.168.0.0,2號機的網路位址為192.168.1.0 不在一個網路,所以不通。
圖7
3、從下面運算結果可以看出1號機的網路位址為192.168.0.0,2號機的網路位址為192.168.0.192 不在一個網路,所以不通
圖8
相信看到這應該明白了為何計算網路位址和如何計算了,但也許還有很多疑問,如IP地址為什麼寫成這樣,子網路遮罩到底是怎麼回事等等,別急,下面慢慢介紹。(
http://tech.ccidnet.com/pub/article/c10 ... 65_p1.html
回頂端
peter 文章主題 : 發表於 : 週二 12月 14, 2004 11:24 am
註冊時間: 週三 10月 16, 2002 8:58 am
文章: 4137 徹底明白IP地址——IP地址的介紹
作者:擔子 發文時間:2004.12.13
徹底明白IP地址(1)
IP地址的介紹
1、IP位址的表示方法
IP位址 = 網路號+主機號
把整個Internet網堪稱單一的網路,IP位址就是給每個連在Internet網的主機分配一個在全世界範圍內唯一的標示符,Internet管理委員會定義了A、B、C、D、E五類地址,在每類位址中,還規定了網路編號和主機編號。在 TCP/IP協定中,IP位址是以二進位數字字形式出現的,共32bit,1bit就是二進位中的1位元,但這種形式非常不適用於人閱讀和記憶。因此Internet管理委員會決定採用一種"點分十進位表示法"表示IP位址:面向用戶的文檔中,由四段構成的32 比特的IP位址被直觀地表示為四個以圓點隔開的十進位整數,其中,每一個整數對應一個位元組(8個比特為一個位元組稱為一段)。A、B、C類最常用,下面加以介紹。本文介紹的都是版本4的IP位址,稱為IPv4.
從上圖可以看出:
• A類地址:A類位址的網路標識由第一組8位元二進位數字表示, A類位址的特點是網路標識的第一位二進位數字取值必須為"0"。不難算出,A類位址第一個位址為00000001,最後一個位址是01111111,換算成十進位就是127,其中127留作保留位址,A類位址的第一段範圍是:1~126,A類位址允許有27 -2=126個網段(減2是因為0不用,127留作它用),網路中的主機標識占3組8位元二進位數字,每個網路允許有224-2=16777216台主機(減2是因為全0地址為網路位址,全1為廣播地址,這兩個位址一般不分配給主機)。通常分配給擁有大量主機的網路。
• B類地址:B類位址的網路標識由前兩組8位元二進位數字表示,網路中的主機標識占兩組8位元二進位數字,B類位址的特點是網路標識的前兩位元二進位數字取值必須為"10"。 B類位址第一個位址為10000000,最後一個位址是10111111,換算成十進位B類位址第一段範圍就是128~191,B類位址允許有214 =16384個網段,網路中的主機標識占2組8位元二進位數字,每個網路允許有216-2=65533台主機,適用於結點比較多的網路。
• C類地址:C類位址的網路標識由前3組8位元二進位數字表示,網路中主機標識占1組8位元二進位數字C類位址的特點是網路標識的前3位元二進位數字取值必須為"110"。C類位址第一個位址為11000000,最後一個位址是11011111,換算成十進位C類位址第一段範圍就是192~223,C類位址允許有221 =2097152個網段,網路中的主機標識占1組8位元二進位數字,每個網路允許有28-2= 254台主機,適用於結點比較少的網路。
有些人對範圍是2x不太理解,舉個簡單的例子加以說明。如C類網,每個網路允許有28-2= 254台主機是這樣來的。因為C類網的主機位元是8位元,變化如下:
00000000
00000001
00000010
00000011
……
11111110
11111111
除去00000000和11111111不用外,從00000001到11111110共有254個變化,也就是28-2個。下圖是IP位址的使用範圍。
2、幾個特殊的IP地址
1)私有地址
上面提到IP地址在全世界範圍內唯一,看到這句話你可能有這樣的疑問,像192.168.0.1這樣的地址在許多地方都能看到,並不唯一,這是為何?Internet管理委員會規定如下位址段為私有位址,私有位址可以自己組網時用,但不能在Internet網上用,Internet網沒有這些位址的路由,有這些位址的電腦要上網必須轉換成為合法的IP位址,也稱為公網位址,這就像有很到的世界公園,每個公園內都可命名相同的大街,如香榭麗舍大街,但對外我們只能看到公園的地址和真正的香榭麗舍大街。下面是A、B、C類網路中的私有位址段。你自己組網時就可以用這些位址了。
10.0.0.0~10.255.255.255
172.16.0.0~172.131.255.255
192.168.0.0~192.168.255.255
2)回送地址
A類網路位址127是一個保留位址,用於網路軟體測試以及本地機進程間通信,叫做回送地址(loopback address)。無論什麼程式,一旦使用回送位址發送資料,協定軟體立即返回之,不進行任何網路傳輸。含網路號127的分組不能出現在任何網路上。
小技巧:
• Ping 127.0.0.1,如果回饋資訊失敗,說明IP協定棧有錯,必須重新安裝TCP/IP協議。如果成功,ping本機IP位址,如果回饋資訊失敗,說明你的網卡不能和IP協定棧進行通信。
• 如果網卡沒接網線,用本機的一些服務如Sql Server、IIS等就可以用127.0.0.1這個位址。
3)廣播地址
TCP/IP規定,主機號全為"1"的網路位址用於廣播之用,叫做廣播地址。所謂廣播,指同時向同一子網所有主機發送報文。
4)網路位址
TCP/IP協議規定,各位全為"0"的網路號被解釋成"本"網路。由上可以看出:一、含網路號127的分組不能出現在任何網路上;二、主機和閘道不能為該位址廣播任何尋徑資訊。由以上規定可以看出,主機號全"0"全"1"的位址在TCP/IP協議中有特殊含義,一般不能用作一台主機的有效位址。
3、子網路遮罩
從上面的例子可以看出,子網路遮罩的作用就是和IP位址與運算後得出網路位址,子網路遮罩也是32bit,並且是一串1後跟隨一串0組成,其中1表示在IP位址中的網路號對應的位元數,而0表示在IP位址中主機對應的位元數。
1)標準子網路遮罩
A類網路(1 - 126) 缺省子網路遮罩:255•0•0•0
255•0•0•0 換算成二進位為 11111111•00000000•00000000•00000000
可以清楚地看出前8位是網路位址,後24位元是主機位址,也就是說,如果用的是標準子網路遮罩,看第一段位址即可看出是不是同一網路的。如21.0.0.0.1和21.240.230.1,第一段為21屬於A類,如果用的是默認的子網路遮罩,那這兩個位址就是一個網段的。
B類網路(128 - 191) 缺省子網路遮罩:255•255•0•0
C類網路(192 - 223) 缺省子網路遮罩:255•255•255•0
B類、C類分析同上。
2) 特殊的子網路遮罩
標準子網路遮罩出現的都是255和0的組合,在實際的應用中還有下面的子網路遮罩
255•128•0•0
255•192•0•0
。。。。。。
255•255•192•0
255•255•240•0
。。。。。。
255•255•255•248
255•255•255•252
這些子網路遮罩又是什麼意思呢?這些子網路遮罩的出現是為了把一個網路劃分成多個網路。
還記得上面的例子嗎?如下所示:192•168•0•1和192•168•0•200如果是默認遮罩255.255.255.0兩個位址就是一個網路的,如果遮罩變為255.255.255.192這樣各位址就不屬於一個網路了。下面的子網劃分將作詳細介紹。
表1是幾個子網路遮罩計算過程中非常有用的十進位和二進位的對照
http://tech.ccidnet.com/pub/article/c10 ... 07_p1.html
回頂端
CrazyJaves 文章主題 : 發表於 : 週五 12月 31, 2004 8:03 pm
註冊時間: 週四 12月 30, 2004 12:54 am
文章: 4 看完以後,小弟有基礎的認知嘍^^
回頂端
jeremychang 文章主題 : 發表於 : 週日 6月 11, 2006 12:07 am
註冊時間: 週五 6月 10, 2005 11:49 am
文章: 3 嗯,非常清楚,感恩!
回頂端
WlhFor 文章主題 : 發表於 : 週六 6月 17, 2006 12:34 pm
註冊時間: 週六 1月 22, 2005 9:11 pm
文章: 137 • 如果網卡沒接網線,用本機的一些服務如Sql Server、IIS等就可以用127.0.0.1這個位址。
===========================================
小弟是新手,有點不了解Sql Server、IIS可以使用127.0.0.1這位址,平常我們在2k有裝iis下直接打127.0.0.1,是可以連至本機的web上啊,sql使用odbc時,也可以用127.0.0.1連本機的sql,而平常當然網路線都接著,有點不了解,是否有那位大大替小弟解惑,感恩~
回頂端
lu 文章主題 : 發表於 : 週一 6月 19, 2006 7:28 am
註冊時間: 週三 9月 25, 2002 10:57 am
文章: 7761
來自: R.O.C WlhFor 寫:
• 如果網卡沒接網線,用本機的一些服務如Sql Server、IIS等就可以用127.0.0.1這個位址。
===========================================
小弟是新手,有點不了解Sql Server、IIS可以使用127.0.0.1這位址,平常我們在2k有裝iis下直接打127.0.0.1,是可以連至本機的web上啊,sql使用odbc時,也可以用127.0.0.1連本機的sql,而平常當然網路線都接著,有點不了解,是否有那位大大替小弟解惑,感恩~
這是 "定義", 127.0.0.1 這個 IP 代表本機 IP
回頂端
nameless 文章主題 : 發表於 : 週日 8月 06, 2006 11:08 pm
註冊時間: 週三 2月 26, 2003 10:54 am
文章: 95
來自: 中華民國 挑一下...
1)私有地址
... ...
10.0.0.0~10.255.255.255
172.16.0.0~172.31.255.255
192.168.0.0~192.168.255.255
_________________
[url=http://orangepc.dyndns.org/]以上言論不代表本人立場 本人立場不代表以上言論
以上立場不代表本人言論 本人言論不代表以上立場
總之?都不關我的事就是了![/url]
回頂端
cjlin 文章主題 : 發表於 : 週六 8月 19, 2006 12:13 pm
註冊時間: 週四 8月 17, 2006 1:54 am
文章: 48
來自: 花蓮 lu 寫:
WlhFor 寫:
• 如果網卡沒接網線,用本機的一些服務如Sql Server、IIS等就可以用127.0.0.1這個位址。
===========================================
小弟是新手,有點不了解Sql Server、IIS可以使用127.0.0.1這位址,平常我們在2k有裝iis下直接打127.0.0.1,是可以連至本機的web上啊,sql使用odbc時,也可以用127.0.0.1連本機的sql,而平常當然網路線都接著,有點不了解,是否有那位大大替小弟解惑,感恩~
這是 "定義", 127.0.0.1 這個 IP 代表本機 IP
剛剛從別篇看到這裡,想挑一下毛病 ^^
127.x.x.x是定義為loopback用,
實務上"通常"以127.0.0.1當作localhost,這不是定義好的,
但如果你認為約定俗成叫定義,那你對了
回頂端
jxk 文章主題 : 發表於 : 週二 10月 17, 2006 7:52 pm
註冊時間: 週一 10月 16, 2006 10:07 pm
文章: 2 看完以後,小弟有認知嘍感恩!謝謝大大的用心
分享....
回頂端
ffff 文章主題 : 發表於 : 週二 10月 17, 2006 9:19 pm
註冊時間: 週二 4月 06, 2004 3:42 pm
文章: 26 很可惜..一開始就錯了..唉..~_~ ....
網路內是用arp 、rarp 廣播來找 ip 和 mac 的對應...
區網內大部份都是用L2 傳輸的...
http://myweb.hinet.net/home6/sywu/chap10/chap10-8.htm
這個說的比較正確些
這個作者要好好看一下書了..CCNA隨便拿一本都寫的很清楚
回頂端
cjlin 文章主題 : 發表於 : 週五 10月 20, 2006 6:51 pm
註冊時間: 週四 8月 17, 2006 1:54 am
文章: 48
來自: 花蓮 老實說,我覺得他沒寫錯,是你誤會他要解釋IP跟MAC對應而他沒有吧?
我倒是不覺得"徹底明白IP地址的含義"為什麼一定要跟MAC扯上關係,
還是CCNA都沒跟你說為什麼要有IP定址?為什麼有MAC?為什麼OSI要分七層?
第三層的定址方式為什麼一定要扯上第二層?
叫別人看書之前自己要先看過書,CCNA是寫的很清楚沒錯,
不過很多考過的人還是搞不清楚
_________________
Malware-Test Lab.
http://www.malware-test.com
沒有留言:
張貼留言