運維網絡基礎知識及網絡基礎
發布時(shí)間(jiān):2023-05-22 閱讀: 分享

第1章 運維網絡基礎

1.1 影(yǐng)響網絡傳輸速率的因素

① 網卡的速率

② 傳輸介質速率

1Mbps ==>b==>bit → 網絡數(shù)據單位

B==>Byte → 存儲數(shù)據單位

100M=100/8=12.5MB 1B=8b 1b=1/8B

1.2 交換機概念基礎

實現一個(gè)局域網絡內(nèi),多(duō)台主機通(tōng)訊的需求

在一個(gè)交換網絡裏面實現互相通(tōng)訊的身份證表示信息:mac地址。

交換機所連接的網絡稱為(wèi)一個(gè)廣播域,交換機多(duō)個(gè)接口都在一個(gè)廣播域中

如下圖,交換機。主要目的是建立一個(gè)局域網絡。讓多(duō)台不同主機之間(jiān)實現通(tōng)訊。

圖片


1.3 路由器(qì)基礎概念

隔離廣播風暴,實現不同局域網(網段)之間(jiān)主機通(tōng)訊

在不同交換網絡裏面實現互相通(tōng)訊的身份證表示信息:ip地址(邏輯地址)

IP地址==局域網表示信息+主機标識信息

網段信息(網絡地址)+主機地址信息

實現多(duō)個(gè)路由器(qì)之間(jiān)路由表信息相同的過程,成為(wèi)路由收斂過程。

利用動态路由器(qì)協議實現

靜态路由器(qì)協議:需要手工添加路由信息到路由表中

動态路由協議:自動獲取到其他路由器(qì)中路由表的信息

RIP SDPE IS-IS EIGRP

路由器(qì)主要兩個(gè)作(zuò)用

① 路由尋址

② 路由選路 如下圖路由器(qì)的概念

圖片


1.4 MAC地址和(hé)IP地址

MAC地址

每個(gè)網卡在世界上(shàng)唯一的身份标識,具有(yǒu)唯一性;交換機和(hé)服務器(qì)的每個(gè)接口都有(yǒu)一個(gè)mac地址;

mac地址是由12位16進制(zhì)數(shù)組成的,如E0-DB-55-B2-30-6E;

 1位16進制(zhì)數(shù)=4位bit;

 2位16進制(zhì)數(shù)=8位bit;

所以一個(gè)mac地址等于48位二進制(zhì)數(shù);

ip地址

是由局域網表示段+主機标識;每個(gè)局域網內(nèi)的ip地址是不能重複的,但(dàn)是不同局域網內(nèi)的ip地址是可(kě)以出現相同的。

如192.168.2.1;是32位二進制(zhì)數(shù)

mac地址和(hé)IP地址區(qū)别:

mac地址隻在一個(gè)局域網內(nèi)有(yǒu)效 小(xiǎo)名

IP地址在不通(tōng)網段之間(jiān)都有(yǒu)效 大(dà)名

1.5 bit和(hé)Byte,以及傳輸速率

bit是介質傳輸的最小(xiǎo)單位,1個(gè)二進制(zhì)數(shù)就是1個(gè)bit;

 Byte是存儲介質中最小(xiǎo)單位,也叫字節,一個(gè)英文字母或者數(shù)字符号是一個(gè)byte,一個(gè)漢字是2byte,1byte=8bit,1bit=1/8byte

1 1 1 1 1 1 0 0 1byte

 bts是每秒(miǎo)鍾傳輸的bit大(dà)小(xiǎo),通(tōng)常說的是端口或者傳輸介質的傳輸速率,如運營商承諾的100Mbps,實際傳輸文件大(dà)小(xiǎo)就隻有(yǒu)100Mbps/8=12.5MBS

第2章 網絡基礎

前沿: 計(jì)算(suàn)機網絡學習的核心內(nèi)容就是網絡協議的學習。網絡協議是為(wèi)計(jì)算(suàn)機網絡中進行(xíng)數(shù)據交換而建立的規則、标準或者說是約定的集合。因為(wèi)不同用戶的數(shù)據終端可(kě)能采取的字符集是不同的,兩者需要進行(xíng)通(tōng)信,必須要在一定的标準上(shàng)進行(xíng)。一個(gè)很(hěn)形象地比喻就是我們的語言,我們大(dà)天朝地廣人(rén)多(duō),地方性語言也非常豐富,而且方言之間(jiān)差距巨大(dà)。A地區(qū)的方言可(kě)能B地區(qū)的人(rén)根本無法接受,所以我們要為(wèi)全國人(rén)名進行(xíng)溝通(tōng)建立一個(gè)語言标準,這就是我們的普通(tōng)話(huà)的作(zuò)用。同樣,放眼全球,我們與外國友(yǒu)人(rén)溝通(tōng)的标準語言是英語,所以我們才要苦逼的學習英語。

計(jì)算(suàn)機網絡協議同我們的語言一樣,多(duō)種多(duō)樣。而ARPA公司與1977年到1979年推出了一種名為(wèi)ARPANET的網絡協議受到了廣泛的熱捧,其中最主要的原因就是它推出了人(rén)盡皆知的TCP/IP标準網絡協議。目前TCP/IP協議已經成為(wèi)Internet中的“通(tōng)用語言”,下圖為(wèi)不同計(jì)算(suàn)機群之間(jiān)利用TCP/IP進行(xíng)通(tōng)信的示意圖。



2.1 網絡層次劃分

為(wèi)了使不同計(jì)算(suàn)機廠家(jiā)生(shēng)産的計(jì)算(suàn)機能夠相互通(tōng)信,以便在更大(dà)的範圍內(nèi)建立計(jì)算(suàn)機網絡,國際标準化組織(ISO)在1978年提出了“開(kāi)放系統互聯參考模型”,即著名的OSI/RM模型(Open System Interconnection/Reference Model)。它将計(jì)算(suàn)機網絡體(tǐ)系結構的通(tōng)信協議劃分為(wèi)七層,自下而上(shàng)依次為(wèi):物理(lǐ)層(Physics Layer)、數(shù)據鏈路層(Data Link Layer)、網絡層(Network Layer)、傳輸層(Transport Layer)、會(huì)話(huà)層(Session Layer)、表示層(Presentation Layer)、應用層(Application Layer)。其中第四層完成數(shù)據傳送服務,上(shàng)面三層面向用戶。

除了标準的OSI七層模型以外,常見的網絡層次劃分還(hái)有(yǒu)TCP/IP四層協議以及TCP/IP五層協議,它們之間(jiān)的對應關系如下圖所示:



2.2 OSI七層網絡模型

TCP/IP協議毫無疑問是互聯網的基礎協議,沒有(yǒu)它就根本不可(kě)能上(shàng)網,任何和(hé)互聯網有(yǒu)關的操作(zuò)都離不開(kāi)TCP/IP協議。不管是OSI七層模型還(hái)是TCP/IP的四層、五層模型,每一層中都要自己的專屬協議,完成自己相應的工作(zuò)以及與上(shàng)下層級之間(jiān)進行(xíng)溝通(tōng)。由于OSI七層模型為(wèi)網絡的标準層次劃分,所以我們以OSI七層模型為(wèi)例從下向上(shàng)進行(xíng)一一介紹。



1)物理(lǐ)層(Physical Layer)

激活、維持、關閉通(tōng)信端點之間(jiān)的機械特性、電(diàn)氣特性、功能特性以及過程特性。該層為(wèi)上(shàng)層協議提供了一個(gè)傳輸數(shù)據的可(kě)靠的物理(lǐ)媒體(tǐ)。簡單的說,物理(lǐ)層确保原始的數(shù)據可(kě)在各種物理(lǐ)媒體(tǐ)上(shàng)傳輸。物理(lǐ)層記住兩個(gè)重要的設備名稱,中繼器(qì)(Repeater,也叫放大(dà)器(qì))和(hé)集線器(qì)。

2)數(shù)據鏈路層(Data Link Layer)

數(shù)據鏈路層在物理(lǐ)層提供的服務的基礎上(shàng)向網絡層提供服務,其最基本的服務是将源自網絡層來(lái)的數(shù)據可(kě)靠地傳輸到相鄰節點的目标機網絡層。為(wèi)達到這一目的,數(shù)據鏈路必須具備一系列相應的功能,主要有(yǒu):如何将數(shù)據組合成數(shù)據塊,在數(shù)據鏈路層中稱這種數(shù)據塊為(wèi)幀(frame),幀是數(shù)據鏈路層的傳送單位;如何控制(zhì)幀在物理(lǐ)信道(dào)上(shàng)的傳輸,包括如何處理(lǐ)傳輸差錯,如何調節發送速率以使與接收方相匹配;以及在兩個(gè)網絡實體(tǐ)之間(jiān)提供數(shù)據鏈路通(tōng)路的建立、維持和(hé)釋放的管理(lǐ)。數(shù)據鏈路層在不可(kě)靠的物理(lǐ)介質上(shàng)提供可(kě)靠的傳輸。該層的作(zuò)用包括:物理(lǐ)地址尋址、數(shù)據的成幀、流量控制(zhì)、數(shù)據的檢錯、重發等。

有(yǒu)關數(shù)據鏈路層的重要知識點:

1> 數(shù)據鏈路層為(wèi)網絡層提供可(kě)靠的數(shù)據傳輸;

2> 基本數(shù)據單位為(wèi)幀;

3> 主要的協議:以太網協議;

4> 兩個(gè)重要設備名稱:網橋和(hé)交換機。

3)網絡層(Network Layer)

網絡層的目的是實現兩個(gè)端系統之間(jiān)的數(shù)據透明(míng)傳送,具體(tǐ)功能包括尋址和(hé)路由選擇、連接的建立、保持和(hé)終止等。它提供的服務使傳輸層不需要了解網絡中的數(shù)據傳輸和(hé)交換技(jì)術(shù)。如果您想用盡量少(shǎo)的詞來(lái)記住網絡層,那(nà)就是“路徑選擇、路由及邏輯尋址”。

網絡層中涉及衆多(duō)的協議,其中包括最重要的協議,也是TCP/IP的核心協議——IP協議。IP協議非常簡單,僅僅提供不可(kě)靠、無連接的傳送服務。IP協議的主要功能有(yǒu):無連接數(shù)據報傳輸、數(shù)據報路由選擇和(hé)差錯控制(zhì)。與IP協議配套使用實現其功能的還(hái)有(yǒu)地址解析協議ARP、逆地址解析協議RARP、因特網報文協議ICMP、因特網組管理(lǐ)協議IGMP。具體(tǐ)的協議我們會(huì)在接下來(lái)的部分進行(xíng)總結,有(yǒu)關網絡層的重點為(wèi):

1> 網絡層負責對子網間(jiān)的數(shù)據包進行(xíng)路由選擇。此外,網絡層還(hái)可(kě)以實現擁塞控制(zhì)、網際互連等功能;

2> 基本數(shù)據單位為(wèi)IP數(shù)據報;

3> 包含的主要協議:

IP協議(Internet Protocol,因特網互聯協議);

ICMP協議(Internet Control Message Protocol,因特網控制(zhì)報文協議);

ARP協議(Address Resolution Protocol,地址解析協議);

RARP協議(Reverse Address Resolution Protocol,逆地址解析協議)。

4> 重要的設備:路由器(qì)。

4)傳輸層(Transport Layer)

第一個(gè)端到端,即主機到主機的層次。傳輸層負責将上(shàng)層數(shù)據分段并提供端到端的、可(kě)靠的或不可(kě)靠的傳輸。此外,傳輸層還(hái)要處理(lǐ)端到端的差錯控制(zhì)和(hé)流量控制(zhì)問題。

傳輸層的任務是根據通(tōng)信子網的特性,最佳的利用網絡資源,為(wèi)兩個(gè)端系統的會(huì)話(huà)層之間(jiān),提供建立、維護和(hé)取消傳輸連接的功能,負責端到端的可(kě)靠數(shù)據傳輸。在這一層,信息傳送的協議數(shù)據單元稱為(wèi)段或報文。

網絡層隻是根據網絡地址将源結點發出的數(shù)據包傳送到目的結點,而傳輸層則負責将數(shù)據可(kě)靠地傳送到相應的端口。

有(yǒu)關網絡層的重點:

1> 傳輸層負責将上(shàng)層數(shù)據分段并提供端到端的、可(kě)靠的或不可(kě)靠的傳輸以及端到端的差錯控制(zhì)和(hé)流量控制(zhì)問題;

2> 包含的主要協議:TCP協議(Transmission Control Protocol,傳輸控制(zhì)協議)、UDP協議(User Datagram Protocol,用戶數(shù)據報協議);

3> 重要設備:網關。

5)會(huì)話(huà)層

會(huì)話(huà)層管理(lǐ)主機之間(jiān)的會(huì)話(huà)進程,即負責建立、管理(lǐ)、終止進程之間(jiān)的會(huì)話(huà)。會(huì)話(huà)層還(hái)利用在數(shù)據中插入校(xiào)驗點來(lái)實現數(shù)據的同步。

6)表示層

表示層對上(shàng)層數(shù)據或信息進行(xíng)變換以保證一個(gè)主機應用層信息可(kě)以被另一個(gè)主機的應用程序理(lǐ)解。表示層的數(shù)據轉換包括數(shù)據的加密、壓縮、格式轉換等。

7)應用層

為(wèi)操作(zuò)系統或網絡應用程序提供訪問網絡服務的接口。

會(huì)話(huà)層、表示層和(hé)應用層重點:

1> 數(shù)據傳輸基本單位為(wèi)報文;

2> 包含的主要協議:FTP(文件傳送協議)默認21端口、Telnet(遠程登錄協議)默認23端口、DNS(域名解析協議)默認53端口、SMTP(郵件傳送協議)默認25端口,POP3協議(郵局協議)默認端口110,HTTP協議(Hyper Text Transfer Protocol)默認80,HTTPS協議(自己查)默認端口為(wèi)443。

2.3 IP地址

1)網絡地址

IP地址由網絡号(包括子網号)和(hé)主機号組成,網絡地址的主機号為(wèi)全0,網絡地址代表着整個(gè)網絡。

2)廣播地址

廣播地址通(tōng)常稱為(wèi)直接廣播地址,是為(wèi)了區(qū)分受限廣播地址。

廣播地址與網絡地址的主機号正好相反,廣播地址中,主機号為(wèi)全1。當向某個(gè)網絡的廣播地址發送消息時(shí),該網絡內(nèi)的所有(yǒu)主機都能收到該廣播消息。

3)組播地址

D類地址就是組播地址。

先回憶下A,B,C,D類地址吧(ba):

A類地址以0開(kāi)頭,第一個(gè)字節作(zuò)為(wèi)網絡号,地址範圍為(wèi):0.0.0.0~127.255.255.255;(modified @2016.05.31)

B類地址以10開(kāi)頭,前兩個(gè)字節作(zuò)為(wèi)網絡号,地址範圍是:128.0.0.0~191.255.255.255;

C類地址以110開(kāi)頭,前三個(gè)字節作(zuò)為(wèi)網絡号,地址範圍是:192.0.0.0~223.255.255.255。

D類地址以1110開(kāi)頭,地址範圍是224.0.0.0~239.255.255.255,D類地址作(zuò)為(wèi)組播地址(一對多(duō)的通(tōng)信);

E類地址以1111開(kāi)頭,地址範圍是240.0.0.0~255.255.255.255,E類地址為(wèi)保留地址,供以後使用。

注:隻有(yǒu)A,B,C有(yǒu)網絡号和(hé)主機号之分,D類地址和(hé)E類地址沒有(yǒu)劃分網絡号和(hé)主機号。

4)255.255.255.255

該IP地址指的是受限的廣播地址。受限廣播地址與一般廣播地址(直接廣播地址)的區(qū)别在于,受限廣播地址隻能用于本地網絡,路由器(qì)不會(huì)轉發以受限廣播地址為(wèi)目的地址的分組;一般廣播地址既可(kě)在本地廣播,也可(kě)跨網段廣播。例如:主機192.168.1.1/30上(shàng)的直接廣播數(shù)據包後,另外一個(gè)網段192.168.1.5/30也能收到該數(shù)據報;若發送受限廣播數(shù)據報,則不能收到。

注:一般的廣播地址(直接廣播地址)能夠通(tōng)過某些(xiē)路由器(qì)(當然不是所有(yǒu)的路由器(qì)),而受限的廣播地址不能通(tōng)過路由器(qì)。

5)0.0.0.0

常用于尋找自己的IP地址,例如在我們的RARP,BOOTP和(hé)DHCP協議中,若某個(gè)未知IP地址的無盤機想要知道(dào)自己的IP地址,它就以255.255.255.255為(wèi)目的地址,向本地範圍(具體(tǐ)而言是被各個(gè)路由器(qì)屏蔽的範圍內(nèi))的服務器(qì)發送IP請(qǐng)求分組。

6)回環地址

127.0.0.0/8被用作(zuò)回環地址,回環地址表示本機的地址,常用于對本機的測試,用的最多(duō)的是127.0.0.1。

7)A、B、C類私有(yǒu)地址

私有(yǒu)地址(private address)也叫專用地址,它們不會(huì)在全球使用,隻具有(yǒu)本地意義。

A類私有(yǒu)地址:10.0.0.0/8,範圍是:10.0.0.0~10.255.255.255

B類私有(yǒu)地址:172.16.0.0/12,範圍是:172.16.0.0~172.31.255.255

C類私有(yǒu)地址:192.168.0.0/16,範圍是:192.168.0.0~192.168.255.255

2.4 子網掩碼及網絡劃分

随着互連網應用的不斷擴大(dà),原先的IPv4的弊端也逐漸暴露出來(lái),即網絡号占位太多(duō),而主機号位太少(shǎo),所以其能提供的主機地址也越來(lái)越稀缺,目前除了使用NAT在企業內(nèi)部利用保留地址自行(xíng)分配以外,通(tōng)常都對一個(gè)高(gāo)類别的IP地址進行(xíng)再劃分,以形成多(duō)個(gè)子網,提供給不同規模的用戶群使用。

這裏主要是為(wèi)了在網絡分段情況下有(yǒu)效地利用IP地址,通(tōng)過對主機号的高(gāo)位部分取作(zuò)為(wèi)子網号,從通(tōng)常的網絡位界限中擴展或壓縮子網掩碼,用來(lái)創建某類地址的更多(duō)子網。但(dàn)創建更多(duō)的子網時(shí),在每個(gè)子網上(shàng)的可(kě)用主機地址數(shù)目會(huì)比原先減少(shǎo)。

什麽是子網掩碼?

子網掩碼是标志(zhì)兩個(gè)IP地址是否同屬于一個(gè)子網的,也是32位二進制(zhì)地址,其每一個(gè)為(wèi)1代表該位是網絡位,為(wèi)0代表主機位。它和(hé)IP地址一樣也是使用點式十進制(zhì)來(lái)表示的。如果兩個(gè)IP地址在子網掩碼的按位與的計(jì)算(suàn)下所得(de)結果相同,即表明(míng)它們共屬于同一子網中。

在計(jì)算(suàn)子網掩碼時(shí),我們要注意IP地址中的保留地址,即“ 0”地址和(hé)廣播地址,它們是指主機地址或網絡地址全為(wèi)“ 0”或“ 1”時(shí)的IP地址,它們代表着本網絡地址和(hé)廣播地址,一般是不能被計(jì)算(suàn)在內(nèi)的。

子網掩碼的計(jì)算(suàn):

對于無須再劃分成子網的IP地址來(lái)說,其子網掩碼非常簡單,即按照其定義即可(kě)寫出:如某B類IP地址為(wèi) 10.12.3.0,無須再分割子網,則該IP地址的子網掩碼255.255.0.0。如果它是一個(gè)C類地址,則其子網掩碼為(wèi) 255.255.255.0。其它類推,不再詳述。下面我們關鍵要介紹的是一個(gè)IP地址,還(hái)需要将其高(gāo)位主機位再作(zuò)為(wèi)劃分出的子網網絡号,剩下的是每個(gè)子網的主機号,這時(shí)該如何進行(xíng)每個(gè)子網的掩碼計(jì)算(suàn)。

下面總結一下有(yǒu)關子網掩碼和(hé)網絡劃分常見的面試考題:

1)利用子網數(shù)來(lái)計(jì)算(suàn)

在求子網掩碼之前必須先搞清楚要劃分的子網數(shù)目,以及每個(gè)子網內(nèi)的所需主機數(shù)目。

(1) 将子網數(shù)目轉化為(wèi)二進制(zhì)來(lái)表示;

如欲将B類IP地址168.195.0.0劃分成27個(gè)子網:27=11011;

(2) 取得(de)該二進制(zhì)的位數(shù),為(wèi)N;

該二進制(zhì)為(wèi)五位數(shù),N = 5

(3) 取得(de)該IP地址的類子網掩碼,将其主機地址部分的的前N位置1即得(de)出該IP地址劃分子網的子網掩碼。

将B類地址的子網掩碼255.255.0.0的主機地址前5位置 1,得(de)到 255.255.248.0

2)利用主機數(shù)來(lái)計(jì)算(suàn)

如欲将B類IP地址168.195.0.0劃分成若幹子網,每個(gè)子網內(nèi)有(yǒu)主機700台:

(1) 将主機數(shù)目轉化為(wèi)二進制(zhì)來(lái)表示;

700=1010111100;

(2) 如果主機數(shù)小(xiǎo)于或等于254(注意去掉保留的兩個(gè)IP地址),則取得(de)該主機的二進制(zhì)位數(shù),為(wèi)N,這裏肯定 N<8。如果大(dà)于254,則 N>8,這就是說主機地址将占據不止8位;

該二進制(zhì)為(wèi)十位數(shù),N=10;

(3) 使用255.255.255.255來(lái)将該類IP地址的主機地址位數(shù)全部置1,然後從後向前的将N位全部置為(wèi) 0,即為(wèi)子網掩碼值。

将該B類地址的子網掩碼255.255.0.0的主機地址全部置1,得(de)到255.255.255.255,然後再從後向前将後 10位置0,即為(wèi):11111111.11111111.11111100.00000000,即255.255.252.0。這就是該欲劃分成主機為(wèi)700台的B類IP地址 168.195.0.0的子網掩碼。

3)還(hái)有(yǒu)一種題型,要你(nǐ)根據每個(gè)網絡的主機數(shù)量進行(xíng)子網地址的規劃和(hé)計(jì)算(suàn)子網掩碼。這也可(kě)按上(shàng)述原則進行(xíng)計(jì)算(suàn)。

比如一個(gè)子網有(yǒu)10台主機,那(nà)麽對于這個(gè)子網需要的IP地址是:

10+1+1+1=13

注意:加的第一個(gè)1是指這個(gè)網絡連接時(shí)所需的網關地址,接着的兩個(gè)1分别是指網絡地址和(hé)廣播地址。

因為(wèi)13小(xiǎo)于16(16等于2的4次方),所以主機位為(wèi)4位。而256-16=240,所以該子網掩碼為(wèi)255.255.255.240。

如果一個(gè)子網有(yǒu)14台主機,不少(shǎo)人(rén)常犯的錯誤是:依然分配具有(yǒu)16個(gè)地址空(kōng)間(jiān)的子網,而忘記了給網關分配地址。這樣就錯誤了,因為(wèi)14+1+1+1=17,17大(dà)于16,所以我們隻能分配具有(yǒu)32個(gè)地址(32等于2的5次方)空(kōng)間(jiān)的子網。這時(shí)子網掩碼為(wèi):255.255.255.224。

2.5 ARP/RARP協議

 地址解析協議,即ARP(Address Resolution Protocol),是根據IP地址獲取物理(lǐ)地址的一個(gè)TCP/IP協議。主機發送信息時(shí)将包含目标IP地址的ARP請(qǐng)求廣播到網絡上(shàng)的所有(yǒu)主機,并接收返回消息,以此确定目标的物理(lǐ)地址;收到返回消息後将該IP地址和(hé)物理(lǐ)地址存入本機ARP緩存中并保留一定時(shí)間(jiān),下次請(qǐng)求時(shí)直接查詢ARP緩存以節約資源。地址解析協議是建立在網絡中各個(gè)主機互相信任的基礎上(shàng)的,網絡上(shàng)的主機可(kě)以自主發送ARP應答(dá)消息,其他主機收到應答(dá)報文時(shí)不會(huì)檢測該報文的真實性就會(huì)将其記入本機ARP緩存;由此攻擊者就可(kě)以向某一主機發送僞ARP應答(dá)報文,使其發送的信息無法到達預期的主機或到達錯誤的主機,這就構成了一個(gè)ARP欺騙。ARP命令可(kě)用于查詢本機ARP緩存中IP地址和(hé)MAC地址的對應關系、添加或删除靜态對應關系等。

ARP工作(zuò)流程舉例:

主機A的IP地址為(wèi)192.168.1.1,MAC地址為(wèi)0A-11-22-33-44-01;

主機B的IP地址為(wèi)192.168.1.2,MAC地址為(wèi)0A-11-22-33-44-02;

當主機A要與主機B通(tōng)信時(shí),地址解析協議可(kě)以将主機B的IP地址(192.168.1.2)解析成主機B的MAC地址,以下為(wèi)工作(zuò)流程:

(1)根據主機A上(shàng)的路由表內(nèi)容,IP确定用于訪問主機B的轉發IP地址是192.168.1.2。然後A主機在自己的本地ARP緩存中檢查主機B的匹配MAC地址。

(2)如果主機A在ARP緩存中沒有(yǒu)找到映射,它将詢問192.168.1.2的硬件地址,從而将ARP請(qǐng)求幀廣播到本地網絡上(shàng)的所有(yǒu)主機。源主機A的IP地址和(hé)MAC地址都包括在ARP請(qǐng)求中。本地網絡上(shàng)的每台主機都接收到ARP請(qǐng)求并且檢查是否與自己的IP地址匹配。如果主機發現請(qǐng)求的IP地址與自己的IP地址不匹配,它将丢棄ARP請(qǐng)求。

(3)主機B确定ARP請(qǐng)求中的IP地址與自己的IP地址匹配,則将主機A的IP地址和(hé)MAC地址映射添加到本地ARP緩存中。

(4)主機B将包含其MAC地址的ARP回複消息直接發送回主機A。

(5)當主機A收到從主機B發來(lái)的ARP回複消息時(shí),會(huì)用主機B的IP和(hé)MAC地址映射更新ARP緩存。本機緩存是有(yǒu)生(shēng)存期的,生(shēng)存期結束後,将再次重複上(shàng)面的過程。主機B的MAC地址一旦确定,主機A就能向主機B發送IP通(tōng)信了。

逆地址解析協議,即RARP,功能和(hé)ARP協議相對,其将局域網中某個(gè)主機的物理(lǐ)地址轉換為(wèi)IP地址,比如局域網中有(yǒu)一台主機隻知道(dào)物理(lǐ)地址而不知道(dào)IP地址,那(nà)麽可(kě)以通(tōng)過RARP協議發出征求自身IP地址的廣播請(qǐng)求,然後由RARP服務器(qì)負責回答(dá)。

RARP協議工作(zuò)流程:

(1)給主機發送一個(gè)本地的RARP廣播,在此廣播包中,聲明(míng)自己的MAC地址并且請(qǐng)求任何收到此請(qǐng)求的RARP服務器(qì)分配一個(gè)IP地址;

(2)本地網段上(shàng)的RARP服務器(qì)收到此請(qǐng)求後,檢查其RARP列表,查找該MAC地址對應的IP地址;

(3)如果存在,RARP服務器(qì)就給源主機發送一個(gè)響應數(shù)據包并将此IP地址提供給對方主機使用;

(4)如果不存在,RARP服務器(qì)對此不做(zuò)任何的響應;

(5)源主機收到從RARP服務器(qì)的響應信息,就利用得(de)到的IP地址進行(xíng)通(tōng)訊;如果一直沒有(yǒu)收到RARP服務器(qì)的響應信息,表示初始化失敗。

2.6. 路由選擇協議

常見的路由選擇協議有(yǒu):RIP協議、OSPF協議。

RIP協議 :底層是貝爾曼福特算(suàn)法,它選擇路由的度量标準(metric)是跳(tiào)數(shù),最大(dà)跳(tiào)數(shù)是15跳(tiào),如果大(dà)于15跳(tiào),它就會(huì)丢棄數(shù)據包。

OSPF協議 :Open Shortest Path First開(kāi)放式最短(duǎn)路徑優先,底層是迪傑斯特拉算(suàn)法,是鏈路狀态路由選擇協議,它選擇路由的度量标準是帶寬,延遲

2.7 TCP/IP協議

 TCP/IP協議是Internet最基本的協議、Internet國際互聯網絡的基礎,由網絡層的IP協議和(hé)傳輸層的TCP協議組成。通(tōng)俗而言:TCP負責發現傳輸的問題,一有(yǒu)問題就發出信号,要求重新傳輸,直到所有(yǒu)數(shù)據安全正确地傳輸到目的地。而IP是給因特網的每一台聯網設備規定一個(gè)地址。

IP層接收由更低(dī)層(網絡接口層例如以太網設備驅動程序)發來(lái)的數(shù)據包,并把該數(shù)據包發送到更高(gāo)層---TCP或UDP層;相反,IP層也把從TCP或UDP層接收來(lái)的數(shù)據包傳送到更低(dī)層。IP數(shù)據包是不可(kě)靠的,因為(wèi)IP并沒有(yǒu)做(zuò)任何事情來(lái)确認數(shù)據包是否按順序發送的或者有(yǒu)沒有(yǒu)被破壞,IP數(shù)據包中含有(yǒu)發送它的主機的地址(源地址)和(hé)接收它的主機的地址(目的地址)。

TCP是面向連接的通(tōng)信協議,通(tōng)過三次握手建立連接,通(tōng)訊完成時(shí)要拆除連接,由于TCP是面向連接的所以隻能用于端到端的通(tōng)訊。TCP提供的是一種可(kě)靠的數(shù)據流服務,采用“帶重傳的肯定确認”技(jì)術(shù)來(lái)實現傳輸的可(kě)靠性。TCP還(hái)采用一種稱為(wèi)“滑動窗口”的方式進行(xíng)流量控制(zhì),所謂窗口實際表示接收能力,用以限制(zhì)發送方的發送速度。

TCP報文首部格式:



TCP協議的三次握手和(hé)四次揮手:





注:seq:"sequance"序列号;ack:"acknowledge"确認号;SYN:"synchronize"請(qǐng)求同步标志(zhì);;ACK:"acknowledge"确認标志(zhì)";FIN:"Finally"結束标志(zhì)。

TCP連接建立過程:首先Client端發送連接請(qǐng)求報文,Server段接受連接後回複ACK報文,并為(wèi)這次連接分配資源。Client端接收到ACK報文後也向Server段發生(shēng)ACK報文,并分配資源,這樣TCP連接就建立了。

TCP連接斷開(kāi)過程:假設Client端發起中斷連接請(qǐng)求,也就是發送FIN報文。Server端接到FIN報文後,意思是說"我Client端沒有(yǒu)數(shù)據要發給你(nǐ)了",但(dàn)是如果你(nǐ)還(hái)有(yǒu)數(shù)據沒有(yǒu)發送完成,則不必急着關閉Socket,可(kě)以繼續發送數(shù)據。所以你(nǐ)先發送ACK,"告訴Client端,你(nǐ)的請(qǐng)求我收到了,但(dàn)是我還(hái)沒準備好,請(qǐng)繼續你(nǐ)等我的消息"。這個(gè)時(shí)候Client端就進入FIN_WAIT狀态,繼續等待Server端的FIN報文。當Server端确定數(shù)據已發送完成,則向Client端發送FIN報文,"告訴Client端,好了,我這邊數(shù)據發完了,準備好關閉連接了"。Client端收到FIN報文後,"就知道(dào)可(kě)以關閉連接了,但(dàn)是他還(hái)是不相信網絡,怕Server端不知道(dào)要關閉,所以發送ACK後進入TIME_WAIT狀态,如果Server端沒有(yǒu)收到ACK則可(kě)以重傳。“,Server端收到ACK後,"就知道(dào)可(kě)以斷開(kāi)連接了"。Client端等待了2MSL後依然沒有(yǒu)收到回複,則證明(míng)Server端已正常關閉,那(nà)好,我Client端也可(kě)以關閉連接了。Ok,TCP連接就這樣關閉了!

為(wèi)什麽要三次揮手?

在隻有(yǒu)兩次“握手”的情形下,假設Client想跟Server建立連接,但(dàn)是卻因為(wèi)中途連接請(qǐng)求的數(shù)據報丢失了,故Client端不得(de)不重新發送一遍;這個(gè)時(shí)候Server端僅收到一個(gè)連接請(qǐng)求,因此可(kě)以正常的建立連接。但(dàn)是,有(yǒu)時(shí)候Client端重新發送請(qǐng)求不是因為(wèi)數(shù)據報丢失了,而是有(yǒu)可(kě)能數(shù)據傳輸過程因為(wèi)網絡并發量很(hěn)大(dà)在某結點被阻塞了,這種情形下Server端将先後收到2次請(qǐng)求,并持續等待兩個(gè)Client請(qǐng)求向他發送數(shù)據...問題就在這裏,Cient端實際上(shàng)隻有(yǒu)一次請(qǐng)求,而Server端卻有(yǒu)2個(gè)響應,極端的情況可(kě)能由于Client端多(duō)次重新發送請(qǐng)求數(shù)據而導緻Server端最後建立了N多(duō)個(gè)響應在等待,因而造成極大(dà)的資源浪費!所以,“三次握手”很(hěn)有(yǒu)必要!

為(wèi)什麽要四次揮手?

試想一下,假如現在你(nǐ)是客戶端你(nǐ)想斷開(kāi)跟Server的所有(yǒu)連接該怎麽做(zuò)?第一步,你(nǐ)自己先停止向Server端發送數(shù)據,并等待Server的回複。但(dàn)事情還(hái)沒有(yǒu)完,雖然你(nǐ)自身不往Server發送數(shù)據了,但(dàn)是因為(wèi)你(nǐ)們之前已經建立好平等的連接了,所以此時(shí)他也有(yǒu)主動權向你(nǐ)發送數(shù)據;故Server端還(hái)得(de)終止主動向你(nǐ)發送數(shù)據,并等待你(nǐ)的确認。其實,說白了就是保證雙方的一個(gè)合約的完整執行(xíng)!

使用TCP的協議:FTP(文件傳輸協議)、Telnet(遠程登錄協議)、SMTP(簡單郵件傳輸協議)、POP3(和(hé)SMTP相對,用于接收郵件)、HTTP協議等。

2.8 UDP協議 

UDP用戶數(shù)據報協議,是面向無連接的通(tōng)訊協議,UDP數(shù)據包括目的端口号和(hé)源端口号信息,由于通(tōng)訊不需要連接,所以可(kě)以實現廣播發送。UDP通(tōng)訊時(shí)不需要接收方确認,屬于不可(kě)靠的傳輸,可(kě)能會(huì)出現丢包現象,實際應用中要求程序員編程驗證。

UDP與TCP位于同一層,但(dàn)它不管數(shù)據包的順序、錯誤或重發。因此,UDP不被應用于那(nà)些(xiē)使用虛電(diàn)路的面向連接的服務,UDP主要用于那(nà)些(xiē)面向查詢---應答(dá)的服務,例如NFS。相對于FTP或Telnet,這些(xiē)服務需要交換的信息量較小(xiǎo)。

每個(gè)UDP報文分UDP報頭和(hé)UDP數(shù)據區(qū)兩部分。報頭由四個(gè)16位長(2字節)字段組成,分别說明(míng)該報文的源端口、目的端口、報文長度以及校(xiào)驗值。UDP報頭由4個(gè)域組成,其中每個(gè)域各占用2個(gè)字節,具體(tǐ)如下:

(1)源端口号;

(2)目标端口号;

(3)數(shù)據報長度;

(4)校(xiào)驗值。

使用UDP協議包括:TFTP(簡單文件傳輸協議)、SNMP(簡單網絡管理(lǐ)協議)、DNS(域名解析協議)、NFS、BOOTP。

TCP 與 UDP 的區(qū)别:TCP是面向連接的,可(kě)靠的字節流服務;UDP是面向無連接的,不可(kě)靠的數(shù)據報服務。

2.9. DNS協議

DNS是域名系統(DomainNameSystem)的縮寫,該系統用于命名組織到域層次結構中的計(jì)算(suàn)機和(hé)網絡服務,可(kě)以簡單地理(lǐ)解為(wèi)将URL轉換為(wèi)IP地址。域名是由圓點分開(kāi)一串單詞或縮寫組成的,每一個(gè)域名都對應一個(gè)惟一的IP地址,在Internet上(shàng)域名與IP地址之間(jiān)是一一對應的,DNS就是進行(xíng)域名解析的服務器(qì)。DNS命名用于Internet等TCP/IP網絡中,通(tōng)過用戶友(yǒu)好的名稱查找計(jì)算(suàn)機和(hé)服務。

3.0 NAT協議

NAT網絡地址轉換(Network Address Translation)屬接入廣域網(WAN)技(jì)術(shù),是一種将私有(yǒu)(保留)地址轉化為(wèi)合法IP地址的轉換技(jì)術(shù),它被廣泛應用于各種類型Internet接入方式和(hé)各種類型的網絡中。原因很(hěn)簡單,NAT不僅完美地解決了lP地址不足的問題,而且還(hái)能夠有(yǒu)效地避免來(lái)自網絡外部的攻擊,隐藏并保護網絡內(nèi)部的計(jì)算(suàn)機。

3.1 DHCP協議

DHCP動态主機設置協議(Dynamic Host Configuration Protocol)是一個(gè)局域網的網絡協議,使用UDP協議工作(zuò),主要有(yǒu)兩個(gè)用途:給內(nèi)部網絡或網絡服務供應商自動分配IP地址,給用戶或者內(nèi)部網絡管理(lǐ)員作(zuò)為(wèi)對所有(yǒu)計(jì)算(suàn)機作(zuò)中央管理(lǐ)的手段。

3.2 HTTP協議

超文本傳輸協議(HTTP,HyperText Transfer Protocol)是互聯網上(shàng)應用最為(wèi)廣泛的一種網絡協議。所有(yǒu)的WWW文件都必須遵守這個(gè)标準。 HTTP 協議包括哪些(xiē)請(qǐng)求?

GET:請(qǐng)求讀取由URL所标志(zhì)的信息。

POST:給服務器(qì)添加信息(如注釋)。

PUT:在給定的URL下存儲一個(gè)文檔。

DELETE:删除給定的URL所标志(zhì)的資源。

HTTP 中, POST 與 GET 的區(qū)别

1)Get是從服務器(qì)上(shàng)獲取數(shù)據,Post是向服務器(qì)傳送數(shù)據。

2)Get是把參數(shù)數(shù)據隊列加到提交表單的Action屬性所指向的URL中,值和(hé)表單內(nèi)各個(gè)字段一一對應,在URL中可(kě)以看到。

3)Get傳送的數(shù)據量小(xiǎo),不能大(dà)于2KB;Post傳送的數(shù)據量較大(dà),一般被默認為(wèi)不受限制(zhì)。

4)根據HTTP規範,GET用于信息獲取,而且應該是安全的和(hé)幂等的。

I. 所謂 安全的 意味着該操作(zuò)用于獲取信息而非修改信息。換句話(huà)說,GET請(qǐng)求一般不應産生(shēng)副作(zuò)用。就是說,它僅僅是獲取資源信息,就像數(shù)據庫查詢一樣,不會(huì)修改,增加數(shù)據,不會(huì)影(yǐng)響資源的狀态。

II. 幂等 的意味着對同一URL的多(duō)個(gè)請(qǐng)求應該返回同樣的結果。

圖片


在浏覽器(qì)中輸入 www.baidu.com 後執行(xíng)的全部過程

現在假設如果我們在客戶端(客戶端)浏覽器(qì)中輸入http://www.baidu.com,而baidu.com為(wèi)要訪問的服務器(qì)(服務器(qì)),下面詳細分析客戶端為(wèi)了訪問服務器(qì)而執行(xíng)的一系列關于協議的操作(zuò):

1)客戶端浏覽器(qì)通(tōng)過DNS解析到www.baidu.com的IP地址220.181.27.48,通(tōng)過這個(gè)IP地址找到客戶端到服務器(qì)的路徑。客戶端浏覽器(qì)發起一個(gè)HTTP會(huì)話(huà)到220.161.27.48,然後通(tōng)過TCP進行(xíng)封裝數(shù)據包,輸入到網絡層。

2)在客戶端的傳輸層,把HTTP會(huì)話(huà)請(qǐng)求分成報文段,添加源和(hé)目的端口,如服務器(qì)使用80端口監聽(tīng)客戶端的請(qǐng)求,客戶端由系統随機選擇一個(gè)端口如5000,與服務器(qì)進行(xíng)交換,服務器(qì)把相應的請(qǐng)求返回給客戶端的5000端口。然後使用IP層的IP地址查找目的端。

3)客戶端的網絡層不用關系應用層或者傳輸層的東西,主要做(zuò)的是通(tōng)過查找路由表确定如何到達服務器(qì),期間(jiān)可(kě)能經過多(duō)個(gè)路由器(qì),這些(xiē)都是由路由器(qì)來(lái)完成的工作(zuò),不作(zuò)過多(duō)的描述,無非就是通(tōng)過查找路由表決定通(tōng)過那(nà)個(gè)路徑到達服務器(qì)。

4)客戶端的鏈路層,包通(tōng)過鏈路層發送到路由器(qì),通(tōng)過鄰居協議查找給定IP地址的MAC地址,然後發送ARP請(qǐng)求查找目的地址,如果得(de)到回應後就可(kě)以使用ARP的請(qǐng)求應答(dá)交換的IP數(shù)據包現在就可(kě)以傳輸了,然後發送IP數(shù)據包到達服務器(qì)的地址。


13905190502 南京市玄武區(qū)洪武北路188号長發數(shù)碼大(dà)廈11樓E座
友(yǒu)情鏈接
百度 網絡安全和(hé)信息化委員會(huì) FreeBuf網絡安全行(xíng)業門(mén)戶

分享:
Copyright © 2020-2022 南京斯萊克斯網絡科技有限公司 版權所有(yǒu)  
技(jì)術(shù)支持:飛酷網絡