一、網(wǎng)絡(luò)基礎(chǔ)知識(shí)
1摘能、分組交換協(xié)議
將報(bào)文分割為一個(gè)個(gè)叫做包(packet)的較小單位進(jìn)行傳輸?shù)姆椒ù趾稀T诜指畹耐瑫r(shí)谢床,會(huì)在每個(gè)包中表明分組序號(hào)辨泳,這個(gè)序號(hào)供接收端重新裝配數(shù)據(jù)淋袖。
2悼凑、協(xié)議分層和OSI參考模型
OSI模型由ISO制訂罚屋,將通信協(xié)議中必要的功能分為了7層晦炊。
2.1OSI參考模型
從上至下依次為:應(yīng)用層鞠鲜、表示層、會(huì)話層断国、傳輸層镊尺、網(wǎng)絡(luò)層、數(shù)據(jù)鏈路層和物理層并思。
- 應(yīng)用層(規(guī)定通信相關(guān)細(xì)節(jié))
針對(duì)特定應(yīng)用規(guī)定特定的協(xié)議庐氮。如電子郵件協(xié)議、文件傳輸協(xié)議等宋彼。 - 表示層(負(fù)責(zé)數(shù)據(jù)格式的轉(zhuǎn)換)
設(shè)備固有數(shù)據(jù)格式和網(wǎng)絡(luò)數(shù)據(jù)格式的轉(zhuǎn)換弄砍。將不同的數(shù)據(jù)轉(zhuǎn)換為相應(yīng)的適合網(wǎng)絡(luò)傳輸?shù)母袷剑换蛘邔?lái)自下一層的數(shù)據(jù)轉(zhuǎn)換為上一層能夠處理的格式输涕。 - 會(huì)話層(通信連接管理)
通信管理音婶。負(fù)責(zé)建立和斷開(kāi)通信連接。管理傳輸層以下的分層莱坎∫率剑可以控制何時(shí)建立連接、何時(shí)斷開(kāi)連接和連接多長(zhǎng)時(shí)間檐什。 - 傳輸層
管理數(shù)據(jù)的傳輸碴卧,確保數(shù)據(jù)被可靠的傳送到目標(biāo)地址。比如:是否有數(shù)據(jù)丟失乃正。 - 網(wǎng)絡(luò)層(將數(shù)據(jù)傳輸?shù)侥繕?biāo)地址)
地址管理和路由選擇住册。負(fù)責(zé)選擇由哪些路由傳遞到目標(biāo)地址。 - 數(shù)據(jù)鏈路層
互聯(lián)設(shè)備之間傳送和識(shí)別數(shù)據(jù)幀瓮具。 - 物理層
將設(shè)備接收到的01數(shù)字流轉(zhuǎn)換為電壓或者脈沖光荧飞,然后傳輸給物理傳輸介質(zhì);或者將接收到的電壓信號(hào)和脈沖轉(zhuǎn)換為01數(shù)字流名党。
3叹阔、傳輸方式分類
可以根據(jù)其數(shù)據(jù)發(fā)送方式進(jìn)行多種分類。
3.1 面向連接型和面向無(wú)連接型
- 面向有連接型
要求雙方建立連接传睹,雙方都確認(rèn)可以連接和接收耳幢,然后才開(kāi)始發(fā)送數(shù)據(jù)。 - 面向無(wú)連接型
不要求建立連接蒋歌,不用確認(rèn)對(duì)方的工作狀態(tài)帅掘,以及不用關(guān)心對(duì)方是否存在委煤,只管發(fā)送,不關(guān)心對(duì)方有沒(méi)有接收到修档。
3.2 電路交換和分組交換
電路交換
歷史相對(duì)久遠(yuǎn)碧绞,主要用于過(guò)去的電話網(wǎng)。
交換機(jī)主要負(fù)責(zé)數(shù)據(jù)的中轉(zhuǎn)處理吱窝。計(jì)算機(jī)首先被連接到交換機(jī)上讥邻,交換機(jī)之間則由眾多通信線路再繼續(xù)連接。因此計(jì)算機(jī)之間在發(fā)送數(shù)據(jù)時(shí)院峡,需要通過(guò)交換機(jī)與目標(biāo)主機(jī)建立通信電路兴使。建立好連接后,用戶就可以一直使用這條線路照激,直到該連接被斷開(kāi)发魄。
這樣的話,有個(gè)嚴(yán)重的缺點(diǎn):一旦兩個(gè)計(jì)算機(jī)建立連接俩垃,那么這條線路就會(huì)被獨(dú)自占用励幼。如果并發(fā)數(shù)超過(guò)了通信線路數(shù),就意味著多出來(lái)的一部分無(wú)法進(jìn)行通信口柳。-
分組交換(蓄積交換)
讓連接到通信電路的計(jì)算機(jī)將所要發(fā)送的數(shù)據(jù)分成多個(gè)數(shù)據(jù)包嵌削,并在每個(gè)數(shù)據(jù)包中加入序號(hào)、發(fā)送端和接收端的地址望艺,然后進(jìn)行發(fā)送苛秕。接收端接收到數(shù)據(jù)包后再進(jìn)行排序處理即可。這樣所有的計(jì)算機(jī)就可以一齊收發(fā)數(shù)據(jù)荣茫,提高了通信線路的利用率想帅。
一種較新的通信方式苹粟,TCP/IP就是采用了分組交換技術(shù)。由分組交換機(jī)(路由器)連接通信線路跃闹。
image.png
主要流程為:
1、發(fā)送端將數(shù)據(jù)分組發(fā)送給路由器
2啡莉、路由器接收到數(shù)據(jù)后,緩存到自己的緩沖區(qū)旨剥,然后再轉(zhuǎn)發(fā)給目標(biāo)計(jì)算機(jī)咧欣。
3.3 根據(jù)接收端數(shù)量分類
- 單播
- 廣播
- 多播
- 任播
二、TCP/IP基礎(chǔ)知識(shí)
ARPANET:全球互聯(lián)網(wǎng)的鼻祖轨帜。
TCP/IP:由ARPANET的一個(gè)機(jī)構(gòu)研發(fā)出來(lái)
SMTP:發(fā)送電子郵件時(shí)使用的協(xié)議
每個(gè)包的首部至少包含兩個(gè)信息:發(fā)送端和接收端地址以及上一層的協(xié)議類型魄咕。
經(jīng)過(guò)每個(gè)協(xié)議分層時(shí),都必須有識(shí)別包發(fā)送端和接收端的信息蚌父。以太網(wǎng)會(huì)用MAC地址哮兰、IP會(huì)用IP地址毛萌,而傳輸層用端口號(hào)識(shí)別。
三喝滞、數(shù)據(jù)鏈路
OSI模型中的數(shù)據(jù)鏈路層阁将,有時(shí)也指以太網(wǎng)、無(wú)限局域網(wǎng)等通信手段右遭。
數(shù)據(jù)鏈路層的協(xié)議定義了通過(guò)通信媒介(如雙絞線電纜做盅、光纖、電波等介質(zhì))互聯(lián)的設(shè)備之間傳輸?shù)囊?guī)范窘哈。此外吹榴,各個(gè)設(shè)備之間有時(shí)也會(huì)通過(guò)交換機(jī)、網(wǎng)橋滚婉、中繼器等中轉(zhuǎn)數(shù)據(jù)图筹。
數(shù)據(jù)鏈路層的相關(guān)技術(shù):MAC尋址(物理尋址)、介質(zhì)共享让腹、非公有網(wǎng)絡(luò)婿斥、分組交換、環(huán)路檢測(cè)哨鸭、VLAN(虛擬局域網(wǎng))等民宿。
1、相關(guān)的技術(shù)
1.1像鸡、MAC地址
MAC地址用于識(shí)別數(shù)據(jù)鏈路中互聯(lián)的節(jié)點(diǎn)活鹰。
MAC地址長(zhǎng)48比特。一般的數(shù)字使用規(guī)則如下:
1只估、第1位:?jiǎn)尾サ刂?志群,多播地址1;
2蛔钙、第2位:全局地址0锌云,本地地址1;
3吁脱、第3~24位:由IEEE管理并保存的各廠家之間的不重復(fù)的識(shí)別碼桑涎;
4、第25~48位:由廠商管理并保證不重復(fù)的廠商內(nèi)識(shí)別碼兼贡。
MAC地址由12位16進(jìn)制數(shù)字表示
1.2共享介質(zhì)型網(wǎng)絡(luò)(半雙工工作方式)
由多個(gè)設(shè)備共享一個(gè)通信介質(zhì)的一種網(wǎng)絡(luò)攻冷。
共享介質(zhì)型網(wǎng)絡(luò)的兩種介質(zhì)訪問(wèn)控制方式:爭(zhēng)用方式和令牌傳遞方式。
- 爭(zhēng)用方式
是指爭(zhēng)奪獲取數(shù)據(jù)傳輸?shù)臋?quán)利遍希,也叫CSMA等曼。這種方式通常令網(wǎng)絡(luò)中的各個(gè)站采用先到先得的方式占用信道發(fā)送數(shù)據(jù),如果多個(gè)站同時(shí)發(fā)送幀,就會(huì)沖突禁谦,進(jìn)而導(dǎo)致網(wǎng)絡(luò)擁堵和性能下降胁黑。
改良后的方式為CSMA/CD,要求每個(gè)站提前檢查沖突州泊,一旦有沖突丧蘸,則盡早釋放信道。工作原理如下:
1拥诡、如果載波信道上沒(méi)有數(shù)據(jù)驅(qū)動(dòng)触趴,則任何站都可以發(fā)送數(shù)據(jù);
2渴肉、檢查是否會(huì)發(fā)生沖突冗懦,一旦發(fā)生沖突,放棄發(fā)送數(shù)據(jù)仇祭,并立即釋放載波信道披蕉。
3、放棄發(fā)送后乌奇,隨機(jī)延遲一段時(shí)間没讲,再次查詢是否可以發(fā)送。 - 令牌傳遞方式
一種沿著令牌環(huán)發(fā)送一種叫做“令牌”的特殊報(bào)文礁苗,是控制傳輸?shù)囊环N方式爬凑,只有獲得令牌的站才能發(fā)送數(shù)據(jù)。這樣做才不會(huì)發(fā)生沖突试伙,并且保證了公平性嘁信。
類似的,有非共享介質(zhì)型網(wǎng)絡(luò)疏叨,它是全雙工工作方式潘靖。
半雙工:同一時(shí)間只能發(fā)或者只能收,同一時(shí)間只能做一件事蚤蔓;
全雙工:發(fā)送和接收可以同時(shí)進(jìn)行卦溢。
2、以太網(wǎng)
規(guī)范簡(jiǎn)單秀又、易于NIC(網(wǎng)卡)及驅(qū)動(dòng)程序?qū)崿F(xiàn)单寂。
四、IP協(xié)議(網(wǎng)際協(xié)議)
負(fù)責(zé)將數(shù)據(jù)包發(fā)送給最終目標(biāo)計(jì)算機(jī)涮坐,實(shí)現(xiàn)終端節(jié)點(diǎn)之間的通信凄贩,也叫做點(diǎn)對(duì)點(diǎn)通信。位于網(wǎng)絡(luò)層袱讹。
主機(jī):配有IP地址的設(shè)備,但是不進(jìn)行路由控制的設(shè)備
路由器:既配有IP地址又具有路由控制能力的設(shè)備
節(jié)點(diǎn):路由器和主機(jī)的統(tǒng)稱。
1捷雕、IP基礎(chǔ)知識(shí)
IP大致分為三大作用模塊:IP尋址椒丧、路由和IP分包和組包。
1.1救巷、IP地址
IP地址用于在連接到網(wǎng)絡(luò)中的所有主機(jī)中識(shí)別出進(jìn)行通信的目標(biāo)地址壶熏。它不會(huì)受連接的數(shù)據(jù)鏈路的不同而改變。
在網(wǎng)橋或者交換集線器等物理層或數(shù)據(jù)鏈路層數(shù)據(jù)包轉(zhuǎn)發(fā)設(shè)備中浦译,不需要設(shè)置IP地址棒假,因?yàn)檫@些設(shè)備只負(fù)責(zé)將IP包轉(zhuǎn)化為01比特流或者對(duì)數(shù)據(jù)進(jìn)行轉(zhuǎn)發(fā)。
1.2精盅、路由控制
指將分組數(shù)據(jù)發(fā)送到最終目標(biāo)地址的功能跳:網(wǎng)絡(luò)中的一個(gè)區(qū)間帽哑。IP包正是在網(wǎng)絡(luò)中一個(gè)個(gè)跳間被轉(zhuǎn)發(fā)。因此IP路由也叫做多跳路由叹俏。
1.2.1妻枕、路由控制表
所有主機(jī)都維護(hù)著一張路由控制表,該表記錄IP數(shù)據(jù)下一步應(yīng)該發(fā)給哪個(gè)路由器粘驰,IP包將根據(jù)這個(gè)路由表在各個(gè)數(shù)據(jù)鏈路上傳輸屡谐。1.2.2、IP屬于面向無(wú)連接型
在發(fā)包前蝌数,不需要建立與目標(biāo)地址之間的連接愕掏,如果上層有發(fā)送的IP數(shù)據(jù),該數(shù)據(jù)會(huì)立即被壓縮成IP包發(fā)送出去顶伞。
采用無(wú)連接型的原因:為了簡(jiǎn)化和提速饵撑。面向連接的處理相對(duì)復(fù)雜,甚至管理每個(gè)連接本身就比較復(fù)雜枝哄;此外肄梨,如果每次通信前都要事先連接,就會(huì)降低處理速度挠锥。建立連接可以交給它的上一層--傳輸層众羡。
1.3、IP地址基礎(chǔ)知識(shí)
1.3.1蓖租、IP地址定義
IP地址由32位(二進(jìn)制)正整數(shù)表示粱侣,每8位一組,分成4組蓖宦。一臺(tái)路由器也可以配置兩個(gè)以上的網(wǎng)卡齐婴,所以也可以設(shè)置兩個(gè)以上的IP地址。
1.3.2稠茂、IP地址由網(wǎng)絡(luò)和主機(jī)兩部分標(biāo)識(shí)組成
IP弟子由“網(wǎng)絡(luò)標(biāo)識(shí)(網(wǎng)絡(luò)地址)”和“主機(jī)標(biāo)識(shí)(主機(jī)地址)”組成柠偶。
網(wǎng)絡(luò)標(biāo)識(shí)在數(shù)據(jù)鏈路的每個(gè)階段配置不同的值情妖,但是網(wǎng)絡(luò)標(biāo)識(shí)必須保證相互連接的每個(gè)段的地址不相重復(fù),但是相同段內(nèi)相連的主機(jī)必須有相同的網(wǎng)絡(luò)地址(網(wǎng)絡(luò)標(biāo)識(shí))诱担。
1.3.3、IP地址分類(下面說(shuō)的都是二進(jìn)制)
- A類地址:首位以0開(kāi)頭的地址蔫仙,從第1位到第8位是它的網(wǎng)絡(luò)標(biāo)識(shí)料睛,即0.0.0.0~127.0.0.0是A類的網(wǎng)絡(luò)地址。則后24位相當(dāng)于主機(jī)標(biāo)識(shí)摇邦。所以該網(wǎng)段內(nèi)可以容納2的24次方減2個(gè)主機(jī)地址恤煞。
- B類地址:前兩位是10的地址,從第1位到第16位是網(wǎng)絡(luò)標(biāo)識(shí)施籍,后16位則為主機(jī)地址(主機(jī)標(biāo)識(shí))
- C類地址:前三位是110的地址居扒,從第1位到第24位是網(wǎng)絡(luò)標(biāo)識(shí),后8位是主機(jī)地址(主機(jī)標(biāo)識(shí))法梯,則可容納2的8次方減2個(gè)主機(jī)地址苔货,即254個(gè)(??注意不是255個(gè))
-
D類地址:前四位是1110的地址,從第1位到第32位是網(wǎng)絡(luò)標(biāo)識(shí)立哑,沒(méi)有主機(jī)標(biāo)識(shí)夜惭。因此也一般被用于多播image.png
注意??:在分配IP地址時(shí)主機(jī)標(biāo)識(shí)不能全為0或者全為1,因?yàn)槿繛?標(biāo)識(shí)對(duì)應(yīng)的網(wǎng)絡(luò)地址不可獲知铛绰,全部為1的主機(jī)地址通常用于廣播地址诈茧。(這也是上面為什么要減去2的原因)
1.3.4、廣播地址
IP地址的主機(jī)標(biāo)識(shí)部分全部設(shè)置為1,就成了廣播地址。
有兩種廣播:本地廣播和直接廣播
- 本地廣播
在本網(wǎng)絡(luò)內(nèi)的廣播鉴腻,本網(wǎng)絡(luò)內(nèi)是指網(wǎng)絡(luò)標(biāo)識(shí)部分相同,處于同一網(wǎng)段鸥昏; -
直接廣播
在不同網(wǎng)絡(luò)之間廣播,即不在同一個(gè)網(wǎng)段姐帚。
image.png
1.3.5吏垮、IP多播
多播用于將包發(fā)送給特定組內(nèi)的所有主機(jī),能夠穿透路由器罐旗,發(fā)送給其他網(wǎng)段(網(wǎng)絡(luò)標(biāo)識(shí))內(nèi)的特定主機(jī)膳汪。
廣播是發(fā)送給當(dāng)前網(wǎng)絡(luò)標(biāo)識(shí)內(nèi)的所有主機(jī),由主機(jī)去判斷是否接收九秀,而且由于是在同一個(gè)網(wǎng)段內(nèi)遗嗽,所以它無(wú)法穿透路由。
- IP多播和地址
多播采用D類地址鼓蜒,即從首位開(kāi)始的四位為1110痹换。
1.3.6征字、子網(wǎng)掩碼
為了減少IP地址分類帶來(lái)的浪費(fèi)而提出的。
子網(wǎng)掩碼通過(guò)子網(wǎng)網(wǎng)絡(luò)地址細(xì)分出比A類晴音、B類柔纵、C類更小粒度的網(wǎng)絡(luò)缔杉,將原來(lái)A類锤躁、B類、C類等分類中的主機(jī)地址部分用作子網(wǎng)地址或详。
引入了子網(wǎng)后系羞,IP地址有兩種識(shí)別碼:IP地址本身和網(wǎng)絡(luò)部的子網(wǎng)掩碼。子網(wǎng)掩碼也是32位的霸琴,對(duì)應(yīng)子網(wǎng)的網(wǎng)絡(luò)標(biāo)識(shí)部分為1椒振,對(duì)應(yīng)于子網(wǎng)的主機(jī)標(biāo)識(shí)部分為0。也因此梧乘,可以看出子網(wǎng)掩碼的首位一定是連續(xù)的1澎迎。
把子網(wǎng)掩碼和子網(wǎng)主機(jī)標(biāo)識(shí)相對(duì)應(yīng)的位置記為0,是為了與運(yùn)算的方便选调,通過(guò)與運(yùn)算夹供,我們可以容易得到子網(wǎng)網(wǎng)絡(luò)標(biāo)識(shí)和主機(jī)標(biāo)識(shí)。
1.3.7仁堪、CIDR和VLSM
放棄IP分類哮洽,采用任意長(zhǎng)度分割I(lǐng)P地址的網(wǎng)絡(luò)標(biāo)識(shí)和主機(jī)標(biāo)識(shí),把這種方式叫做CIDR(無(wú)類型域間選路)
可以隨機(jī)修改組織內(nèi)各個(gè)部門的子網(wǎng)掩碼長(zhǎng)度的機(jī)制稱為VLSM(可變長(zhǎng)子網(wǎng)掩碼)
1.4弦聂、路由控制
在發(fā)送數(shù)據(jù)過(guò)程中指明發(fā)往目標(biāo)地址的路徑的信息鸟辅,保存這種信息的就是路由控制表。
路由控制表的形成有兩種方式:靜態(tài)路由(管理員手動(dòng)設(shè)置)和動(dòng)態(tài)路由(路由器之間相互之間根據(jù)路由協(xié)議交換信息)莺葫。
IP協(xié)議始終認(rèn)為路由表是正確的匪凉。IP本身沒(méi)有定義和制作路由表的機(jī)制,路由表由路由協(xié)議制作而成捺檬。
1.4.1再层、IP地址與路由控制
IP的網(wǎng)絡(luò)地址部分用于進(jìn)行路由控制。
路由控制表中記錄著網(wǎng)絡(luò)地址與下一步應(yīng)該發(fā)送到的路由器的地址欺冀。在發(fā)送IP包時(shí)树绩,首先要確定IP包首部中的目標(biāo)地址,再?gòu)漠?dāng)前路由器中找到與該目標(biāo)地址相同或者最吻合的網(wǎng)絡(luò)地址隐轩,最后根據(jù)找到的網(wǎng)絡(luò)地址發(fā)給相應(yīng)的路由器饺饭。
- 默認(rèn)路由
一般表姐為0.0.0.0/0或default,這里的地址和IP地址0.0.0.0不一樣职车,可以發(fā)現(xiàn)其子網(wǎng)掩碼的長(zhǎng)度為0瘫俊,則說(shuō)明沒(méi)有網(wǎng)絡(luò)標(biāo)識(shí)部分鹊杖。 - 主機(jī)路由
格式為“IP地址/32”,表示整個(gè)長(zhǎng)度32位都是網(wǎng)絡(luò)標(biāo)識(shí)(網(wǎng)絡(luò)地址)扛芽,那么只有在完全匹配的情況下它才會(huì)接收來(lái)自其他路由器的數(shù)據(jù)骂蓖。也被稱為主機(jī)路由。 - 環(huán)回地址
在同一個(gè)計(jì)算機(jī)上的程序之間進(jìn)行網(wǎng)絡(luò)通信時(shí)所使用的一個(gè)默認(rèn)地址川尖,127.0.0.1就是環(huán)回地址登下,也就是我們常說(shuō)的localhost。使用這個(gè)IP時(shí)叮喳,數(shù)據(jù)包不會(huì)流向網(wǎng)絡(luò)被芳。
1.4.2、路由控制表的聚合
利用網(wǎng)絡(luò)地址的比特分布可以有效的進(jìn)行分層配置馍悟,對(duì)內(nèi)無(wú)論有多少個(gè)子網(wǎng)掩碼畔濒,對(duì)外呈現(xiàn)出的也是同一個(gè)網(wǎng)絡(luò)地址。這樣可以減少路由表的條目锣咒,降低管理它所花費(fèi)的內(nèi)存和CPU侵状,也提高了查找路由表的速度。1.5毅整、IP分割處理與再構(gòu)成處理
MTU:最大傳輸單元
1.5.1趣兄、數(shù)據(jù)鏈路不同,MTU則不同
每種數(shù)據(jù)鏈路的最大傳輸單元都不盡相同毛嫉,因?yàn)樗麄兊氖褂媚康牟煌?/p>
1.5.2诽俯、IP報(bào)文的分片和重組
因?yàn)槊織l數(shù)據(jù)鏈路的MTU不同,所以當(dāng)內(nèi)容太大時(shí)承粤,一次性傳輸不完暴区,這個(gè)時(shí)候就有必要對(duì)IP分片。是否需要分片由路由器決定辛臊。
1.5.3刃唤、路徑MTU發(fā)現(xiàn)
分片機(jī)制的不足:
1隔心、因?yàn)榉制窃诼酚善髦羞M(jìn)行的,所以加重了路由器的處理負(fù)擔(dān)
2尚胞、網(wǎng)絡(luò)安全的需要硬霍。一般是不期望進(jìn)行IP數(shù)據(jù)包的切片處理的
3、一旦某個(gè)分片丟失笼裳,就會(huì)造成整個(gè)IP數(shù)據(jù)報(bào)作廢唯卖。
路徑MTU粱玲,就是為了解決上述問(wèn)題的。其工作原理如下:
1拜轨、在發(fā)送端主機(jī)發(fā)送IP數(shù)據(jù)報(bào)時(shí)將其首部的分片禁止標(biāo)志為設(shè)置為1抽减。根據(jù)這個(gè)標(biāo)志位,圖中路由器即使遇到需要分片才能處理的大包橄碾,此時(shí)也不會(huì)切片卵沉,而是選擇放棄,并回傳一個(gè)合適的MTU值給發(fā)送主機(jī)堪嫂;
1.6恶复、IPv6
1.7、IPv4首部
IP首部中包含著用于IP協(xié)議進(jìn)行發(fā)包控制時(shí)所有的必要信息速挑。五谤牡、IP協(xié)議相關(guān)技術(shù)
IP的目的是讓目標(biāo)主機(jī)收到數(shù)據(jù)包,這一過(guò)程除此之外姥宝,還需要有能夠解析主機(jī)名稱和MAC地址的功能翅萤,以及其他必不可少的功能。
1腊满、DNS
我們?cè)谠L問(wèn)一些網(wǎng)站的時(shí)候套么,使用的是如“www.baidu.com”之類的IP地址,而不是類似于“192.168.112.3”之類的羅馬數(shù)字和點(diǎn)號(hào)組成的地址碳蛋。使用羅馬數(shù)字胚泌,明顯不方便。而使用前者肃弟,網(wǎng)絡(luò)中是怎么解析的呢玷室?
DNS就是用來(lái)將那串字符串轉(zhuǎn)為具體IP地址的。它用來(lái)有效管理主機(jī)名和IP地址之間的對(duì)應(yīng)的關(guān)系笤受,它維護(hù)了一個(gè)用來(lái)表示組織內(nèi)部主機(jī)名和IP地址之間的對(duì)應(yīng)關(guān)系的數(shù)據(jù)庫(kù)穷缤。
1.1、域名的構(gòu)成
域名是指為了識(shí)別主機(jī)名稱和組織機(jī)構(gòu)名稱的一種具有分層的名稱箩兽。域名由英文字母用點(diǎn)號(hào)連接構(gòu)成津肛。
- 域名服務(wù)器
管理域名的主機(jī)和響應(yīng)的軟件。它可以管理所在分層的域的相關(guān)信息比肄。其所管理的分層叫做ZONE快耿。 -
解析器
進(jìn)行DNS查詢的主機(jī)和軟件囊陡。用戶所使用的工作站或個(gè)人電腦都屬于解析器。
image.png
1.2掀亥、DNS查詢
如圖撞反,kusa.co.jp要訪問(wèn)網(wǎng)站www.ietf.org:
解析器為了調(diào)查IP地址,向域名服務(wù)器進(jìn)行查詢處理搪花。接收這個(gè)查詢請(qǐng)求的域名服務(wù)器會(huì)首先在自己的數(shù)據(jù)庫(kù)進(jìn)行查找遏片;如果有該域名所對(duì)應(yīng)的IP地址就返回,如果沒(méi)有撮竿,再向上一層根域名服務(wù)器進(jìn)行查詢處理吮便,一直到根域名服務(wù)器,如果有則返回域名服務(wù)器想要的數(shù)據(jù)幢踏。
解析器和域名服務(wù)器會(huì)將了解到的最新信息保存到緩存里髓需。
2、ARP
ARP:一種解決地址問(wèn)題的協(xié)議房蝉。以目標(biāo)IP地址為線索僚匆,用來(lái)定位下一個(gè)應(yīng)該接收數(shù)據(jù)分包的網(wǎng)絡(luò)設(shè)備的MAC地址。
ARP只適用于IPv4搭幻,IPv6使用ICMPv6替代咧擂。
2.1、工作機(jī)制
ARP是借助ARP請(qǐng)求與ARP響應(yīng)兩種類型的包確定MAC地址的檀蹋。如圖松申,處于同一鏈路的兩臺(tái)主機(jī),A要想知道B的MAC地址俯逾,那么過(guò)程如下:
1贸桶、A通過(guò)廣播的方式發(fā)送一個(gè)ARP請(qǐng)求,該請(qǐng)求中包含了想要了解的B的IP地址纱昧。因?yàn)椴捎玫氖菑V播的方式刨啸,所以處于同一鏈路上的所有主機(jī)和路由器都會(huì)進(jìn)行解析。
2识脆、如果有主機(jī)或者路由器的IP地址和ARP請(qǐng)求中的相同设联,那么這個(gè)節(jié)點(diǎn)就將自己的MAC地址塞入ARP響應(yīng)包,并返回給A灼捂。
3离例、A獲取到了MAC地址做后續(xù)處理。并為了避免每次都去做ARP解析悉稠,A會(huì)將該MAC地址緩存一段時(shí)間宫蛆。同樣,B也會(huì)將該MAC地址儲(chǔ)存起來(lái)。
MAC地址和IP地址是否只要其中一個(gè)就可以了呢耀盗?
2.2想虎、RARP
將ARP反過(guò)來(lái),從MAC地址定位IP地址的協(xié)議叛拷。如將打印機(jī)服務(wù)等小型嵌入式設(shè)備接入到網(wǎng)絡(luò)時(shí)就經(jīng)常會(huì)用到舌厨。2.3、ICMP
確認(rèn)IP包是否成功送達(dá)目標(biāo)地址忿薇;通知再發(fā)送過(guò)程當(dāng)中IP包被廢棄的具體原因裙椭;改善網(wǎng)絡(luò)設(shè)置等。通過(guò)這些就可以獲得網(wǎng)絡(luò)是否正常署浩,設(shè)置是否有誤等異常信息揉燃,從而作出網(wǎng)絡(luò)診斷。
2.3.1二汛、ICMPv6
如果沒(méi)有ICMPv6則IPv6就無(wú)法進(jìn)行正常的通信婿崭。在IPv6中,IP地址定位MAC地址的協(xié)議從ARP轉(zhuǎn)為了ICMP的鄰居探索消息肴颊,這種鄰居探索消息融合了IPv4的ARP、ICMP重定向和ICMP路由器選擇消息等功能于一體渣磷,甚至還提供了自動(dòng)設(shè)置IP地址的功能婿着。
鄰居探索利用的是IPv6的多播地址實(shí)現(xiàn)的(ARP使用的是廣播方式)。(多播和廣播的區(qū)別)
2.4醋界、DHCP
為了實(shí)現(xiàn)自動(dòng)設(shè)置IP地址竟宋、統(tǒng)一管理IP地址分配,就產(chǎn)生了DHCP協(xié)議形纺。使用DHCP協(xié)議丘侠,就可以實(shí)現(xiàn)即插即用的功能。比如電腦設(shè)備每移動(dòng)到一個(gè)新的地方逐样,都會(huì)產(chǎn)生一個(gè)新的IP地址蜗字,就是DHCP協(xié)議所起的作用。
2.4.1脂新、工作機(jī)制
1挪捕、先架設(shè)一臺(tái)DHCP服務(wù)器;
2争便、將DHCP所要分配的IP地址级零、相應(yīng)的子網(wǎng)掩碼、路由控制信息以及DNS服務(wù)器地址等設(shè)置到服務(wù)器上
DHCP分配IP地址的兩種方法為:在特定的IP地址中自動(dòng)選出一個(gè)進(jìn)行分配滞乙;根據(jù)MAC地址分配固定的IP地址奏纪。
由DHCP的功能可以發(fā)現(xiàn)鉴嗤,它是為了獲取IP地址而設(shè)定的。一般有兩個(gè)階段:一般的家庭中序调,由寬帶路由器充當(dāng)DHCP角色醉锅。而類似于公司這種龐大的網(wǎng)絡(luò),則需要架設(shè)單獨(dú)的DHCP服務(wù)器或者使用DHCP中繼代理炕置。
2.4.2荣挨、DHCP中繼代理
該中繼代理保存了DHCP服務(wù)器的IP地址。DHCP客戶端會(huì)向DHCP中繼代理發(fā)送DHCP請(qǐng)求包朴摊,DHCP中繼在接收到這個(gè)廣播包以后默垄,以單播的形式發(fā)送給DHCP服務(wù)器,DHCP服務(wù)器收到該包后向DHCP中繼代理做應(yīng)答甚纲,再由中繼代理把包含IP地址的包轉(zhuǎn)發(fā)給相應(yīng)的DHCP客戶端口锭。
3、IP隧道
如圖介杆,因?yàn)閮蓚€(gè)IPv6之間要通信的話鹃操,必須經(jīng)過(guò)一個(gè)IPv4網(wǎng)絡(luò),這樣是無(wú)法實(shí)現(xiàn)通信的春哨。此時(shí)就需要采用IP隧道的功能荆隘。
IP隧道會(huì)將哪些從A發(fā)過(guò)來(lái)的IPv6的包統(tǒng)一和為一個(gè)數(shù)據(jù),再為之追加一個(gè)IPv4首部以后轉(zhuǎn)發(fā)給C赴背。