詳解IP地址

一、IP地址概念
 IP地址是一個32位的二進制數,它由網絡ID和主機ID兩部份組成,用來在網絡中唯一的標識的一臺計算機。網絡ID用來標識計算機所處的網段;主機ID用來標識計算機在網段中的位置。IP地址通常用4組3位十進制數表示,中間用“.”分隔。比如,192.168.0.1。
 補充(IPv6):前面所講的32位IP地址稱之爲IPv4,隨着信息技術的發展,IPv4可用IP地址數目已經不能滿足人們日常的需要,據權威機構預測到2010年要充分應用信息技術,每個人至少需要10個IP地址,比如:計算機、筆記本、手機和智能化冰箱等。爲了解決該問題開發了IPv6規範,IPv6用128位表示IP地址,其表示爲8組4位16進制數,中間爲“:”分隔。比如,AB32:33ea:89dc:cc47:abcd:ef12:abcd:ef12。 
二、IP地址分類
 爲了方便IP尋址將IP地址劃分爲A、B、C、D和E五類,每類IP地址對各個IP地址中用來表示網絡ID和主機ID的位數作了明確的規定。當主機ID的位數確定之後,一個網絡中是多能夠包含的計算機數目也就確定,用戶可根據企業需要靈活選擇一類IP地址構建網絡結構。
A類
 A類地址用IP地址前8位表示網絡ID,用IP地址後24位表示主機ID。A類地址用來表示網絡ID的第一位必須以0開始,其他7位可以是任意值,當其他7位全爲0是網絡ID最小,即爲0;當其他7位全爲1時網絡ID最大,即爲127。網絡ID不能爲0,它有特殊的用途,用來表示所有網段,所以網絡ID最小爲1;網絡ID也不能爲127;127用來作爲網絡迴路測試用。所以A類網絡網絡ID的有效範圍是1-126共126個網絡,每個網絡可以包含224-2臺主機。
B類
 B類地址用IP地址前16位表示網絡ID,用IP地址後16位表示主機ID。B類地址用來表示網絡ID的前兩位必須以10開始,其他14位可以是任意值,當其他14位全爲0是網絡ID最小,即爲128;當其他14位全爲1時網絡ID最大,第一個字節數最大,即爲191。B類IP地址第一個字節的有效範圍爲128-191,共16384個B類網絡;每個B類網絡可以包含216-2臺主機(即65534臺主機)。
C類
 C類地址用IP地址前24位表示網絡ID,用IP地址後8位表示主機ID。C類地址用來表示網絡ID的前三位必須以110開始,其他22位可以是任意值,當其他22位全爲0是網絡ID最小,IP地址的第一個字節爲192;當其他22位全爲1時網絡ID最大,第一個字節數最大,即爲223。C類IP地址第一個字節的有效範圍爲192-223,共2097152個C類網絡;每個C類網絡可以包含28-2臺主機(即254臺主機)。
D類
 D類地址用來多播使用,沒有網絡ID和主機ID之分,D類IP地址的第一個字節前四位必須以1110開始,其他28位可以是任何值,則D類IP地址的有效範圍爲224.0.0.0到239.255.255.255。
E類
 E類地址保留實驗用,沒有網絡ID和主機ID之分,E類IP地址的第一字節前四位必須以1111開始,其它28位可以是任何值,則E類IP地址的有效範圍爲240.0.0.0至255.255.255.254。其中255.255.255.2555表示廣播地址。
在實際應用中,只有A、B和C三類IP地址能夠直接分配給主機,D類和E類不能直接分配給計算機。 
三、網絡ID、主機ID和子網掩碼
 網絡ID用來表示計算機屬於哪一個網絡,網絡ID相同的計算機不需要通過路由器連接就能夠直接通信,我們把網絡ID相同的計算機組成一個網絡稱之爲本地網絡(網段);網絡ID不相同的計算機之間通信必須通過路由器連接,我們把網絡ID不相同的計算機稱之爲遠程計算機。
 當爲一臺計算機分配IP地址後,該計算機的IP地址哪部份表示網絡ID,哪部份表示主機ID,並不由IP地址所屬的類來確定,而是由子網掩碼確定。子網確定一個IP地址屬於哪一個子網。
 子網掩碼的格式是以連續的255後面跟連續的0表示,其中連續的255這部份表示網絡ID;連續0部份表示主機ID。比如,子網掩碼255.255.0.0和255.255.255.0。
 根據子網掩碼的格式可以發現,子網掩碼有0.0.0.0、255.0.0.0、255.255.0.0、255.255.255.0和255.255.255.255共五種。採用這種格式的子網掩碼每個網絡中主機的數目相差至少爲256倍,不利於靈活根據企業需要分配IP地址。比如,一個企業有2000臺計算機,用戶要麼爲其分配子網掩爲255.255.0.0,那麼該網絡可包含65534臺計算機,將造成63534個IP地址的浪費;要麼用戶爲其分配8個255.255.255.0網絡,那麼必須用路由器連接這個8個網絡,造成網絡管理和維護的負擔。
 網絡ID是IP地址與子網掩碼進行與運算獲得,即將IP地址中表示主機ID的部份全部變爲0,表示網絡ID的部份保持不變,則網絡ID的格式與IP地址相同都是32位的二進制數;主機ID就是表示主機ID的部份。
 例題1:IP地址:192.168.23.35 子網掩碼:255.255.0.0
         網絡ID:192.168.0.0  主機ID:23.35
 例題2:IP地址:192.168.23.35  子網掩碼:255.255.255.0       網絡ID:192.168.23.0  主機ID:35
四、子網和CIDR
 將常規的子網掩碼轉換爲二進制,將發現子網掩格式爲連續的二進制1跟連續0,其中子網掩碼中爲1的部份表示網絡ID,子網掩中爲0的表示主機ID。比如255.255.0.0轉換爲二進制爲11111111 11111111 00000000 00000000。
 在前面所舉的例子中爲什麼不用連續的1部份表示網絡ID,連續的0部份表示主機ID呢?答案是肯定的,採用這種方案的IP尋址技術稱之爲無類域間路由(CIDR)。CIDR技術用子網掩碼中連續的1部份表示網絡ID,連續的0部份表示主機ID。比如,網絡中包含2000臺計算機,只需要用11位表示主機ID,用21位表網絡ID,則子網掩碼錶示爲11111111.11111111.11100000.00000000,轉換爲十進制則爲255.255.224.0。此時,該網絡將包含2046臺計算機,既不會造成IP地址的浪費,也不會利用路由器連接網絡,增加額外的管理維護量。
 CIDR表示方法:IP地址/網絡ID的位數,比如192.168.23.35/21,其中用21位表示網絡ID。
 例題1:192.168.23.35/21
   子網掩碼:11111111 11111111 11111000 00000000則爲255.255.248.0
    網絡ID:192.168.00010111.0(其中第三個字節紅色部分表示網絡ID,其他表示主機ID,網絡ID是表示網絡ID部份保持不變主機ID全部變爲0)則網絡ID爲192.168.16.0
 起始IP地址:192.168.16.1(主機ID不能全爲0,全爲0表示網絡ID最後一位爲1)
 結束IP地址:192.168.00010111.11111110(主機ID不能全爲1,全爲1表示本地廣播)則結束IP地址爲:192.168.23.254。
 例題2:將163.135.0.0劃分爲16個子網,計算前兩個子網的網絡ID、子網掩碼、起止IP地址。
 第1步:用CIDR表示163.135.0.0/20,則子網掩碼爲255.255.240(11110000).0。
 第2步:第一網絡ID(子網掩碼與IP地址與運算):163.135.0.0
     第一個IP地址:163.135.0.1 結束IP地址:163.135.15.254;
 第3步:第二網絡ID:163.135.16.0
         第一個IP地址:163.135.16.1 結束IP地址:163.135.31.254。
五、子網掩碼和網絡ID的快速計算方法
CIDR的子網掩碼都是連續的1跟連接的0表示,則子網掩碼有以下幾種表示方法:
0000 0000   0
1000 0000   128
1100 0000   128+64=192
1110 0000   128+64+32=224
1111 0000   255-15=240
1111 1000   255-7=248
1111 1100   255-3=252
1111 1110   255-1=254
1111 1111   255
 大家都知道11111111的十進制數爲255,那麼我們怎麼來快速計算子網掩碼呢?二進制的1=1,11=3,111=7,1111=15;那麼1111 1110=255-1,1111 1100=255-3,1111 1000=255-8,1111 0000=255-15這樣是不是就很快呢?只要我們一旦確定子網掩碼中有多少位表示網絡ID,那麼我們馬上就可以寫出子網掩碼了。那麼,對於1000 0000,1100 0000和1110 0000 我們又該怎麼計算呢?27=8則1000 0000=128,1100 0000=128+64,1110 0000=128+64+32,所以我們不需要去記住每一個爲多少,只需要做做簡單的加減法就搞定子網掩碼的計算。
 網絡ID的結果大家都知道網絡ID部份不變,主機ID部分全部變爲0,那麼在計算網絡ID時,首先看子網掩碼中有多少位用來表示網絡,相應在將IP地址轉換爲二進制時就只轉換前面幾位,比如192.168.176.15/19,網絡ID一共19位,則網絡ID前兩個字節爲192.168.X.0發生變化的爲第三個字節。那麼怎樣快速計算出這個變化的X的值呢?我們知道第三字節只有三位表示網絡ID,轉換時176>128,第1位爲1,176-128=48<64,第2位爲0,48>32第3位爲1,剩下的計算就沒有意義了,全都要轉換爲0,則網絡ID爲10100000,則網絡ID爲192.168.160.0,這樣計算反而出錯的可能性很小。
六、本地和遠程網絡概念
 網絡ID相同的計算機稱之爲本地網絡,本地網絡中的計算機相互通信不需要路由器連接;網絡ID不相同的計算機稱之爲遠程網絡,遠程網絡中的計算機要相互通信必須通過路由器連接。
 例題:192.168.10.14/28,192.168.10.15/28,192.168.10.16/28,192.168.10.31/28哪些是合法IP,哪些是非法IP地址?
 主機ID全爲0和主機ID全爲1的爲非法IP地址:192.168.10.15/28、192.158.10.16/28、192.168.10.31/28都是非法IP地址。
  
 例題:192.168.10.14/28,192.168.10.15/28,192.168.10.16/28哪個不是同一網段?
 網絡ID相同的就屬於同一網段,則192.168.10.16/28不屬於同一網段。
七、子網數和主機數的計算方法
例題:172.168.34.56/20,一共劃分爲了多少個子網,各子網可以包含多少臺主機。
172.168.34.56是一個B類地址,B類地址用16位表示網絡ID,題目中20位表示網絡ID,則子網位數爲4位,那麼子網就有24次個(即從0000、0001到1111的16種變化)。
由於IP地址是32位,用20位表示網絡ID,則主機ID的位數爲12位,則每個子網可以包含212-2個IP地址,即可以包含4096個IP地址。
注意:爲什麼計算IP地址時要減2,而計算子網數目時不減2呢?IP地址減2的原因是主機ID不能全爲0也不能全爲1;子網就不存在這個問題。
八、公共IP和私有IP地址
IP地址由IANA(Internet地址分配機構)管理和分配,任何一個IP地址要能夠在Internet上使用就必須由IANA分配,IANA分配的能夠在Internet上正常使用的IP地址稱之爲公共IP地址;IANA保留了一部份IP地址沒有分配給任何機構和個人,這部份IP地址不能在Internet上使用,此類IP地址就稱之爲私有IP地址。爲什麼私有IP地址不能在Internet上使用呢?因爲Internet上沒有私有IP地址的路由。私有IP地址範圍包括:
A類:10.0.0.0/8
B類:172.16.0.0/12 即172.16.0.1-172.31.255.254共16個B類網絡
C類:192.168.0.0/16即192.168.0.1-192.168.255.254共256個C類網絡
九、 路由概念、Ping、Ipconfig、Route和Tracert命令
通過路由器將數據從一個網絡傳輸到另一個網絡稱之爲路由。路由選擇負責在網絡中選擇一段最優先的路徑將數據傳輸到目的網絡,路由選擇的基礎和依據是路由表,路由表由目的網絡ID、子網掩碼、網關、接口和計費組成,通過route print可查看計算機的路由表。
Ping命令三種結果
目的地不可到達:路由表無目的地記錄
超時:網關設置錯有路由表記錄
Ping通過:正常
Ipconfig命令
Tracert命令
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章