網(wǎng)絡(luò)基礎(chǔ)知識(shí)說明:
一燎含、網(wǎng)絡(luò)基礎(chǔ)
美國 貝爾實(shí)驗(yàn)室
linux系統(tǒng)
C語言
GNU 開源計(jì)劃GCC編譯器 gcc hello.c .cc 或.cpp等
面向?qū)ο蟮木幊陶Z言
面向過程的編程語言
匯編語言
機(jī)器語言
源代碼-->匯編-->編譯-->鏈接 機(jī)器語言 010101
1墨榄、什么是網(wǎng)絡(luò)?
- 計(jì)算機(jī)網(wǎng)絡(luò) 把分布在各個(gè)地點(diǎn)的不同計(jì)算機(jī)系統(tǒng)(PC 筆記本 服務(wù)器 ARM 樹莓派 開發(fā)板)啦粹,通過鏈接介質(zhì)(網(wǎng)線)
橙白 橙 綠白 藍(lán) 綠 藍(lán)白 棕白 棕 ,通過網(wǎng)絡(luò)協(xié)議姐扮,達(dá)到資源共享的目的组橄;
資源
|--->硬件資源(帶寬 硬盤 CPU等)
|--->軟件資源(網(wǎng)絡(luò)協(xié)議HTTP HTTPS POP POP3 STMP SSH FTP等 3389)
硬盤存儲(chǔ) 打印機(jī)等資源;實(shí)現(xiàn)主機(jī)之間通訊交流
2锰什、網(wǎng)絡(luò)干什么的下硕?
- 1)、覆蓋范圍
1歇由、局域網(wǎng)
2卵牍、城域網(wǎng)
3果港、廣域網(wǎng)- *2沦泌、 暗網(wǎng)
1、黑客 專業(yè)人士(MT)
2辛掠、人販子拐賣兒童
3谢谦、賣假藥
4释牺、毒品 軍火
3、怎么樣使用回挽?
3.1 最小的網(wǎng)絡(luò)構(gòu)成
兩臺(tái)主機(jī)之間的通信
1没咙、通過不同的傳輸介質(zhì)
1.1 導(dǎo)向式的
雙絞線(網(wǎng)線 光纖)正雙絞線 橙白 橙 綠白 藍(lán) 藍(lán)白 綠 棕白 棕 (路由器 交換機(jī))
反雙絞線 (雙機(jī)互聯(lián)線) 1 3 2 4 對調(diào)(代表上面的顏色對調(diào))
光纖
同軸電纜
1.2 非導(dǎo)向式
WIFI
藍(lán)牙
紅外(距離特別短)
微波
量子通信
2、網(wǎng)卡(硬件設(shè)備 正常工作)
2.1 28/56k 調(diào)制解
調(diào)制 應(yīng)用層(軟件 QQ 微信 ICO等)--->約嗎千劈?---->操作系統(tǒng)---->內(nèi)存中--->驅(qū)動(dòng)層
---->網(wǎng)卡驅(qū)動(dòng)---->01010101二進(jìn)制數(shù)字?jǐn)?shù)據(jù) ---->電信號(hào)
解調(diào) 用戶(約嗎) PC<--->qq ---->操作系統(tǒng)--->010101<---網(wǎng)卡<----電信號(hào)
2.2 網(wǎng)卡1祭刚、網(wǎng)絡(luò)通訊數(shù)據(jù)的的最小單位bit 內(nèi)存 字節(jié) 1bit/8 字節(jié) 網(wǎng)速Speed 100M 200M 500M 100M =100M/8 =12M =10M 20M
10M/100M 自適應(yīng)網(wǎng)卡 1000M網(wǎng)卡
2、兩個(gè)人進(jìn)行通訊數(shù)據(jù)是如何傳遞的墙牌?
協(xié)商機(jī)制
2.3.1 ISO國際標(biāo)準(zhǔn)認(rèn)證體系
水晶頭 網(wǎng)線
RJ45 水晶頭 8根線
RJ11 電話線 4根線 2根
各個(gè)國家 各個(gè)廠商 用料不同
鐵 鍍純銅 純銅 鍍金 塑料等
五類 超五類 六 超六類 七類 超七類 等 1000M
2.3.2 光纖
單模光纖 家里的光纖貓 黑皮光纖
多模光纖
###常見的網(wǎng)絡(luò)傳輸協(xié)議
4.1 ARP協(xié)議
4.2 DNS協(xié)議
4.3 DHCP協(xié)議
4.4 FTP協(xié)議
4.5 TCP/IP協(xié)議
4.6 UDP 協(xié)議
4.7 NTP協(xié)議 時(shí)間服務(wù)器
4.8 SMTP/POP/IMAP協(xié)議 郵件
- *4.9 Telnet 協(xié)議 端口號(hào) 23
DBA Unix 測某端口是否開發(fā)/遠(yuǎn)程登錄服務(wù)器
5涡驮、 交換網(wǎng)絡(luò)(多人)
5.1 小型網(wǎng)絡(luò)局域網(wǎng)
通過交換機(jī)進(jìn)行局域網(wǎng)之間PC與PC的通信。
MAC地址 每一塊網(wǎng)卡出場的時(shí)候就已經(jīng)存在了喜滨,且全球唯一
物理地址: 由16進(jìn)制組成
(不同品牌的路由 FC-AA FC:AA)
邏輯地址:IP地址 可以被改變
5.2 交換網(wǎng)絡(luò)中報(bào)文數(shù)據(jù)格式
目標(biāo)信息+原信息(MAC)+數(shù)據(jù)信息<==>基本的數(shù)據(jù)包結(jié)構(gòu)
5.3 交換機(jī)的工作原理
MAC地址列表
在交換網(wǎng)絡(luò)中通過MAC地址進(jìn)行主機(jī)的標(biāo)識(shí)
1捉捅、如果 目標(biāo)信息的MAC地址是在交換機(jī)的MAC列表中存在的,那么就直接轉(zhuǎn)發(fā)給目標(biāo)機(jī)信息
2虽风、 目標(biāo)信息的MAC地址不是在交換機(jī)的MAC列表中存在的棒口,那么就通過廣播的形式,發(fā)送消息
5.4 存在一些的缺點(diǎn)
廣播風(fēng)暴的問題
1辜膝、多人同時(shí)發(fā)送信息
2无牵、小型局域網(wǎng)A 跟小型局域網(wǎng)B L59 金領(lǐng)
3、 帶來的影響
消耗了我大量的系統(tǒng)資源
3厂抖、1 網(wǎng)卡 bit ---->電==> 01010101 內(nèi)存 CPU
3.2 電腦 卡
6合敦、路由器(多個(gè)局域網(wǎng)之間的通信問題 屏蔽廣播風(fēng)暴的問題)
6.1 路由器
是實(shí)現(xiàn)多個(gè)局域網(wǎng)之間的通信,有個(gè)好處 屏蔽了交換網(wǎng)絡(luò)的廣播風(fēng)暴验游。
6.2 路由器工作原理
通過IP地址的劃分充岛,來區(qū)分目標(biāo)地址。 IP地址的列表
數(shù)據(jù)結(jié)構(gòu)
發(fā)送的數(shù)據(jù)結(jié)構(gòu)<===>目標(biāo)信息+源信息(IP地址) +數(shù)據(jù)信息
IP地址的列表 也就是說通過邏輯地址耕蝉,實(shí)現(xiàn)網(wǎng)絡(luò)主機(jī)的標(biāo)識(shí)
1崔梗、如果IP地址存在 IP地址的列表中 直接轉(zhuǎn)發(fā)收到信息
2、 如果IP地址不存在 IP地址中 消息就被丟棄
IP地址 邏輯地址垒在,不要跟邏輯地址混淆
6.3 路由協(xié)議(智能上網(wǎng)設(shè)備)
1)靜態(tài)路由協(xié)議(手動(dòng)配置0
優(yōu)點(diǎn): 速度快蒜魄,執(zhí)行率高。通訊比哦啊率高哦
缺點(diǎn) :需要專業(yè)點(diǎn)人场躯,操作復(fù)雜率高
適用于:比較大的網(wǎng)絡(luò)環(huán)境
2)動(dòng)態(tài)路由協(xié)議(自動(dòng)配置)
優(yōu)點(diǎn): 自動(dòng)記錄學(xué)習(xí)路由表谈为,方便 執(zhí)行效率低,不需要專業(yè)人士
缺點(diǎn) :路由學(xué)習(xí)過程比較耗時(shí)踢关,造成通訊效率比較低
3.2 IDC機(jī)房
3.2 IDC機(jī)房
用戶層面來分析
從系統(tǒng)層面的
2.1 OSI 7層網(wǎng)絡(luò)模型(理想型) ISO
架構(gòu)C/S架構(gòu)
客戶端
服務(wù)器(1)
*補(bǔ)充
1對1的服務(wù)器模型
1對多的并發(fā)的模型
PC PC
應(yīng)用層 <=應(yīng)用層的協(xié)議=> 應(yīng)用層
表示層 <=表示層的協(xié)議=> 表示層
會(huì)話層 <=會(huì)話層的協(xié)議=> 會(huì)話層
傳輸層 <=傳輸層的協(xié)議=> 傳輸層
網(wǎng)絡(luò)層 <=網(wǎng)絡(luò)層得協(xié)議=> 網(wǎng)絡(luò)層
數(shù)據(jù)鏈路層<=數(shù)據(jù)鏈路層的協(xié)議=> 數(shù)據(jù)鏈路層
物理層 <=物理層的協(xié)議=> 物理層
2.2 物理層
協(xié)議 指定一些規(guī)則 規(guī)范 全球通用的
ISO RJ45 RJ11等
物理層它規(guī)定了物理設(shè)備伞鲫,物理線路和設(shè)備的觸發(fā)、維護(hù)签舞、關(guān)閉物理設(shè)備的機(jī)械特性
數(shù)據(jù)鏈路層 交換機(jī)工作在這一層
MAC PPP STP等
在物理介質(zhì)的基礎(chǔ)上提供可靠的數(shù)據(jù)傳輸秕脓,在這一層利用通信信道實(shí)現(xiàn)了無差錯(cuò)傳輸柒瓣,提供了
物理尋址(MAC)、數(shù)據(jù)成幀吠架、數(shù)據(jù)的檢測和重發(fā)芙贫、流量控制和鏈路控制等功能
網(wǎng)絡(luò)層 Network Layer
網(wǎng)絡(luò)層負(fù)責(zé)將各個(gè)子網(wǎng)之間的數(shù)據(jù)進(jìn)行路由選擇。3層 路由器傍药,將數(shù)據(jù)從一個(gè)主機(jī)傳送到另一個(gè)主機(jī)
功能 網(wǎng)際互聯(lián) 流量控制 行為管理
這一層數(shù)據(jù)傳輸 單位為 【數(shù)據(jù)包】
本層的協(xié)議 IP IPX等
傳輸層 Transport Layer
傳輸層把上層的數(shù)據(jù)進(jìn)行分段處理磺平。可以提供可靠地傳輸TCP或不可靠地傳輸U(kuò)DP .起到了上層掩蓋下層的細(xì)節(jié)拐辽。保證會(huì)話層的數(shù)據(jù)信息能夠傳送到另一方的會(huì)話層褪秀。
本層的協(xié)議 Tcp UDP SPX等。
會(huì)話層 Session Layer
會(huì)話層 管理了主機(jī)之間的會(huì)話過程薛训,包括會(huì)話的建立媒吗,終止和會(huì)話過程中的管理。
協(xié)議 TCP UDP SPX等
表示層 對數(shù)據(jù)的格式進(jìn)行轉(zhuǎn)換乙埃,使得多個(gè)主機(jī)之間傳送的信息能夠互相的理解闸英,包括數(shù)據(jù)的壓縮、加密介袜、格式的轉(zhuǎn)換等甫何。
協(xié)議 ASCII JPEG PNG MPEG 等標(biāo)準(zhǔn)
應(yīng)用層 APPlication Layer
APP 應(yīng)用程序(軟件) 為應(yīng)用程序 提供了訪問網(wǎng)絡(luò)服務(wù)的接口,直接和用戶進(jìn)行了交互遇伞,提供了常見的應(yīng)用辙喂。
系統(tǒng)工具 壓縮 解壓縮
看圖
社交
工具
等
在本層協(xié)議 :Telnet 、FTP 鸠珠、HTTP 巍耗、POP等
2.3 OSI 參考模型中的數(shù)據(jù)傳輸
2.4 TCP/IP 5(4)層模型
3、掌握TCP/IP協(xié)議建立連接3次握手的過程
3.1 IP協(xié)議是TCP/IP協(xié)議中最重要的協(xié)議渐排,它為TCPUDP ICMP等協(xié)議提供傳輸?shù)耐肪嫣P層主要目的是提供子網(wǎng)互聯(lián),形成較大的網(wǎng)絡(luò)驯耻,使不同的子網(wǎng)之間能傳輸數(shù)據(jù)亲族。
ICMP ping 命令的 實(shí)現(xiàn)
2、TCP 傳輸控制協(xié)議 Transmission Control Protocol
簡稱TCP協(xié)議可缚,它在原有IP協(xié)議的基礎(chǔ)上霎迫,增加了確認(rèn)重發(fā)、滑動(dòng)窗口和復(fù)用帘靡,
提供一種可靠地面向連接的字節(jié)流的服務(wù)知给。最大的特點(diǎn)就是可靠性。1)源端口號(hào)和目的端口號(hào)這個(gè)字段均為16位的長度测柠,表示發(fā)送端和接收端的端口炼鞠,
用于確認(rèn)發(fā)送端和接收端的應(yīng)用程序缘滥。發(fā)送端的IP地址和端口好及接收端的IP地址
和端口號(hào)可以確認(rèn)一個(gè)在Internet上的TCP連接轰胁。
2)序列號(hào) 序列號(hào)是一個(gè)32位字節(jié)長度的字段谒主,表示分配給TCP包的編號(hào)。序列號(hào)
用來表示應(yīng)用程序從TCP的發(fā)送端到接收端的字節(jié)流赃阀。當(dāng)TCP開始連接的時(shí)候發(fā)給少
年宮一個(gè)序列號(hào)給接收端霎肯,連接成功后,這個(gè)序列號(hào)作為初始的序列號(hào)ISN(Initial Sequence Number)榛斯。
建立連接成功后發(fā)送的第一個(gè)字節(jié)的序列號(hào)為ISN+1观游,之后發(fā)送數(shù)據(jù)ISN 將按照字節(jié)的大小進(jìn)行遞增。
序列號(hào)是一個(gè)32位的無符號(hào)數(shù)驮俗,到達(dá)2的32此懂缕。減1之后從0開始
3)確認(rèn)號(hào)發(fā)送方對發(fā)送的首字節(jié)進(jìn)行了編號(hào),當(dāng)接收方成功接收后王凑,發(fā)送回接收成功的序列號(hào)+1表示確認(rèn)搪柑,
發(fā)送發(fā)再次發(fā)送的時(shí)候從確認(rèn)號(hào)開始。
*5索烹、思想
1工碾、 凡是理解的東西都不需要記憶,理解不了才記憶百姓。
2渊额、對比記憶法 交換機(jī) 路由器
3、聯(lián)想記憶
4垒拢、如何快速的轉(zhuǎn)正 升值 加薪 抱得白富美旬迹。
1、來的最早走的最晚求类。
2舱权、會(huì)表現(xiàn)自己。
3仑嗅、傳播正能量宴倍。
4、夾著尾巴做人仓技。
5鸵贬、體現(xiàn)你的價(jià)值。
6脖捻、執(zhí)行力到位阔逼。
TCP/IP模型
TCP 協(xié)議 抓一個(gè)包 用實(shí)例演示一下TCP協(xié)議 傳輸控制協(xié)議
C客戶端 S服務(wù)器
男 女
喂!你聽得到嗎地沮?
聽得到嗜浮,你聽得到我說話嗎羡亩?
聽到了,我們可以去看電影了危融。
2畏铆、TCP/IP協(xié)議3次握手的狀態(tài)轉(zhuǎn)換
2.1 端口 ssh 22
第一次 客戶端 發(fā)送SYN字段 seq = x 然后客戶端進(jìn)入 SYN_SENT狀態(tài),
服務(wù)端 接收到了SYN字段 seq 然后進(jìn)入了 SYN_RCVD 接收狀態(tài)
第二次 服務(wù)端給客戶端SYN ACK字段 seq Ack
客戶端收到SYN ACK 字段以后 客戶端先進(jìn)入ESTABLISHED狀態(tài);
第三次 客戶端收到服務(wù)器的SYN+ACK包吉殃,向服務(wù)器發(fā)送確認(rèn)包ACK(ack=k+1)辞居,此包發(fā)送完畢,
客戶端和服務(wù)器進(jìn)入ESTABLISHED(TCP連接成功)狀態(tài)蛋勺,完成三次握手瓦灶。
3、 TCP/IP協(xié)議 客戶端斷開連接4次揮手
第一次揮手(發(fā)包) 客戶端想要斷開連接 客戶端要發(fā)送FIN字段(標(biāo)志位)
FIN seq = x
第二次揮手 ACK字段 Ack值
服務(wù)器端確認(rèn)1客戶端的FIN包抱完,發(fā)送了一個(gè)ACK的確認(rèn)包贼陶。表示服務(wù)端收到
了客戶端想要斷開連接的請求。沒有斷 還沒有準(zhǔn)備好斷開巧娱。
第三次揮手 FIN字段 seq
服務(wù)器端準(zhǔn)備好了關(guān)閉連接時(shí)碉怔,向客戶端發(fā)送結(jié)束連接(斷開)的請求 FIN值
第四次揮手 客戶端收到了來自服務(wù)器端的關(guān)閉請求,發(fā)送了一個(gè)確認(rèn)包ACK家卖,客戶端進(jìn)入
TIME_WAIT的狀態(tài)眨层,等待可能出現(xiàn)重新傳遞的ACK包
服務(wù)端收到了這個(gè)確認(rèn)包之后,就關(guān)閉了連接上荡,進(jìn)入了CLOSED狀態(tài)
客戶端等待了某一個(gè)時(shí)間(固定的時(shí)間之后)沒有收到來自服務(wù)端ACK趴樱,認(rèn)為
服務(wù)端已經(jīng)關(guān)閉了連接,于是客戶端自己也關(guān)閉了連接進(jìn)入CLOSED狀態(tài)酪捡。
4叁征、IP地址
IP地址在國際互聯(lián)網(wǎng)上也是全球唯一的。邏輯地址逛薇,在網(wǎng)絡(luò)上表示(標(biāo)識(shí))
IPV4
IPV6
IPV4 的長度是32位捺疼,由4組10進(jìn)制數(shù)組成并且用“.” 運(yùn)算符隔開 192.168.0.XXX
也叫做“點(diǎn)分二進(jìn)制”
MAC "-" 00-43-79-1D-等
2^8 (0~255)
4.1 IP地址的組成
一個(gè)IP地址有IP地址的類型、網(wǎng)絡(luò)ID和主機(jī)ID組成
4.2 IP地址分類
公網(wǎng)IP地址
私有IP地址
對一臺(tái)網(wǎng)絡(luò)上的主機(jī)來說永罚,他可以正常接收的合法目的網(wǎng)絡(luò)地址有三種
2.5 TCP控制位的字段
掌握 ACK 確認(rèn)號(hào)有效
SYN 發(fā)起一個(gè)TCP的連接
FIN 斷開TCP的連接
UGR 緊急指針字段
PSH 表示接受方需要盡快將此數(shù)據(jù)交給應(yīng)用層
PST 重新連接
說明:控制字段數(shù)值置為1表示控制功能開啟 默認(rèn)為0
課程回顧說明
1) 網(wǎng)絡(luò)路由配置的方法
靜態(tài)路由配置方法 思科 ip route 目標(biāo)網(wǎng)段地址 子網(wǎng)掩碼 下一跳地址
動(dòng)態(tài)路由配置方法 思科 router 所使用動(dòng)態(tài)路由協(xié)議(RIP OSPF EIGRP IS-IS--內(nèi)部網(wǎng)絡(luò)路由協(xié)議)
(BGP --外部網(wǎng)絡(luò)路由協(xié)議)
靜態(tài)默認(rèn)路由配置方法 思科 ip route 0.0.0.0.0.0 和路由器對接的下一跳地址
學(xué)習(xí)網(wǎng)絡(luò) : 路由交換 -- 安全 (硬件防火墻) -- 運(yùn)營商ISP(IS-IS) -- 無線網(wǎng)絡(luò)(國企 外企) --語音網(wǎng)絡(luò)
網(wǎng)絡(luò)存儲(chǔ) -- 數(shù)據(jù)中心網(wǎng)絡(luò)
2)網(wǎng)路的體系結(jié)構(gòu)
物理結(jié)構(gòu) : 核心層 匯聚層 接入層
邏輯結(jié)構(gòu): OSI7層模型 低--高 物理層 數(shù)據(jù)鏈路層 網(wǎng)絡(luò)層 傳輸層 會(huì)話層 表示層 應(yīng)用層
TCP/IP模型 低--高 數(shù)據(jù)接入層 互聯(lián)網(wǎng)層 主機(jī)到主機(jī)層(TCP UDP) 應(yīng)用層
TCP/UDP協(xié)議說明:
TCP(Transmission Crontrol Protocol 傳輸控制協(xié)議) 是一種面向連接 可靠的啤呼、基于字節(jié)流的傳輸層通信協(xié)議
UDP 是User Datgram Protocol 的簡稱,中文名是用戶數(shù)據(jù)報(bào)協(xié)議呢袱,是一種無連接的傳輸層協(xié)議
TCP 傳輸控制協(xié)議 面向連接的協(xié)議(同步傳輸) 可靠傳輸協(xié)議 傳輸效率低 mail
UDP 用戶報(bào)文協(xié)議 無連接協(xié)議 (異步傳輸) 不可靠傳輸協(xié)議 傳輸效率高 視頻(幀) 優(yōu)酷 愛奇藝
系統(tǒng)中:
異步傳輸數(shù)據(jù): 類似離線傳輸 不需要進(jìn)行確認(rèn)
優(yōu)點(diǎn): 傳輸效率較高
缺點(diǎn): 安全性不高
QQ在線傳輸: TCP A 主機(jī) --- B主機(jī) 首先局域網(wǎng)之間是否能通訊 其次走互聯(lián)網(wǎng)傳輸數(shù)據(jù)
QQ離線傳輸: TCP A 主機(jī) --- B主機(jī) 首先將數(shù)據(jù)上傳到騰訊存儲(chǔ)服務(wù)器中 騰訊管理服務(wù)器判斷B主機(jī) 是否上線
判斷上線成功看疗,將存儲(chǔ)服務(wù)器數(shù)據(jù)進(jìn)行發(fā)送 存儲(chǔ)服務(wù)器保存數(shù)據(jù)( 7天)1
02澡屡、 TCP 協(xié)議中重要原理
1) TCP三次握手過程 -- 完成網(wǎng)絡(luò)連接建立
TCP報(bào)文結(jié)構(gòu):
a 源端口地址 返回?cái)?shù)據(jù)包目標(biāo)端口地址
b 目標(biāo)端口地址 要和服務(wù)端哪個(gè)網(wǎng)絡(luò)服務(wù)建立連接
端口的數(shù)據(jù)范圍: 1~65535 是通過報(bào)文結(jié)構(gòu)獲知的
根據(jù)報(bào)文結(jié)構(gòu) 源端口和目標(biāo)端口各占用16個(gè)bit
公式:2的n次方 n占用了多少比特
占用了1bit
端口范圍:0 1 2種 2的1次方=2 0-1
占用了2bit
端口范圍 :00(0) 01(1) 10(2) 11(3) 4種 2的2次方=4 0-3
占用了3bit
端口范圍: 000(0) 001(1) 010(2) 011(3) 100 (4) 101(5) 110(6) 111(7) 8種 2的3次方=8 0-7
占用了16bit
端口范圍 :2的16次方=65536 0-65535 --- 1-65535
PS: 一般0號(hào)端口不被使用
2)兩臺(tái)主機(jī)之間如何進(jìn)行通訊交流
- 實(shí)現(xiàn)主機(jī)之間通訊需要的傳輸介質(zhì)
- 實(shí)現(xiàn)主機(jī)之間通訊需要的網(wǎng)卡設(shè)備
網(wǎng)卡設(shè)備作用:
1、可以將二進(jìn)制信息轉(zhuǎn)換為高低電壓信息 調(diào)制過程
2措拇、可以將高低電壓信息轉(zhuǎn)換為二進(jìn)制信息 解調(diào)過程
3)多臺(tái)主機(jī)之間如何進(jìn)行通訊 - 需要利用交換機(jī):實(shí)現(xiàn)局域網(wǎng)內(nèi)多臺(tái)主機(jī)間的通訊
- 發(fā)數(shù)據(jù)信息需要的數(shù)據(jù)包結(jié)構(gòu)
目標(biāo)信息+原信息+ 數(shù)據(jù)信息=基本的數(shù)據(jù)包結(jié)構(gòu) - 在一個(gè)局域網(wǎng)環(huán)境中淑廊,利用mac(物理地址)地址標(biāo)識(shí)主機(jī)身份信息
物理地址是全球唯一的,不能出現(xiàn)重復(fù)情況
利用十六進(jìn)制信息進(jìn)行表示 0 1 2 - 9 10 11 12 13 14 15
應(yīng)用層:運(yùn)行各種軟件和程序,服務(wù);http協(xié)議遭顶,https協(xié)議
表示層:對數(shù)據(jù)的加密
會(huì)話層:終止會(huì)話有關(guān)
傳輸層:tcp / udp tcp :可靠地傳輸,一問一答泪蔫,還有確認(rèn)棒旗;需要大量地?cái)?shù)據(jù)
端口 udp :不可靠的傳輸; 數(shù)據(jù)量小鸥滨,速度快嗦哆;
網(wǎng)絡(luò)層:我要傳輸給誰谤祖;ip地址(公網(wǎng))
數(shù)據(jù)鏈路層:提供地址MAC局域網(wǎng)中地址
物理層:上面的信息轉(zhuǎn)化為010100101001010代碼 通過網(wǎng)線傳輸
發(fā)送請求syn -->接受請求syn -->確認(rèn)ack
osi7層模型都有什么內(nèi)容
tcp /ip 三次握手 四次揮手 過程
抓包
wireshark
windows /linux
tcpdump 使用
linux
子網(wǎng)劃分
綜合架構(gòu) :
rsync
nfs
三次握手詳細(xì)過程:
第一次握手:發(fā)送TCP數(shù)據(jù)報(bào)文 客戶端 -- 服務(wù)端
a TCP數(shù)據(jù)報(bào)文中婿滓,需要將syn控制字段改為1
b TCP數(shù)據(jù)報(bào)文中,需要將seq序列號(hào)信息發(fā)出 seq=x---
第二次握手:發(fā)送TCP報(bào)文 服務(wù)端 -- 客戶端
a TCP數(shù)據(jù)報(bào)文中粥喜,需要將ack控制字段改為1
b TCP數(shù)據(jù)報(bào)文中凸主,同時(shí)將syn控制字段改為1
c TCP數(shù)據(jù)報(bào)文中,同時(shí)將ack確認(rèn)號(hào)信息發(fā)出 ack=x+1
d TCP數(shù)據(jù)報(bào)文中额湘,同時(shí)將seq確認(rèn)號(hào)信息發(fā)出 seq=y
第三次握手: 發(fā)送TCP數(shù)據(jù)報(bào)文 客戶端 -- 服務(wù)端
a TCP 數(shù)據(jù)報(bào)文中卿吐,需要將ack控制字段改為1
b TCP數(shù)據(jù)報(bào)文中,同時(shí)將ack確認(rèn)號(hào)信息發(fā)出 ack=y+1
c TCP數(shù)據(jù)報(bào)文中,同時(shí)將seq確認(rèn)號(hào)信息發(fā)出 seq=x+1
TCP四次揮手過程 -- 完成網(wǎng)絡(luò)連接斷開
第一次揮手 :發(fā)送TCP數(shù)據(jù)報(bào)文 客戶端 -- 服務(wù)端
a TCP數(shù)據(jù)報(bào)文中锋华,需要將fin控制字段改為1
b TCP數(shù)據(jù)報(bào)文中嗡官,需要將ack控制字段改為1
也包含seq和ack確認(rèn)號(hào)信息
第二次揮手 : 發(fā)送TCP數(shù)據(jù)報(bào)文 服務(wù)端 -- 客戶端
a TCP數(shù)據(jù)報(bào)文,需要將ack控制字段改為1
第三次揮手 : 發(fā)送TCP數(shù)據(jù)報(bào)文 服務(wù)端 -- 客戶端
a TCP 數(shù)據(jù)報(bào)文中毯焕,需要將ack控制字段改為1
b TCP數(shù)據(jù)報(bào)文中衍腥,需要將fin控制字段改為1
第四次揮手 : 發(fā)送TCP數(shù)據(jù)報(bào)文 客戶端 -- 服務(wù)端
a TCP數(shù)據(jù)報(bào)文中,需要將ack控制字段改為1
IP地址的含義:
IP地址是連接在因特網(wǎng)上的主機(jī)的標(biāo)識(shí)符
端口的含義:
設(shè)備與外界交流與通訊的出口纳猫;
協(xié)議的含義:
網(wǎng)絡(luò)協(xié)議是網(wǎng)絡(luò)上所有設(shè)備之間通訊規(guī)則的集合婆咸,它規(guī)定了通信時(shí)信息必須采用的格式和這些格式的意義。
如何抓取網(wǎng)絡(luò)數(shù)據(jù)包芜辕?
抓包軟件 :windows64位 wireshare
linux :tcpdump
-
TCP 11種狀態(tài)集轉(zhuǎn)換(了解--架構(gòu)層面)
1) 以后可以更好地排查系統(tǒng)的網(wǎng)絡(luò)問題
2) 以后學(xué)習(xí)網(wǎng)絡(luò)編程會(huì)有幫助TCP 三次握手過程:服務(wù)端和客戶端的狀態(tài)變化
第一歷程:初始狀態(tài)信息
客戶端狀態(tài)為:closed
服務(wù)端狀態(tài)為:closed第二歷程: 開啟相應(yīng)服務(wù)
服務(wù)端狀態(tài)為:closed -- LISTEN第三歷程:發(fā)送建立連接請求(客戶端) == 三次握手第一次
客戶端發(fā)送syn信息
客戶端狀態(tài)為: closed -- syn_sent第四歷程:接收建立連接請求(服務(wù)端) == 三次握手第一次
服務(wù)端接受syn信息尚骄,發(fā)送確認(rèn)以及請求建立連接信息(ack syn)
服務(wù)端狀態(tài)為 :LISTEN -- syn_rcvd第五歷程: 發(fā)送最后確認(rèn)信息(客戶端) == 三次握手第三次
客戶端發(fā)送ack信息
客戶端狀態(tài)為:syn_sent -- established第六歷程:接收最后確認(rèn)信息(服務(wù)端)
服務(wù)端接收ack信息
服務(wù)端狀態(tài)為: syn_rcvd -- established
結(jié)論: 只有服務(wù)端和客戶端都統(tǒng)一處于established 連接建立狀態(tài),才能正常傳輸數(shù)據(jù)信息
TCP 第四次揮手過程:服務(wù)端和客戶端的狀態(tài)變化
第一歷程:初始狀態(tài)信息
客戶端狀態(tài)為:established
服務(wù)端狀態(tài)為:established
第二歷程: 發(fā)送斷開連接請求(客戶端) == 四次揮手第一次
客戶端發(fā)送fin請求斷開連接字段
客戶端狀態(tài)為:established -- fin_wait1
第三歷程 : 接收斷開連接請求(服務(wù)端) == 四次揮手第二次
服務(wù)端接收fin請求斷開連接字段 發(fā)出確認(rèn)信息(ack=1)
服務(wù)端狀態(tài)為:established -- close_wait
第四歷程: 接收確認(rèn)斷開信息(客戶端)
客戶端接收服務(wù)端發(fā)出確認(rèn)信息(ack=1)
客戶端狀態(tài)為: fin_wait1 -- fin_wait2
第五歷程 :發(fā)送斷開連接請求(服務(wù)端) == 四次揮手的第三次
服務(wù)端發(fā)送fin請求斷開連接字段 同事還會(huì)再次發(fā)送確認(rèn)字段
服務(wù)端狀態(tài)為: close_wait -- last_ack
第六歷程: 接收斷開連接請求(客戶端) 發(fā)送最后確認(rèn)信息 == 四次揮手第四次
客戶端接收斷開連接請求 同時(shí)發(fā)送最后確認(rèn)信息ack=1
客戶端狀態(tài)為: fin_wait2 -- time_wait (等時(shí)間 60s 90s 120s侵续?倔丈??)
第七個(gè)歷程: 接收最后確認(rèn)信息(服務(wù)端)
服務(wù)端狀態(tài)為:last_ack -- closed
第八歷程: 等待時(shí)間結(jié)束
客戶端狀態(tài)為: time_wait -- closed
linux下有趣的一個(gè)命令 telnet towel.blinkenlights.nl
知識(shí)點(diǎn)回顧
1状蜗、補(bǔ)充
1.1 網(wǎng)絡(luò)模型
1.1 C/S 客戶端和服務(wù)器端
1.2 B/S 瀏覽器和服務(wù)器端
2需五、 TCP/IP 協(xié)議
1、 TCP協(xié)議的報(bào)文格式(掌握 能自己寫出來)
2诗舰、 TCP 協(xié)議 連接過程中3次發(fā)包的過程
3警儒、 TCP協(xié)議 連接過程中客戶端和服務(wù)端都是處于一種什么樣的狀態(tài)
SYN_SENT SYN_RCVD ESTABLISHED ESTABLISHED
4、TCP協(xié)議斷開連接的四次揮手過程以及狀態(tài)轉(zhuǎn)換
5、 為什么要四次揮手蜀铲?
因?yàn)門CP協(xié)議是雙工協(xié)議边琉!
3、IP地址
常見的IP地址分類
1记劝、公網(wǎng)IP 2变姨、私有IP
A B C(重點(diǎn)掌握) D E等
網(wǎng)絡(luò)位(標(biāo)識(shí))+ 主機(jī)位(標(biāo)識(shí))
掌握特殊的IP地址
1、本地厌丑、本機(jī)IP地址
2定欧、廣播地址
3、組播地址
等
二怒竿、新內(nèi)容
1砍鸠、子網(wǎng)掩碼
子網(wǎng)掩碼 又叫網(wǎng)絡(luò)掩碼、地址掩碼
主要作用:用來進(jìn)行網(wǎng)絡(luò)的劃分耕驰,通過IP地址的學(xué)習(xí)爷辱,
網(wǎng)絡(luò)標(biāo)識(shí)+主機(jī)標(biāo)識(shí) 當(dāng)路由器是如何區(qū)分 網(wǎng)絡(luò)標(biāo)識(shí)還是主機(jī)標(biāo)識(shí)呢?
就是通過子網(wǎng)掩碼來實(shí)現(xiàn)的朦肘。
子網(wǎng)掩碼不會(huì)獨(dú)立存在饭弓,它一定是配合IP地址存在的
2、 A媒抠、B弟断、 C、三種常見的IP的子網(wǎng)掩碼
A 10.0.0.1 子網(wǎng)掩碼 就是網(wǎng)絡(luò)位都為1趴生,主機(jī)位都為0. 255.0.0.0-1
B 172.16.8.1 255.255.0.0
C 192.168.0.1 255.255.255.0
3阀趴、 IPV4的32的長度
1111 1111 0000 0000 0000 0000 0000 0000 A類 前8位網(wǎng)絡(luò)位
2^8 =256-1=255
1111 1111 1111 1111 0000 0000 0000 0000 B類 前16位網(wǎng)絡(luò)位 255.255.0.0
1111 1111 1111 1111 1111 1111 0000 0000 C類 前24位網(wǎng)絡(luò)位 255.255.255.0
4、 子網(wǎng)掩碼的表示方式
第一種 255.255.255.0
第二種 192.168.0.1/24 《==》 255.255.255.0 不代表就是192.168.0.1 ~ 192.168.0.24 不對的3寤唷I峥А!
5锉桑、注意事項(xiàng)
1排霉、它也是32位的 由4組10進(jìn)制數(shù)組成,中間也點(diǎn)隔開民轴。也是“點(diǎn)分二進(jìn)制”
2攻柠、 利用這個(gè)子網(wǎng)掩碼或利用這個(gè)字段來屏蔽原來的網(wǎng)絡(luò)地址的劃分情況。
重新劃分子網(wǎng)后裸,從而獲得一個(gè)更小的網(wǎng)絡(luò)瑰钮,IP地址范圍更小∥⑹唬可是實(shí)際使用 的網(wǎng)絡(luò)浪谴。
3开睡、節(jié)約網(wǎng)絡(luò)IP地址資源的一個(gè)目的。
6苟耻、主要用途
1篇恒、子網(wǎng)劃分 進(jìn)一步縮小子網(wǎng)的地址空間。充分利用比較緊張的IP地址資源凶杖。
2胁艰、便于網(wǎng)絡(luò)設(shè)備(路由器)能夠更快的尋址,區(qū)分本網(wǎng)段地址和非本網(wǎng)段的IP地址智蝠。
可以是路由器
也可以是一臺(tái)具有轉(zhuǎn)發(fā)功能的服務(wù)器
*7腾么、利用子網(wǎng)確定網(wǎng)段
*了解10進(jìn)制數(shù)如何轉(zhuǎn)換成2進(jìn)制數(shù)
2 ^0*1 = 1*1=1
0000 0000 0000 0000 0000 0000 0000 0001
用這個(gè)對應(yīng)的2進(jìn)制位上的數(shù) * 權(quán)重 =1 對應(yīng)的10進(jìn)制的數(shù)
2進(jìn)制數(shù)也叫做機(jī)器語言只有0和1兩個(gè)數(shù)字構(gòu)成逢2進(jìn)1,最右側(cè)的2進(jìn)制位我們又稱為低位杈湾,從右到左解虱,
由低到高。
每一位的位權(quán) 2 ^n次方 0 ~2^n-1 32 (0~31) 64 (0~63)
2進(jìn)制位操作的按位與操作
*補(bǔ)充位操作知識(shí)
1毛秘、 按位與操作
2饭寺、 按位或操作
3阻课、 按位異或操作
4叫挟、 按位左移操作
5、 按位右移操作
第一步 計(jì)算兩個(gè)值的2進(jìn)制數(shù) IP 地址 192.168.1.151 子網(wǎng)掩碼 255.255.255.0
練習(xí) 計(jì)算以上兩個(gè)IP地址對應(yīng)的2進(jìn)制數(shù)
128+64 128+16+4+2+1
1100 0000 1010 1000 0000 0001 1001 0111
1111 1111 1111 1111 1111 1111 0000 0000
按位與操作 & 運(yùn)算符(相同二進(jìn)制位上的數(shù)都為1限煞,結(jié)果就為1)
1100 0000 1010 1000 0000 0001 0000 0000
C類前24位都是網(wǎng)絡(luò)位抹恳,IP地址和子網(wǎng)掩碼 按位操作以后,結(jié)果署驻,只要是和IP地址的網(wǎng)絡(luò)位相同奋献,就表示在該網(wǎng)段中。
利用子網(wǎng)掩碼實(shí)現(xiàn)網(wǎng)絡(luò)的劃分(掌握)
1旺上、C類地址(IP 掩碼)
例如:我這50臺(tái)PC瓶蚂,網(wǎng)絡(luò)IP地址段192.168.0.x,現(xiàn)在要求我們對該網(wǎng)絡(luò)進(jìn)行
子網(wǎng)劃分實(shí)現(xiàn)資源的最優(yōu)配置,問子網(wǎng)掩碼最后的主機(jī)位的數(shù)值是多少
達(dá)到最優(yōu)宣吱。 64
分析:x為主機(jī)位
50臺(tái)主機(jī) 50個(gè)IP錯(cuò)誤的 0 1 2 4 8 16 32 64 128 256
結(jié)論:
255.255.255.64 容納50臺(tái)主機(jī)
計(jì)算公式 2 ^n-2 > 主機(jī)數(shù) 求N是多少
2窃这、靜態(tài)路由項(xiàng)目 3:00
2.1 網(wǎng)絡(luò)中常見的命令
ping 命令 檢測網(wǎng)絡(luò)是否連通
企業(yè)級(jí)網(wǎng)絡(luò)錯(cuò)誤調(diào)試步驟
服務(wù)器 不能聯(lián)網(wǎng)
1、檢查網(wǎng)卡(交叉檢測)
2征候、ping 命令 網(wǎng)關(guān)/路由器地址
3杭攻、 ping 外網(wǎng)地址 www.baidu.com 記住自己云主機(jī) 47.75.80.161
2.2 iftop 命令
2.3 route 路由命令
route -n 查看詳細(xì)路由表
添加一個(gè)路有條目
route add -net 192.168.0.0/24 gw 192.168.1.1
刪除一個(gè)路有條目
route del -net 192.168.0.0/24 gw 192.168.1.1
添加一條默認(rèn)的路由(默認(rèn) 缺省值路由)
route add default gw 192.168.1.1
注意 :Centos 的版本 不默認(rèn)安裝了,但是有安裝包疤坝,可以直接yum
2.4 ip命令
ip route add 192.168.0.0/24 via 192.168.1.1
ip route add default via 192.168.1.1
ip route del 192.168.0.0/24 via 192.168.1.1
3兆解、環(huán)境的搭建
3.1 克隆3臺(tái)虛擬機(jī)
route_10.0.0.11
route_10.0.0.12 192.168.0.12
route_192.168.0.13
3.2 修改ip地址
sudo vim /etc/sysconfig/network-scripts/ifcfg-ens33
重啟網(wǎng)絡(luò)服務(wù)
systemctl restctl network
驗(yàn)證修改成功
ifconfig
eth0 10.0.0.11 修改正確
注意 :
第一步 虛擬機(jī)網(wǎng)絡(luò)適配器 NAT模式 ----->選LAN區(qū)段------>192.168.0.0/24 ----->下拉列表選擇LAN區(qū)段
第二步 登錄虛擬機(jī) 修改IP地址為 192.168.0.13
3.3 在第二臺(tái)主機(jī)
安裝iftop yum install -y iftop
現(xiàn)在PC2沒有開啟內(nèi)核轉(zhuǎn)發(fā)的設(shè)置 PC1 ---->PC2--->PC3
開啟Linux 內(nèi)核轉(zhuǎn)發(fā)的參數(shù)
4、 項(xiàng)目梳理
4.1 環(huán)境搭建
4.2 配置IP地址
route_10.0.0.11 直接 vim /etc/sysconfig/network-scripts/ifcfg-ens33 修改 10.0.0.11
route_192.168.0.13
注意;
1跑揉、 虛擬機(jī)配置界面 NAT LAN區(qū)段 勾選 192.168.0.0/24
2锅睛、 登錄虛擬機(jī)修改配置文件
vim /etc/sysconfig/network-scripts/ifcfg-ens33 修改 192.168.0.13
route_10.0.0.12和192.168.0.12
注意:
1、 虛擬機(jī)配置界面 NAT NAT LAN區(qū)段 勾選 192.168.0.0/24
2、登錄虛擬機(jī)修改配置文件
vim /etc/sysconfig/network-scripts/ifcfg-eth0 修改10.0.0.12
vim /etc/sysconfig/network-scripts/ifcfg-eth1 修改192.168.0.12
補(bǔ)充
iftop 可以看到數(shù)據(jù)雙向傳輸
4.3 配置靜態(tài)路由條目
iftop 可以看到數(shù)據(jù)雙向傳輸.
4.3配置靜態(tài)路由條目
1现拒、route_10.0.0.11 訪問10.0.0.12 通 Why? default默認(rèn)
訪問192.168.0.12 不通 Why? add -net 192.168.0.0/24 gw 10.0.0.12
2乖订、route_192.168.0.13 訪問 192.168.0.12 通 Why? default
訪問 10.0.0.12 不通 Why? add -net 10.0.0.0/24 gw 192.168.0.12
從route11 ping 通 route 12
從rotue13 ping 通 route 12
但是
route11 --->route13 不通 丟包狀態(tài)
route12 沒有開啟內(nèi)核轉(zhuǎn)發(fā)
echo "net.ipv4.ip_forward==1">>/etc/sysctl.conf
sysctl -p
net.ipv4.ip_forward==1
成功!>吡贰乍构!
再看 route11<--->route13