1、簡(jiǎn)述osi七層模型和TCP/IP五層模型
osi七層模型:
應(yīng)用層
OSI 參考模型中最靠近用戶的一層棘街,是為計(jì)算用戶提供應(yīng)用接口,也為用戶直接提供網(wǎng)絡(luò)服務(wù)。常見的應(yīng)用層網(wǎng)絡(luò)服務(wù)協(xié)議有:HTTP,HTTPS,FTP,POP3,SMTP等
表示層
表示提供各種用于應(yīng)用層數(shù)據(jù)編碼和轉(zhuǎn)換功能匈睁,確保一個(gè)系統(tǒng)的應(yīng)用層發(fā)送的數(shù)據(jù)能被另一個(gè)系統(tǒng)的應(yīng)用層識(shí)別。如果必要該層可提供一種標(biāo)準(zhǔn)表示形式桶错,用于將計(jì)算機(jī)內(nèi)部的多種數(shù)據(jù)格式轉(zhuǎn)換成通信中采用的標(biāo)準(zhǔn)表示形式航唆。數(shù)據(jù)壓縮和加密也是表示層可提供的轉(zhuǎn)換功能之一。
會(huì)話層
會(huì)話層負(fù)載建立院刁、管理和終止表示層實(shí)體之間的通信會(huì)話糯钙。該層的通信由不同設(shè)備中的應(yīng)用程序之間的服務(wù)請(qǐng)求和響應(yīng)組成。
傳輸層
傳輸層建立了主機(jī)端到端的鏈接退腥,傳輸層的作用是為上層協(xié)議提供端到端的可靠和透明的數(shù)據(jù)傳輸服務(wù)任岸,包括處理差錯(cuò)控制和流量控制等問題。該層向高層屏蔽了下層數(shù)據(jù)通信的細(xì)節(jié)狡刘,是高層用戶看到的只是在兩個(gè)傳輸實(shí)體建的一個(gè)主機(jī)到主機(jī)的享潜、可由用戶控制和設(shè)定、可靠的數(shù)據(jù)通路嗅蔬。通常說的TCP UDP就是在這層剑按。端口號(hào)即是這里的“端”疾就。
網(wǎng)絡(luò)層
本層通過IP尋址來建立兩點(diǎn)之間的連接,為源端的運(yùn)輸層來的分組艺蝴,選擇合適的路由和交換節(jié)點(diǎn)猬腰,正確無誤地按照地址傳送給目的端的運(yùn)輸層。就是通常說的ip層猜敢。這一層就是我們經(jīng)常說的IP協(xié)議層姑荷。IP協(xié)議是Internet的基礎(chǔ)。
數(shù)據(jù)鏈路層
將比特組合成字節(jié)缩擂,再將字節(jié)組成幀鼠冕,使用鏈路層地址(以太網(wǎng)mac地址)來訪問介質(zhì),并進(jìn)行差錯(cuò)檢測(cè)胯盯。
數(shù)據(jù)鏈路層又分為2個(gè)子層:邏輯鏈路控制子層(LLC)和媒體訪問控制子層(MAC)供鸠。
物理層
實(shí)際最終信號(hào)傳輸是通過物理層實(shí)現(xiàn)的。通過物理介質(zhì)傳輸比特流陨闹。規(guī)定電平楞捂、速度和電纜針腳。常用設(shè)備有(各種物理設(shè)備)集線器趋厉、中繼器寨闹、調(diào)制解調(diào)器、網(wǎng)線君账、雙絞線繁堡、同軸電纜。這些都是物理層的傳輸介質(zhì)
TCP/IP五層各層定義
物理層:主要是基于電器特性發(fā)送高低電壓(電信號(hào))乡数,高電壓對(duì)應(yīng)數(shù)字1椭蹄,低電壓對(duì)應(yīng)數(shù)字0
數(shù)據(jù)鏈路層:建立邏輯連接、進(jìn)行硬件地址尋址净赴、差錯(cuò)校驗(yàn)等功能(由底層網(wǎng)絡(luò)定義協(xié)議)绳矩。并且將比特組合成字節(jié)進(jìn)而組合成幀,用MAC地址訪問介質(zhì)玖翅,錯(cuò)誤發(fā)現(xiàn)但不能糾正翼馆。
????????????? <1>以廣播的方式通訊
???????????? <2>以太網(wǎng)協(xié)議:早期的時(shí)候各個(gè)公司都有自己的分組方式,后來形成了統(tǒng)一的標(biāo)準(zhǔn)金度,即以太網(wǎng)協(xié)議ethernet
???????????? <3>mac地址:head中包含的源和目標(biāo)地址由來:ethernet規(guī)定接入internet的設(shè)備都必須具備網(wǎng)卡应媚,發(fā)送端和接收端的地址便是指網(wǎng)卡的地址,即mac地址mac地址:每塊網(wǎng)卡出廠時(shí)都被燒制上一個(gè)世界唯一的mac地址猜极,長(zhǎng)度為48位2進(jìn)制中姜,通常由12位16進(jìn)制數(shù)表示(前六位是廠商編號(hào),后六位是流水線號(hào))
網(wǎng)絡(luò)層:引入一套新的地址用來區(qū)分不同的廣播域/子網(wǎng)跟伏,這套地址即網(wǎng)絡(luò)地址丢胚,進(jìn)行邏輯地址尋址翩瓜,實(shí)現(xiàn)不同網(wǎng)絡(luò)之間的路徑選擇。
<1>協(xié)議有:IP(IPV4 IPV6) ARP RARP ICMP IGMP
<2>IP協(xié)議:規(guī)定網(wǎng)絡(luò)地址的協(xié)議叫ip協(xié)議嗜桌,它定義的地址稱之為ip地址奥溺,廣泛采用的v4版本即ipv4辞色,它規(guī)定網(wǎng)絡(luò)地址由32位2進(jìn)制表示范圍0.0.0.0-255.255.255.255
一個(gè)ip地址通常寫成四段十進(jìn)制數(shù)骨宠,例:192.168.10.1
<3>IP協(xié)議的作用主要有兩個(gè),一個(gè)是為每一臺(tái)計(jì)算機(jī)分配IP地址相满,另一個(gè)是確定哪些地址在同一個(gè)子網(wǎng)絡(luò)(配合子網(wǎng)掩碼)层亿。
傳輸層:定義傳輸數(shù)據(jù)的協(xié)議端口號(hào),以及流控和差錯(cuò)校驗(yàn)立美。<1>協(xié)議有:TCP UDP匿又,數(shù)據(jù)包一旦離開網(wǎng)卡即進(jìn)入網(wǎng)絡(luò)傳輸層<2>封裝的數(shù)據(jù)格式
應(yīng)用層:規(guī)定應(yīng)用程序的數(shù)據(jù)格式,網(wǎng)絡(luò)服務(wù)與最終用戶的一個(gè)接口建蹄。<1>協(xié)議有:HTTP FTP TFTP SMTP SNMP DNS TELNET HTTPS POP3 DHCP
2碌更、簡(jiǎn)述iproute家族命令
ip命令:
show / manipulate routing, devices, policy routing and tunnels
(1)ip link: network device configuration 顯示修改網(wǎng)絡(luò)設(shè)備的配置
ip link set – change device attributes
ip link show – display device attributes
ip link help – 顯示簡(jiǎn)要使用幫助;
示例:ip link set eth1 down ##讓eth1網(wǎng)落下線
(2)ip netns: – manage network namespaces.
ip netns list:列出所有的netns
ip netns add NAME:創(chuàng)建指定的netns
ip netns del NAME:刪除指定的netns
ip netns exec NAME COMMAND:在指定的netns中運(yùn)行命令
(3)ip address – protocol address management.
ip address add – add new protocol address
ip address delete – delete protocol address
ip addr delete IFADDR dev IFACE
ip address show – look at protocol addresses
ip addr list [IFACE]:顯示接口的地址洞慎;
ip address flush – flush protocol addresses
ip addr flush dev IFACE
(4)ip route – routing table management 管理ip路由表
ip route add – add new route
ip route change – change route
ip route replace – change or add new one
ip route delete – delete route
ip route del TYPE PRIFIX
示例:# ip route delete 192.168.1.0/24
ip route show – list routes
ip route flush – flush routing tables
ip route get – get a single route
ip route get TYPE PRIFIX
示例:ip route get 192.168.0.0/24
3痛单、詳細(xì)說明進(jìn)行管理工具h(yuǎn)top、vmstat等相關(guān)命令劲腿,并舉例
htop命令:
選項(xiàng):
-d #:指定延遲時(shí)間間隔旭绒;
-u UserName:僅顯示指定用戶的進(jìn)程;
-s COLUME:以指定字段進(jìn)行排序焦人;
子命令:
l:顯示選定的進(jìn)程打開的文件列表挥吵;
s:跟蹤選定的進(jìn)程的系統(tǒng)調(diào)用;
t:以層級(jí)關(guān)系顯示各進(jìn)程狀態(tài)花椭;
a:將選定的進(jìn)程綁定至某指定的CPU核心忽匈;vmstat命令:- Report virtual memory statistics? 報(bào)告虛擬內(nèi)存數(shù)據(jù)
vmstat [options] [delay [count]]
procs:
r:等待運(yùn)行的進(jìn)程的個(gè)數(shù);CPU上等待運(yùn)行的任務(wù)的隊(duì)列長(zhǎng)度矿辽;
b:處于不可中斷睡眠態(tài)的進(jìn)程個(gè)數(shù)脉幢;被阻塞的任務(wù)隊(duì)列的長(zhǎng)度;
memory:
swpd:交換內(nèi)存使用總量嗦锐;
free:空閑的物理內(nèi)存總量嫌松;
buffer:用于buffer的內(nèi)存總量;
cache:用于cache的內(nèi)存總量奕污;
swap
si:數(shù)據(jù)進(jìn)入swap中的數(shù)據(jù)速率(kb/s)
so:數(shù)據(jù)離開swap的速率(kb/s)
io
bi:從塊設(shè)備讀入數(shù)據(jù)到系統(tǒng)的速度(kb/s)
bo:保存數(shù)據(jù)至塊設(shè)備的速率(kb/s)
system
in:interrupts萎羔,中斷速率;
cs:context switch, 上下文 切換的速率碳默;
cpu
us: user space
sy:system
id:idle
wa:wait
st: stolen
選項(xiàng):
-s:顯示內(nèi)存統(tǒng)計(jì)數(shù)據(jù)贾陷;
示例:
vmstat 2? ? ? ? ##?每2秒顯示一次內(nèi)存統(tǒng)計(jì)數(shù)據(jù)
vmstat 2 3? ? ##?每2秒顯示一次內(nèi)存統(tǒng)計(jì)數(shù)據(jù)缘眶,一共顯示3次
4、使用until和while分別實(shí)現(xiàn)192.168.0.0/24網(wǎng)段內(nèi)髓废,地址是否能夠ping通巷懈,若ping通則輸出"success!",若ping不通則輸出"fail!"
#!/bin/bash
declare -i i=1
while [ $i -le 254 ]; do?
? ?if ping -c 2 192.168.0.$i &> /dev/dull; then?
? ?echo "Success!"
? ? else
? ? echo "Fail!"
? fi
? ?let i++
done
#!/bin/bash
declare -i i=1
until [ $i -gt 254 ]; do?
?if ping -c 2 192.168.0.$i &> /dev/dull; then?
? ?echo "Success!"
? ? else
? ? echo "Fail!"
? fi
? ?let i++
done