Java網(wǎng)絡(luò)編程從入門到精通(1):Internet地址概述
所有連入Internet的終端設(shè)備(包括計算機、PDA、打印機以及其他的電子設(shè)備)都有一個唯一的索引,這個索引被稱為IP地址。現(xiàn)在Internet上的IP地址大多由四個字節(jié)組成,這種IP地址叫做IPv4。除了這種由四個字節(jié)組成的IP,在Internet上還存在一種IP,這種IP由16個字節(jié)組成,叫做IPv6。IPv4和IPv6后面的數(shù)字是Internet協(xié)議(Internet Protocol,IP)的版本號。
IPv4地址的一般表現(xiàn)形式為:X.X.X.X。其中X為0到255的整數(shù)。這四個整數(shù)用“.”隔開。從理論上說,IPv4地址可以表示2的32次冪,也就是4,294,967,296個IP地址,但由于要排除一些具有特殊意義的IP(如0.0.0.0、127.0.0.1、224.0.0.1、255.255.255.255等),因此,IPv4地址可自由分配的IP數(shù)量要小于它所能表示的IP地址數(shù)量。
為了便于管理,人為地將IPv4劃分為A類、B類和C類IP地址。
- A類IP地址
范圍:0.0.0.0 –– 127.255.255.255,標準的子網(wǎng)掩碼是255.0.0.0。
- B類IP地址
范圍:128.0.0.0 –– 191.255.255.255,標準的子網(wǎng)掩碼是255.255.0.0。
- C類IP地址
范圍:192.0.0.0 –– 223.255.255.255,標準的子網(wǎng)掩碼是255.255.255.0。
從上面的描述可看出,第一個字節(jié)在0和127之間的是A類IP地址,在128和191之間的是B類IP地址,而在192和223之間的是C類IP地址。如果兩個IP地址分別和它們的子網(wǎng)掩碼進行按位與后得到的值是一樣的,就說明這兩個IP在同一個網(wǎng)段。下面是兩個C類IP地址IP1、IP2和它們的子網(wǎng)掩碼。
IP1:192.168.18.10 子網(wǎng)掩碼: 255.255.255.0
IP2:192.168.18.20 子網(wǎng)掩碼: 255.255.255.0
這兩個IP和它們的子網(wǎng)掩碼按位與后,得到的值都是192.168.18.0。因此,IP1和IP2在同一個網(wǎng)段。當用戶使用Modem或ADSL Modem上網(wǎng)后,臨時分配給本機的IP一般都是C類地址,也就是說,第一個字節(jié)都會在192和223之間。
上面給出的IP地址和子網(wǎng)掩碼只是標準的形式。用戶也可以根據(jù)自己的需要使用其他的IP和子網(wǎng)掩碼,如IP地址設(shè)為10.0.0.1,子網(wǎng)掩碼設(shè)為255.255.255.128。但為了便于分類和管理,在局域網(wǎng)中設(shè)置IP地址時,建議按著標準的分類來設(shè)置。
IPv6地址由16個字節(jié)組成,共分為8段。每一段由16個字節(jié)組成,并用4個十六進制數(shù)表示,段與段之間用“:”隔開。如A34E:DD3D:1234:4400:A123:B231:A111:DDAA是一個標準的IPv6地址。IPv6在兩種情況下可以簡寫:
1.
以0開頭的段可省略0。如A34E:003D:0004:4400:A123:B231:A111:DDAA可簡寫為A34E: 3D: 4:4400:A123:B231:A111:DDAA。
2. 連續(xù)出現(xiàn)0的多個段可使用“::”來代替多個為0的段。如A34E:0000:0000:0000:A123:B231:0:DDAA可簡寫為A34E::A123:B231:0:DDAA。在使用這種簡寫方式時,“::”只能出現(xiàn)一次,如果出現(xiàn)多次,IPv6地址將會產(chǎn)生歧義。
在IPv4和IPv6混合的網(wǎng)絡(luò)中,IPv6地址的后四個字節(jié)可以被寫成IPv4的地址格式。如A34E::A123:B231:A111:DDAA可以寫成A34E::A123:B231:161.17.221.170。當訪問網(wǎng)絡(luò)資源的計算機使用的是IPv4的地址時,系統(tǒng)會自動使用IPv6的后四個字節(jié)作為IPv4的地址。
無論是IPv4地址,還是IPv6地址,都是很難記憶的。因此,為了使這些地址便于記憶,Internet的設(shè)計師們發(fā)明了DNS(Domain Name System,域名系統(tǒng))。DNS將IP地址和域名(一個容易記憶的字符串,如microsoft)聯(lián)系在一起,當計算機通過域名訪問Internet資源時,系統(tǒng)首先通過DNS得到域名對應的IP地址,再通過IP地址訪問Internet資源。在這個過程中,IP地址對用戶是完全透明的。如果一個域名對應了多個IP地址,DNS從這些IP地址中隨機選取一個返回。
域名可以分為不同的層次,如常見的有頂層域名、頂級域名、二級域名和三級域名。
- 頂層域名
頂層域名可分為類型頂層域名和地域頂層域名。如www.microsoft.com、www.w3c.org中的com和org就是類型頂層域名,它們分別代表商業(yè)(com)和非盈利組織(org)。而www.dearbook.com.cn中的cn就是地域頂層域名,它表示了中國(cn)。主要的類型頂層域名有com(商業(yè))、edu(教育)、gov(政府)、int(國際組織)、mil(美國軍方)、net(網(wǎng)絡(luò)部門)、org(非盈利組織)。大多數(shù)國家都有自己的地域頂層域名,如中國(cn)、美國(us)、英國(uk)等。
- 頂級域名
如www.microsoft.com中的microsoft.com就是一個頂級域名。在Email地址的“@”后面跟的都是頂級域名,如abc@126.com、mymail@sina.com等。
- 二級域名
如blog.csdn.net就是頂級域名csdn.net的二級域名。有很多人認為www.csdn.net是頂級域名,其實這是一種誤解。實際上www.csdn.net是頂級域名csdn.net的二級域名。www.csdn.net和blog.csdn.net在本質(zhì)上是一樣的,只是我們已經(jīng)習慣了使用www表示一個使用HTTP或HTTPS協(xié)議的網(wǎng)址,因此,給人的誤解就是www.csdn.net是一個頂級域名。
- 三級域名
如abc.photo.163.com就是二級域名photo.163.com的三級域名。有很多blog或電子相冊之類的網(wǎng)站都為每個用戶分配一個三級域名。
下一篇:Java網(wǎng)絡(luò)編程從入門到精通(2):創(chuàng)建InetAddress對象的四個靜態(tài)方法
《Android開發(fā)完全講義(第2版)》(本書版權(quán)已輸出到臺灣)
http://product.dangdang.com/product.aspx?product_id=22741502
《Android高薪之路:Android程序員面試寶典 》http://book.360buy.com/10970314.html
新浪微博:http://t.sina.com.cn/androidguy 昵稱:李寧_Lining
posted on 2009-03-23 21:03 銀河使者 閱讀(6138) 評論(2) 編輯 收藏 所屬分類: java 、 原創(chuàng) 、網(wǎng)絡(luò)編程