Linux之網(wǎng)絡(luò)管理(8)網(wǎng)絡(luò)監(jiān)控工具
創(chuàng)新互聯(lián)長期為數(shù)千家客戶提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊(duì)從業(yè)經(jīng)驗(yàn)10年,關(guān)注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為萊州企業(yè)提供專業(yè)的成都網(wǎng)站設(shè)計、成都做網(wǎng)站,萊州網(wǎng)站改版等技術(shù)服務(wù)。擁有10多年豐富建站經(jīng)驗(yàn)和眾多成功案例,為您定制開發(fā)。
linux中有很多查看網(wǎng)絡(luò)、進(jìn)程通信狀態(tài)的查看工具,而網(wǎng)絡(luò)之間建立通信是通過soket套接字進(jìn)行的,所謂套接字,就是相當(dāng)于插座,而一臺主機(jī)上會產(chǎn)生多種套接字,就是相當(dāng)于插頭向插座插入的過程,也就是主機(jī)中進(jìn)程通信。而在網(wǎng)絡(luò)中建立通信,就是雙方各種插入對方。當(dāng)然這些只是粗率的比喻,實(shí)際上,soket是用來將tcp/udp等協(xié)議發(fā)送的數(shù)據(jù)包進(jìn)行封裝:也就是相當(dāng)于食品包裝,把數(shù)據(jù)包加上port端口號、進(jìn)程號等然后發(fā)送給對方,然后對方根據(jù)數(shù)據(jù)的包裝袋來放回特定需要的數(shù)據(jù)。這樣網(wǎng)絡(luò)之間各種進(jìn)程直接通信之間互不干擾。就像送快遞和收快遞的一樣,誰的快遞,誰來收,路線就是到你家。
linux中提供的工具:
netstat 命令
man 文檔幫助的說明:
netstat - Print network connections, routing tables, interface statistics, masquerade connections, and multicast memberships
打印網(wǎng)絡(luò)連接、路由表、接口統(tǒng)計、偽裝連接、多播連接等信息。
選項(xiàng)介紹:
netstat [option]...
-r : 顯示路由表
-t : 已經(jīng)建立的tcp協(xié)議相關(guān)
-u : 已經(jīng)建立的udp協(xié)議相關(guān)
-w :raw sokect (未包裝處理的)
-l : 處于監(jiān)聽狀態(tài)
-a : 所有狀態(tài)
-n : 及數(shù)字顯示IP和端口
-e : 擴(kuò)展方式詳細(xì)更多狀態(tài)信息
-p : 顯示相關(guān)進(jìn)程及PID
常用組合使用:
查明網(wǎng)絡(luò)連接:
netstat -tan 顯示所有tcp相關(guān)的連接狀態(tài)
netstat -uan 顯示所有udp相關(guān)的連接狀態(tài)
netstat -tnl 顯示所有監(jiān)聽狀態(tài)的tcp連接
netstat -unl 顯示所有監(jiān)聽狀態(tài)的udp連接
顯示路由表:
netstat -rn 不做反向解析顯示內(nèi)核路由表
顯示接口統(tǒng)計數(shù)據(jù):
netstat -i #顯示所有網(wǎng)絡(luò)接口信息狀態(tài)
netstat -I=FACE_NAME #顯示指定設(shè)備信息狀態(tài)
例子:netstat -I=eth0 #顯示eth0設(shè)備數(shù)據(jù)連接狀態(tài)信息
ss命令
ss - another utility to investigate sockets
這是另一種顯示套接字信息的工具,netstat命令通過遍歷proc來獲取socket信息,以及是老舊的命令了,ss使用netlink與內(nèi)核tcp_diga模塊通信獲取socket信息,更加準(zhǔn)確。
格式及選項(xiàng)介紹:
ss[option] [FILTER]
option:
-t :tcp協(xié)議相關(guān)
-u :udp協(xié)議相關(guān)
-w : 裸套接字符相關(guān)
-x :unix sock系統(tǒng)內(nèi)核相關(guān)
-l :listen監(jiān)聽狀態(tài)的連接
-a : 所有連接
-n : 數(shù)字格式
-p : 相關(guān)的程序及PID
-e : 擴(kuò)展的信息
-m : 內(nèi)存用量
-o : 計時器信息
FILTER : = [ state TCP-STATE ] [ EXPRESSION ]
TCP的標(biāo)準(zhǔn)狀態(tài):
LISTEN :監(jiān)聽
ESTABLISHED:已建立的連接
FIN_WAIT_1
FIN_WAIT_2
SYN_SENT
SYN_RECV
CLOSED關(guān)閉
EXPRESSION:
dport =#目標(biāo)端口
sport = #源端口
例子:’( dport = :ssh or sport = :ssh )’
常用組合:
ss -tan#所有tcp連接狀態(tài)
ss -tanl #所有監(jiān)聽的tcp狀態(tài)
ss -tanlp #所有監(jiān)聽tcp的并顯示進(jìn)程PID
ss -uan #所有udp狀態(tài)
額外用法:
ssh -A QUERY#查看對應(yīng)類型或協(xié)議的狀態(tài),QUERY參數(shù)為要指定的類型
QUERY:
all, inet, tcp, udp, raw, unix, packet, netlink, unix_dgram, unix_stream,
unix_seqpacket, packet_raw, packet_dgram.
TCP-STATE中可用的標(biāo)示符參數(shù):
所有TCP標(biāo)準(zhǔn)狀態(tài)參數(shù):
established, syn-sent, syn-recv, fin-wait-1, fin-wait-2, time-wait, closed,
close-wait, last-ack, listen, closing.
復(fù)雜狀態(tài)參數(shù):
all 所有的狀態(tài)
connection 所有連接的(除了監(jiān)聽和關(guān)閉的)狀態(tài)
synchronized 所有同步的,除了syn-sent所有連接的狀態(tài)
bucket 所有維護(hù)scokect和syn-recv的狀態(tài)
big 所有和bucket相反的狀態(tài)
案例展示:
顯示本地打開的所有端口 ss -l
[root@localhost www]# ss -l | tail -n 10

解析:udp是沒有狀態(tài)的,所以打開的連接會顯示兩個協(xié)議所有處于監(jiān)聽狀態(tài)連接
顯示每個進(jìn)程具體打開的 socket。
[root@localhost www]# ss -pl | tail -n 10
顯示所有tcp socket
[root@localhost www]# ss -t -a
顯示所有UDP Socekt
[root@localhost www]# ss -u -a

顯示所有已經(jīng)建立的SMTP連接
[root@localhost www]# ss -o state established '( dport = :smtp or sport = :smtp )'
顯示所有已經(jīng)建立的HTTP連接
[root@localhost www]# ss -o state established '( dport = :http or sport = :http )'
找出所有連接X服務(wù)器的進(jìn)程
[root@localhost www]# ss -x src /tmp/.X11-unix/*
列出當(dāng)前各協(xié)議的各套接字個數(shù)
[root@localhost www]# ss -s
文章標(biāo)題:Linux之網(wǎng)絡(luò)管理(8)網(wǎng)絡(luò)監(jiān)控工具
本文地址:http://www.chinadenli.net/article8/gisdip.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供建站公司、網(wǎng)站制作、電子商務(wù)、微信公眾號、營銷型網(wǎng)站建設(shè)、全網(wǎng)營銷推廣
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)