發新話題

『轉貼』徹底明白IP地址的含義

『轉貼』徹底明白IP地址的含義

作者:擔子
不管是學習網路還是上網,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地址為什麼寫成這樣,子網路遮罩到底是怎麼回事等等,別急,下面慢慢介紹。

TOP

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這樣各位址就不屬於一個網路了。

TOP

寫的很詳細
不過要花比較多的時間去看看才會瞭解
感謝總版分享的這份教學文章

TOP

發新話題

本站所有圖文均屬網友發表,僅代表作者的觀點與本站無關,如有侵權請通知版主會盡快刪除。