摘要:無類型域間選路顧名思義,無類型域間選路基本思想是取消地址的分類結(jié)構(gòu),取而代之的是允許以可變長(zhǎng)分界的方式分配網(wǎng)絡(luò)數(shù)。
了解完網(wǎng)絡(luò)協(xié)議,我們會(huì)發(fā)現(xiàn),網(wǎng)絡(luò)通信的五層模型里,有兩個(gè)很重要的概念:IP 地址和 MAC 地址。
那么 IP 地址是怎么來的,又是怎么沒的?MAC 地址與 IP 地址又有什么區(qū)別?
這回答上面問題前,先熱下身,大家知道如何查看本機(jī)的 IP 嗎?這個(gè)問題,即便是沒有專業(yè)學(xué)過計(jì)算機(jī)的人,只要折騰過電腦,重裝過系統(tǒng),大多都會(huì)知道答案:在 Windows 下是 ipconfig,在 linux 下是 ifconfig。
在 Windows 下輸入 ipconfig,我們會(huì)看到這個(gè)界面:
在 linux 下輸入 ifconfig,我們會(huì)看到這個(gè)界面:
可以看到,無論是在 Windows 還是在 linux 下,輸入相關(guān)命令都能顯示出這臺(tái)機(jī)器上所有的網(wǎng)卡。大部分的網(wǎng)卡都會(huì)有一個(gè) IP 地址。就像 192.168.1.73 ,就是我本機(jī)以太網(wǎng)的 IP 地址。
IP 地址是一個(gè)網(wǎng)卡在網(wǎng)絡(luò)世界中的通訊地址,相當(dāng)于我們現(xiàn)實(shí)世界的門牌號(hào)碼。
注意,IP 地址是網(wǎng)卡的通訊地址,不是一臺(tái)機(jī)器的通訊地址。很多時(shí)候,我們會(huì)說一個(gè)電腦只有一個(gè) IP 地址,這種說法實(shí)質(zhì)上并不正確,準(zhǔn)確的來說,應(yīng)該是:
一個(gè)網(wǎng)卡在同一時(shí)段只能有一個(gè) IP 地址,一臺(tái)機(jī)器可以有多個(gè) IP 地址。
就像我們的筆記本,一般都會(huì)有線網(wǎng)卡和無線網(wǎng)卡,則有線網(wǎng)卡有一個(gè) IP 地址,無線網(wǎng)卡也有一個(gè) IP 地址。
一臺(tái)機(jī)器有多個(gè) IP 地址,那 IP 地址會(huì)不會(huì)重復(fù)呢?其實(shí)我們應(yīng)該會(huì)碰到 IP 地址重復(fù)的情況。有時(shí)候我們電腦彈出網(wǎng)絡(luò)地址沖突,出現(xiàn)無法上網(wǎng)的情況,那多半就是 IP 地址沖突了。
格式就像上面輸出的結(jié)果,192.168.1.73 就是一個(gè) IP 地址。這個(gè)地址被點(diǎn)(.)分割為四個(gè)部分,每個(gè)部分有 8 個(gè) bit,所以 IP 地址總共是 32 位。顯然,32 位產(chǎn)生的 IP 地址在當(dāng)今這個(gè)互聯(lián)網(wǎng)社會(huì),很明顯就是"狼多肉少"。于是就有了 IPv6,也就是上面結(jié)果中的 fe80::515d:5483:ff4d:6db9/64。這個(gè)有 128 位,能滿足我們現(xiàn)在的需求了。至于后面會(huì)不會(huì)出現(xiàn) IPv8 ,那就看后面互聯(lián)網(wǎng)世界的發(fā)展了。
分類我們應(yīng)該都聽說過,IP 地址分為 A、B、C、D、E 五類。對(duì)于 A、B、C 類,主要分兩部分,前面一部分是網(wǎng)絡(luò)號(hào),后面一部分是主機(jī)號(hào)。
下圖是 A、B、C 三類地址所能包含的主機(jī)數(shù)量。
這里面有個(gè)問題,C 類地址包含的主機(jī)數(shù)量太少,而 B 類地址包含的主機(jī)數(shù)量又太多,于是就有了一個(gè)折中的方式叫做無類型域間選路。
無類型域間選路顧名思義,無類型域間選路(CIDR)基本思想是取消地址的分類結(jié)構(gòu),取而代之的是允許以可變長(zhǎng)分界的方式分配網(wǎng)絡(luò)數(shù)。192.168.1.73/24 就是無類型域間選路格式的 IP 地址。這種格式的 IP 地址,將 32 位的 IP 地址一分為二,前面是網(wǎng)絡(luò)號(hào),后面是主機(jī)號(hào)。從哪里分呢?如果注意觀察的話可以看到,上面地址中有一個(gè)斜杠,斜杠后一個(gè)數(shù)字 24。這個(gè) 24 的含義就是,前24 位是網(wǎng)絡(luò)號(hào),后 8 位是主機(jī)號(hào)。
公有 IP 地址和私有 IP 地址繼續(xù)看上面的表格。表格最右列是私有 IP 地址段。平時(shí)我們?cè)谝粋€(gè)局域網(wǎng)內(nèi),看到的 IP 地址都是私有 IP 地址。因?yàn)檫@些地址允許組織內(nèi)部的 IT 人員自己管理和分配,而且還可以重復(fù)。所以會(huì)出現(xiàn)你局域網(wǎng)的私有 IP 地址段和我局域網(wǎng)的是一樣的。
就像我們上面說的,小明在自己家里給同單元的小伙伴說自己是五單元 101 號(hào),小伙伴能理解,但是他如果這樣和小紅說,小紅就會(huì)問,你是哪個(gè)小區(qū)的?這里的小區(qū)實(shí)際上就是公有 IP 地址,而五單元 101 號(hào)就是私有 IP 地址。
表格中的 192.168.0.x 是最常見的私有 IP 地址段。就像我們家里的路由器地址一般是 192.168.0.1 一樣。
IP 分配與釋放IP 分配我們平時(shí)應(yīng)該接觸比較少。還記得在大學(xué)的時(shí)候,剛?cè)雽W(xué)第一件事就是趕緊交網(wǎng)費(fèi)。交網(wǎng)費(fèi)時(shí)會(huì)有一個(gè)步驟,網(wǎng)管會(huì)讓你提供 MAC 地址,然后把 IP 地址和 MAC 地址綁定,這也就是博主在隔壁宿舍無法通過網(wǎng)線上網(wǎng)的原因。
其實(shí),如果你有相關(guān)的知識(shí)積累,可以用命令行自己配置 IP 地址。當(dāng)然,能不能通信就看你的知識(shí)儲(chǔ)備量了。
除了命令行配置外,我們平時(shí)應(yīng)該對(duì)于 IP 分配應(yīng)該都是用的 "拿來主義"。無論是在學(xué)校還是在辦公室,都會(huì)有網(wǎng)絡(luò)管理員把分配好的 IP 給你,直接使用就可以了。但是有時(shí)候也會(huì)好奇,網(wǎng)管是怎么分配 IP 的呢?難不成通過命令行一個(gè)個(gè)配置?這時(shí)候就要用到動(dòng)態(tài)主機(jī)配置協(xié)議(DHCP)。
動(dòng)態(tài)主機(jī)配置協(xié)議這個(gè)協(xié)議的工作原理是怎樣的呢?我們就拿一臺(tái)機(jī)器新加入一個(gè)網(wǎng)絡(luò)為例,來走一遍 DHCP 的工作流程。
當(dāng)一臺(tái)機(jī)器新加入一個(gè)網(wǎng)絡(luò)時(shí),肯定一臉懵逼,啥情況也不知道,只知道自己的 MAC 地址。沒人理你怎么辦?那不管三七二十一,先吼一聲,告訴所有人,我來了,有人嗎?這時(shí)候的溝通基本靠"吼"。這一步,我們稱為 DHCP Discover。
新來的機(jī)器使用 IP 地址 0.0.0.0 發(fā)送了一個(gè)廣播包,目的 IP 地址是 255.255.255.255。廣播包封裝在 UDP 里面,UDP 封裝在 BOOTP 里面。在這個(gè)廣播包里,新人大喊:我是新來的(Boot Request),我的 MAC 地址是 xxx,我還沒有 IP,誰能給我個(gè) IP 地址?格式就像下面這樣:
這時(shí)候,網(wǎng)絡(luò)里的 DHCP Server 就相當(dāng)于這個(gè)局域網(wǎng)的管理員。他知道來了一個(gè)"新人",需要給它分配一個(gè) IP 地址,這個(gè)過程就是 DHCP Offer。同時(shí),DHCP Server 保留為此機(jī)器提供的 IP 地址,從而不會(huì)再將相同的 IP 地址分配給其它的機(jī)器。而 DHCP Offer 的格式就像下圖,里面有給新人分配的地址。
DHCP Server 仍然使用廣播地址作為目的地址,因?yàn)椋藭r(shí)請(qǐng)求分配的新人還沒有自己的 IP 地址。如果一個(gè)局域網(wǎng)中有多個(gè) DHCP Server,這臺(tái)新機(jī)器會(huì)收到多個(gè) DHCP Offer。
它會(huì)選擇其中一個(gè) DHCP Offer,一般是最先到達(dá)的那個(gè),并且會(huì)向網(wǎng)絡(luò)發(fā)送一個(gè) DHCP Request 廣播數(shù)據(jù)表,包中包含客戶端的 MAC 地址、接受分配的 IP 地址、提供此 IP 的 DHCP 服務(wù)器地址等,并告訴所有的 DHCP Server 它將接受哪一臺(tái)服務(wù)器提供的 IP 地址,告訴其他 DHCP 服務(wù)器撤銷它們提供的 IP 地址,以便提供給下一個(gè) IP 請(qǐng)求分配者。新人廣播包格式如下:
此時(shí),由于還沒有得到 DHCP Server 的最后確認(rèn),新機(jī)器仍然使用 0.0.0.0 為源 IP 地址、255.255.255.255 為目標(biāo)地址進(jìn)行廣播。
當(dāng) DHCP Server 接收到新機(jī)器的 DHCP Request 之后,會(huì)廣播返回給新機(jī)器一個(gè) DHCP ACK 消息包,表明已經(jīng)接受新機(jī)器的選擇,并將這一 IP 地址分配信息和其他配置信息都放入該廣播包,發(fā)給新機(jī)器。DHCP ACK 格式如下:
新機(jī)器收到 DHCP ACK 后,會(huì)檢測(cè)分配的 IP 地址是否能夠適應(yīng),如果不能使用,它就會(huì)給 DHCP Server 發(fā)出 DHCP Decline 消息,通知 DHCP Server 禁用這個(gè) IP 地址,然后新機(jī)器就開始新的地址申請(qǐng)過程。
在新機(jī)器使用 IP 租期超過 50% 時(shí),DHCP Client 會(huì)以單播形式向 DHCP Server 發(fā)送 DHCP Request 報(bào)文來續(xù)租 IP 地址。如果 DHCP Client 成功收到 DHCP Server 發(fā)送的 DHCP ACK 報(bào)文,則按相應(yīng)時(shí)間延長(zhǎng) IP 地址租期;如果沒有收到 DHCP Server 發(fā)送的 DHCP ACK 報(bào)文,則 DHCP Client 繼續(xù)使用這個(gè) IP 地址。
在新機(jī)器使用 IP 租期超過 87.5% 時(shí),DHCP Client 會(huì)以廣播形式向 DHCP Server 發(fā)送 DHCPRequest 報(bào)文來續(xù)租 IP 地址。如果 DHCP Client 成功收到 DHCP Server 發(fā)送的 DHCP ACK 報(bào)文,則按相應(yīng)時(shí)間延長(zhǎng) IP 地址租期;如果沒有收到 DHCP Server 發(fā)送的 DHCP ACK 報(bào)文,則 DHCP Client 繼續(xù)使用這個(gè)IP地址,直到 IP 地址使用租期到期時(shí),DHCP Client 才會(huì)向 DHCP Server 發(fā)送 DHCP Release 報(bào)文來釋放這個(gè) IP 地址,并開始新的 IP 地址申請(qǐng)過程。
MAC 地址在我們查詢 IP 地址的輸出結(jié)果中,有一行:
Link encap:Ethernet HWaddr 28:d2:44:ce:77:51
這個(gè)被稱為 MAC 地址,是一個(gè)網(wǎng)卡的物理地址,用十六進(jìn)制,6 個(gè) byte 表示。
MAC 地址是一個(gè)很容易讓人誤解的地址。因?yàn)?MAC 地址號(hào)稱全球唯一,不會(huì)存在有相同 MAC 地址的網(wǎng)卡。這就很容易讓我們想,既然全球唯一,那網(wǎng)絡(luò)通信直接用 MAC 地址不行嗎?為什么要加個(gè) IP 地址,多封裝一層,再去通信呢?
當(dāng)然是不行的。我們想把一個(gè)網(wǎng)絡(luò)包從一個(gè)地方傳到另一個(gè)地方,除了有確定的地址外,還需要有定位功能。就像你去廣州找博主一樣,我只告訴你我的身份證號(hào),你能在廣州找到我嗎?這種尋找無異于大海撈針。但是如果我告訴你我的詳細(xì)地址,你就可以直接通過導(dǎo)航找到對(duì)應(yīng)的地址,然后再找到我。
IP 地址在一定程度上就承擔(dān)了詳細(xì)地址這種遠(yuǎn)程地位的功能。MAC 地址更像是身份證號(hào),是一個(gè)唯一的標(biāo)識(shí)。它的唯一性設(shè)計(jì)是為了組網(wǎng)的時(shí)候,不同的網(wǎng)卡放在一個(gè)網(wǎng)絡(luò)里面。不用擔(dān)心沖突。
當(dāng)然,MAC 地址也是有一定的定位功能。就像你來到了博主所在的辦公室,你可以在辦公室喊身份證號(hào)是 XXX 的是哪位?博主聽到了,就會(huì)站起來回答你。但是如果你在博主聽不到的地方喊,那肯定不會(huì)有人應(yīng)你。這就說明,MAC 地址的通信范圍比較小,僅僅局限在一個(gè)子網(wǎng)內(nèi)。
參考:
劉超-趣談網(wǎng)絡(luò)協(xié)議系列課;
百度百科-DHCP 詞條;
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/29646.html
摘要:動(dòng)態(tài)路由協(xié)議基于鏈路狀態(tài)路由算法的開放式最短路徑優(yōu)先協(xié)議,廣泛應(yīng)用在數(shù)據(jù)中心的協(xié)議。基于距離矢量路由算法的針對(duì)網(wǎng)絡(luò)之間的路由協(xié)議,稱為外網(wǎng)路由協(xié)議,簡(jiǎn)稱每個(gè)數(shù)據(jù)中心都有自己的路由配置。 ????前面例子中,我們都是在一個(gè)局域網(wǎng)內(nèi)折騰。今天就讓我們擴(kuò)大范圍,在多個(gè)局域網(wǎng)甚至到廣闊的互聯(lián)網(wǎng)世界中遨游,看看這中間會(huì)發(fā)生什么。 ????這個(gè)過程中,跨網(wǎng)關(guān)訪問是我們要了解的第一個(gè)內(nèi)容。 跨網(wǎng)關(guān)訪...
摘要:動(dòng)態(tài)路由協(xié)議基于鏈路狀態(tài)路由算法的開放式最短路徑優(yōu)先協(xié)議,廣泛應(yīng)用在數(shù)據(jù)中心的協(xié)議。基于距離矢量路由算法的針對(duì)網(wǎng)絡(luò)之間的路由協(xié)議,稱為外網(wǎng)路由協(xié)議,簡(jiǎn)稱每個(gè)數(shù)據(jù)中心都有自己的路由配置。 ????前面例子中,我們都是在一個(gè)局域網(wǎng)內(nèi)折騰。今天就讓我們擴(kuò)大范圍,在多個(gè)局域網(wǎng)甚至到廣闊的互聯(lián)網(wǎng)世界中遨游,看看這中間會(huì)發(fā)生什么。 ????這個(gè)過程中,跨網(wǎng)關(guān)訪問是我們要了解的第一個(gè)內(nèi)容。 跨網(wǎng)關(guān)訪...
摘要:構(gòu)成數(shù)據(jù)鏈路數(shù)據(jù)單元數(shù)據(jù)幀或幀,并對(duì)幀定界同步收發(fā)順序的控制。以太網(wǎng)規(guī)定,一組電信號(hào)構(gòu)成一個(gè)數(shù)據(jù)包,叫做幀。因此,整個(gè)幀最短為字節(jié),最長(zhǎng)為字節(jié)。協(xié)議規(guī)定網(wǎng)絡(luò)地址的協(xié)議,叫做協(xié)議。現(xiàn)在廣泛采用的是協(xié)議第四版,簡(jiǎn)稱。 前言 勞于讀書,逸于作文。 原文地址:internet協(xié)議入門 博主博客地址:Damonare的個(gè)人博客 博主之前寫過一篇博客:網(wǎng)絡(luò)協(xié)議分析,在這篇博客里通過抓包,具體的分析...
閱讀 3074·2021-11-19 09:40
閱讀 1559·2021-11-15 11:39
閱讀 662·2021-10-08 10:05
閱讀 2273·2021-09-03 10:29
閱讀 3406·2021-08-12 13:22
閱讀 2151·2019-08-30 15:54
閱讀 3706·2019-08-30 14:03
閱讀 2654·2019-08-30 13:45