- 簡述osi七層模型和TCP/IP五層模型
OSI:是ISO(國際標準化組織)組織在1985年研究的網絡互連模型。
OSI將網絡定義為7層,每一層實現各自的功能和協議,并完成與相鄰層的接口通信。
物理層:?這一層是指物理設備
數據鏈路層:這層通過幀封裝進行傳遞
網絡層: 通過ip尋址來建立兩個節點之間的連接這一層就是我們經常說的IP協議層。IP協議是Internet的基礎
傳輸層:建立了主機端到端的鏈接,?通過mac地址進行傳輸
會話層:??會話層就是負責建立、管理和終止表示層實體之間的通信會話
表示層:表示層提供各種用于應用層數據的編碼和轉換功能,確保一個系統的應用層發送的數據能被另一個系統的應用層識別
應用層:最靠近用戶的一層,是為計算機用戶提供應用接口,也為用戶直接提供各種網絡服務。我們常見應用層的網絡服務協議有:HTTP,HTTPS,FTP,POP3、SMTP等。
- TCP/IP五層模型
應用層:應用服務,將應用層,表示層,會話層基于一層來實現
傳輸層:定義傳輸數據的協議端口號,
網絡層:負責基于ip網絡之間通信的
鏈路層:建立邏輯連接、進行硬件地址尋址
物理層:主要是基于電器特性發送高低電壓(電信號),高電壓對應數字1,低電壓對應數字0
2、簡述iproute家族命令
1ifconfig 命令
用來查詢,配置,啟用禁止網絡接口的工具,可以用其來配置臨時的ip地址,掩碼
參數:
Up 啟動指定的網卡設備
Down ?關閉指定的網卡設備
-a 顯示全部接口信息
-s 顯示摘要信息
配置IP地址: ifconfig ?eth0:0 192.168.220.1 ???臨時的ip地址
關閉一個網卡接口: ifconfig ?eth0:0 ?down
啟動和關閉arp:ifconfig ?eth0 ?arp
Ifconfig ?eth0 ?-arp
Route 命令 它主要用于通過已用ifconfig程序配置好接口來指定主機或網絡設置靜態路由
選項:
-A 設定地址類型
-C 打印將linux核心路由器緩存
-v 詳細信息模式
-n 直接數字形式顯示ip
-net:到一個網絡的路由表
-host:到一個主機的路由表
參數:
Add :增加指定路由記錄
Del:刪除指定的路由記錄
Target:目的網絡或目的主機
Gw:設默認網關
Dev:路由記錄的所有表示網絡接口
顯示當前路由: route ?-n
添加網關:route ?add ?-net ?224.0.0.0 netmask 240.0.0 dev eth0
屏蔽一條網關: route ?add ?-net 224.0.0.0 netmask 240.0.0.0 ?reject
刪除路由記錄: route ?del ?-net ?224.0.0.0 ?netmask 240.0.0.0
添加默認網關: route ?add ?default ?gw ?192.168.120.240
Netstat命令 顯示網絡連接、路由表、接口狀態、偽裝連接、網絡鏈路信息和組播成員
列出所有端口:?netstat ?-a
列出所有tcp端口: netstat ?-at
列出所有udp端口: netstat ?-au
顯示監聽的端口: netstat ?-l
顯示每個協議的統計信息: ?netstat ?-s
顯示網絡接口列表: ?netstat ?-i
顯示核心路由信息: netstat ?-r
Ip命令: 顯示網絡設備運行狀態,配置
顯示網絡設備: ip ?link ?list
查看模塊網卡狀態: ip ?link ?show ?ens33
關閉/開啟網卡: ip ?link ?set ?ens33 ?[down | up]
開啟關閉組播: ip ?link ?set ?ens33 ?multicast ?[on| off]
修改網卡名稱: ip link ?set ens33 ?name ?ens12
顯示網卡ip地址和網卡詳細信息 : ip ?-s ??address
增加網卡的ip地址:ip ?addr add 192.168.2.1/24 brd + label ens33.1 scope host dev ens33
刪除網卡ip: ip ?addr del ?192.168.2.1/24 dev ?ens33
顯示路由: ip ?route ?list
增加路由: ip ?route ?add ?192.168.0.0/16 via 192.168.1.1.254 ?dev ?ens33
添加默認路由: ip route add default via 10.88.201.254 dev ens33 proto static metric 100 ?src 10.88.201.37
刪除路由:ip ?route ?del ?192.168.0.0/16
3、詳細說明進行管理工具htop、vmstat等相關命令,并舉例
Htop命令:
-d 指定延遲時間間隔
-u ?僅顯示指定用戶的進程
-s ??以指定字段排序
如 ?htop ?-u ?root ?-d 10
Vmstat 命令
輸出字段意義:
procs :
r :等待運行的進程數。如果等待運行的進程數越多,意味著CPU非常繁忙。另外,如果該參數長期大于和等于邏輯cpu個數,則CPU資源可能存在較大的瓶頸;
b :處在非中斷睡眠狀態的進程數。意味著進程被阻塞。主要是指被資源阻塞的進程對列數(比如IO資源、頁面調度等),當這個值較大時,需要根據應用程序來進行分析,比如數據庫產品,中間件應用等;
memory :
swpd :已使用的虛擬內存大小。如果虛擬內存使用較多,可能系統的物理內存比較吃緊,需要采取合適的方式來減少物理內存的使用。swapd不為0,并不意味物理內存吃緊,如果swapd沒變化,si、so的值長期為0,這也是沒有問題的;
free :空閑的物理內存的大小;
buff :用來做buffer(緩存,主要用于塊設備緩存)的內存數,單位:KB;
cache :用來做cache(緩存,主要用于緩存文件)的內存,單位:KB;
Swap :
si :從磁盤交換到內存的交換頁數量,單位:KB/秒;
so :從內存交換到磁盤的交換頁數量,單位:KB/秒;
IO :
bi :每秒從塊設備接收到的塊數,單位:塊/秒 也就是讀塊設備;
bo :每秒發送到塊設備的塊數,單位:塊/秒 ?也就是寫塊設備;
System :
in :每秒的中斷數,包括時鐘中斷
cs :每秒的環境(上下文)切換次數。比如我們調用系統函數,就要進行上下文切換,而過多的上下文切換會浪費較多的cpu資源,這個數值應該越小越好。
Cpu :
us :用戶CPU時間(非內核進程占用時間)(單位為百分比)。 us的值比較高時,說明用戶進程消耗的CPU時間多
sy :系統使用的CPU時間(單位為百分比)
id :空閑的CPU的時間(百分比)
wa :等待IO的CPU時間
4、使用until和while分別實現192.168.0.0/24
網段內,地址是否能夠ping通,弱ping通則輸出”success!”,若ping不通則輸出”fail!”
#!/bin/bash
ip=0
while [ $ip -lt 254 ]; do
ping -c 3 192.168.0.$ip >> /dev/null
if [ $? -eq 0 ]; then
echo “success”
echo “192.168.0.$ip”
else
echo “fialed”
fi
ip=$(($ip+1))
done
~
本文來自投稿,不代表Linux運維部落立場,如若轉載,請注明出處:http://www.www58058.com/104668