內容簡介
1、第三部分第一課:IP地址和域名
2、第三部分第三課預告:協議
第三部分第二課:IP地址和域名
上一課我們說了在Web之中,全球各地有無數臺機器,有些充當客戶機,有些作爲服務器。
那麼這些機器如何找到和辨認彼此呢?難道不會“只是因爲在人羣中多看了你一眼,再也沒能想起你容顏”嗎?
如果我用我的瀏覽器上網,我怎麼知道哪個服務器向我發送此網站呢?
爲了解決這個難題,IT科學家們使用了一個叫做IP地址的東西(東西好像有點太難聽了,IP它根本就不是個東西好嗎)。
IP是Internet Protocol的簡稱,英語意爲“互聯網協議”。
IP地址就是用來表示每一臺連接Web的機器的。而且是唯一標識(當然我們在【TCP/IP探索之旅】中會講到不同類別的IP地址,有些是可以重複的,牽涉到局域網,廣域網,公有地址和私有地址等概念,在此不深究)。
我們暫時只要瞭解:大範圍來講,全球每臺電腦都有一個獨一無二的IP地址,就好像是它的唯一銘牌。我們可以把“電腦”比作“電話”,那麼“IP地址”就相當於“電話號碼”。
IPv4和IPv6
IPv4和IPv6是IP地址的不同版本,v4就是第四版(v是英語version的首字母,version意爲“版本”),那麼v6就是第六版。
IPv4的地址長度爲32位(共有2^32(2的32次方)個IP地址),分爲4段,每段8位,用十進制數字表示,每段數字範圍爲0~255,段與段之間用句點隔開。例如159.226.13.1。
IPv6的地址長度爲128位(共有2^128(2的128次方)個IP地址),分爲8段,每段16位,用十進制數字表示,每段數字範圍爲0~65535,段與段之間用句點隔開。如果每個16位用16進製表示,那麼例如1080:0000:0000:0000:0008:0800:200C:417A。
互聯網當前使用的主要是基於IPv4協議的32位地址,地址總容量近43億個。而IPv6地址採用128位標識,數量爲2的128次方,相當於IPv4地址空間的4次冪。
有人曾形象地比喻:“IPv6可以讓地球上每一粒沙子都擁有一個IP地址。”
實際上,並不急於推廣IPv6,只需在現有的IPv4基礎上將32位擴展8位到40位,即可解決IPv4地址不夠的問題。這樣一來可用地址數就擴大了256倍。
我們的課程中還是以IPv4的地址值來舉例。
例如我們有以下IP地址:
難道我們每次上網,都要在地址欄裏輸入這樣的數字才能找到我要的網頁嗎?這樣的話太累了,臣妾做不到啊。
那怎麼辦呢?於是域名應運而生。
域名
因爲直接記每個IP地址太難,所以人們想到了用人類易於記憶的名字來代替數字。比如,上面例子中的 205.89.177.26,其實是曾經Google首頁的IP地址。所以我們就用一個域名(domain name)來代替:google.com
但是我們的服務器其實只認得數字形式的IP地址。所以我們需要一個“中間人”,將google.com這樣的域名先解析成205.89.177.26,然後再找到對應的網頁。
這個中間人就是DNS,Domain Name System(域名系統),是Internet的一項服務。它作爲將域名和IP地址相互映射的一個分佈式數據庫,能夠使人更方便的訪問互聯網。
有了DNS,我們就可以輕鬆地在地址欄輸入 google.com,然後經過DNS解析,變爲對應的IP地址,再由服務器讀取。
DNS是由域名解析器和域名服務器組成的。域名服務器是指保存有該網絡中所有主機的域名和對應IP地址,並具有將域名轉換爲IP地址功能的服務器。其中域名必須對應一個IP地址,而IP地址不一定有域名。
總結
IP地址使我們可以找到地球上每臺聯網的電腦。
記住域名比IP地址方便,而從域名到IP地址的解析是通過DNS。
第三部分第三課預告
今天的課就到這裏,一起加油吧!
下一課我們學習:協議
程序員聯盟社區
目前有一個微信羣和一個QQ羣,凡是對編程感興趣的朋友都可以加,大家可以交流,學習,互動,討論編寫的程序的源代碼,編程問答等。
微信羣(程序員聯盟),加羣請私信我(微信羣人數超過100之後,不能通過掃描二維碼加入了,只能私信我,謝謝)
QQ羣: 413981577 (1000人羣)
QQ羣文件裏有很多編程書籍PDF和其他資料。掃描下面二維碼加QQ:
我們還建立了一個公共的百度雲盤,2TB容量,已有很多優秀編程資源,大家也可以上傳。鏈接加羣之後會發送。
百度貼吧 【程序員聯盟】 歡迎您加入,交流編程,討論代碼,共享資源,已經有很多話題。吧主就是小編。
http://tieba.baidu.com/f?kw=%E7%A8%8B%E5%BA%8F%E5%91%98%E8%81%94%E7%9B%9F&ie=utf-8
《程序員聯盟》的微社區,方便大家提問和互動。可以關注一下。
微社區地址和二維碼如下:
http://m.wsq.qq.com/264152148
謝謝!
*您若覺得本文不錯,請點擊畫面右上角《···》按鈕“分享到朋友圈”或“發送給朋友”
*新朋友請關注「程序員聯盟」微信搜公衆號 ProgrammerLeague
小編微信號: frogoscar
小編QQ號: 379641629
小編郵箱: [email protected]
程序員聯盟QQ羣:413981577
程序員聯盟微信羣:先加我微信
有朋友反映看手機端的文章太累,其實是可以用瀏覽器網頁來看的:
方法1. 點擊畫面右上角的《···》按鈕,然後選擇“複製鏈接”,再把鏈接黏貼到你的瀏覽器裏面或用郵件發送給自己,就可以在電腦的瀏覽器裏打開了
方法2. 頭條網www.toutiao.com,搜索我的自媒體“程序員聯盟”,內有所有文章,也可以直接進這個鏈接:http://www.toutiao.com/m3750422747/
方法3. 我的51CTO博客,CSDN博客,博客園和開源中國博客鏈接(所有文章都在上面)
http://4526621.blog.51cto.com
http://blog.csdn.net/frogoscar
http://www.cnblogs.com/frogoscar
http://my.oschina.net/frogoscar/blog
如何查看所有文章:
1. 點擊“查看公衆號”,再點擊“查看歷史消息”
2. 在公衆號回覆任何信息,可以看到包含“查看歷史消息”的鏈接。
【支持小編的勞動】
覺得文章對你有幫助,請紀念小編的辛勤勞動,掃描二維碼捐贈給小編,謝謝!
支付寶
Paypal
本文分享自微信公衆號 - 程序員聯盟(coderhub)。
如有侵權,請聯繫 [email protected] 刪除。
本文參與“OSC源創計劃”,歡迎正在閱讀的你也加入,一起分享。