自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Netstat 還能這么玩兒?

系統(tǒng) Linux
netstat 這個(gè)命令在 Linux 、Windows 和 MacOS 操作系統(tǒng)下都兼容,不同的是,netstat 在 UNIX 下顯示詳細(xì)信息的命令是 man netstat ,而在 Linux 和 Windows 下面是 netstat --help。

一次摸魚(yú)的機(jī)會(huì),看到群里小伙伴問(wèn)了一嘴 netstat -tnpl 這個(gè)命令是干啥的,netstat 這個(gè)命令用過(guò)很多次,但是我其實(shí)也沒(méi)有認(rèn)真研究,但是這是一個(gè)問(wèn)題,我不能放過(guò)它,而且 netstat 這個(gè)命令我日常就用來(lái)查詢端口的監(jiān)聽(tīng)狀態(tài)了,所以趁著這次機(jī)會(huì),一起搞懂 netstat 這個(gè)命令。

netstat 這個(gè)命令在 Linux 、Windows 和 MacOS 操作系統(tǒng)下都兼容,不同的是,netstat 在 UNIX 下顯示詳細(xì)信息的命令是 man netstat ,而在 Linux 和 Windows 下面是 netstat --help。

Linux 下的 netstat 命令

當(dāng)我在 Linux 下執(zhí)行 man netstat 命令之后,系統(tǒng)顯示出來(lái)的提示著實(shí)讓我嚇一大跳,看來(lái)這個(gè)命令內(nèi)容很多啊!不要被這么長(zhǎng)的描述嚇到,我們一步一步來(lái)。

首先來(lái)了解一下 netstat 這個(gè)命令是干啥的。

官方給我們的解釋就是

netstat -- show network status

列出網(wǎng)絡(luò)狀態(tài)

但是這網(wǎng)絡(luò)狀態(tài)都有啥呢?帶著疑問(wèn),我在 Linux 下執(zhí)行了一下。

打印出來(lái)是一個(gè)六元組,六元組每一列的內(nèi)容分別是

仔細(xì)看了一下這個(gè)六元組,這好像表明 netstat 這個(gè)命令是用于監(jiān)控傳入和傳出的網(wǎng)絡(luò)連接和狀態(tài)的一個(gè)命令行工具啊。

從整體上來(lái)看,netstst 的輸出結(jié)果可以分為兩部分,一部分是 Active Internet connections,稱為活躍 TCP 連接,其中的 Recv-Q 和 Send-Q 指的是客戶端發(fā)送隊(duì)列和客戶端接收隊(duì)列。這兩個(gè)隊(duì)列的值一般都是 0 ,如果不是 0 的話表示有消息堆積還沒(méi)有發(fā)出去/取出,這種情況一般很少見(jiàn)到。

另外一部分是 Active UNIX domain sockets, 稱為活躍的 Unix 域套接字,這部分中的 socket 和網(wǎng)絡(luò) socket 套接字一樣,不同的是,這塊只能用來(lái)本地通信,性能要比網(wǎng)絡(luò) socket 高。Active UNIX domain sockets 也是一個(gè)六元組,分別表示

netstat 參數(shù)釋義

下面我們來(lái)解釋一下 netstat --help 列出來(lái)的一些參數(shù),我們從最常見(jiàn)的一些參數(shù)開(kāi)始入手,這樣大家看起來(lái)也能形成階段性記憶,不至于失去重點(diǎn)。

netstat -a

-a 這個(gè)參數(shù)默認(rèn)會(huì)監(jiān)控所有的 socket 連接。

包括已經(jīng)監(jiān)聽(tīng)的、已經(jīng)建立連接的、客戶端發(fā)送的等待服務(wù)器的和未被監(jiān)聽(tīng)都會(huì)被列出來(lái)。

netstat -at/-t

netstat -at 和 netstat -t 這倆后綴都是用來(lái)監(jiān)聽(tīng)與 TCP 協(xié)議有關(guān)的端口,不同的是 netstat -at 會(huì)監(jiān)聽(tīng)所有 State(狀態(tài))下的端口,而 netstat -t 僅僅會(huì)監(jiān)聽(tīng) ESTABLISHED 狀態(tài)的端口。

netstat -at

netstat -t

netstat -au/-u

同樣的,netstat -au 和 netstat -u 都會(huì)監(jiān)控與 UDP 有關(guān)的端口,不同的是 netstat -au 會(huì)監(jiān)聽(tīng)所有 State(狀態(tài))下的端口,而 netstat -u 僅僅會(huì)監(jiān)聽(tīng) ESTABLISHED 狀態(tài)的端口。

netstat -au

netstat -u

我這里測(cè)試是沒(méi)有監(jiān)控已經(jīng)建立連接狀態(tài)下的 UDP 協(xié)議。

netstat -ap

這條命令用于列出程序運(yùn)行的端口,常用的命令是

netstat -ap|grep '程序名'

比如我們要找 http 程序,就是 Netstat -ap|grep http

還可以直接列出端口號(hào)

netstat -ap|grep 8080

不過(guò)需要注意下,并不是所有的程序都能被找到,沒(méi)有權(quán)限的不會(huì)顯示,使用 root 權(quán)限可以查詢所有信息。

netstat -l

netstat -l 用于監(jiān)聽(tīng)正在處于監(jiān)聽(tīng)狀態(tài)的端口(讀起來(lái)還真有那么點(diǎn)費(fèi)勁,為了讀起來(lái)更順暢,后面直接使用列出替換監(jiān)聽(tīng))。

netstat -lt 只用于列出所有監(jiān)聽(tīng) TCP 端口。

netstat -lu 只用于列出所有監(jiān)聽(tīng) UDP 端口。

netstat -lx 只用于列出所有監(jiān)聽(tīng) UNIX 端口。

netstat -s

netstat -s用于列出所有端口的統(tǒng)計(jì)信息。

netstat -st用于列出 TCP 端口的統(tǒng)計(jì)信息。

netstat -su用于列出 UDP 端口的統(tǒng)計(jì)信息。

netstat -p

netstat -p 可以與其他參數(shù)一起使用,例如 netstat -pt 就可以列出服務(wù)名稱和 PID 號(hào)。

netstat -c

使用 netstat -c 將每隔一秒列出網(wǎng)絡(luò)信息。

netstat -r

netstat -r用于列出路由核心信息。

netstat --verbose

這條命令會(huì)列出系統(tǒng)支持的地址族(Address Family)。

Address Family 簡(jiǎn)單來(lái)說(shuō)就是底層是使用的哪種通信協(xié)議來(lái)遞交數(shù)據(jù)的,如 AF_INET 用的是 TCP/IPv4;AF_INET6 使用的是 TCP/IPv6;而 AF_LOCAL 或者 AF_UNIX 則指的是本地通信(即本次通信是在當(dāng)前主機(jī)上的進(jìn)程間的通信),一般用絕對(duì)路徑的形式來(lái)指明。

netstat -i

netstat -i 用來(lái)列出網(wǎng)絡(luò)接口數(shù)據(jù)包,包括傳輸和接收具有 MTU(最大傳輸單元)的數(shù)據(jù)包。

另外,netstat -ie 還用于列出內(nèi)核接口表,和ifconfig 命令很相似

關(guān)于這個(gè)問(wèn)題

所以,回到文章剛開(kāi)始的那個(gè)疑問(wèn),netstat -tnpl 是干什么用的,其實(shí)這就是幾個(gè)參數(shù)的組合

  • -t :僅列出與 tcp 有關(guān)的信息
  • -n:以數(shù)字形式列出
  • -p:列出正在使用 socket PID 和 程序名稱
  • -l:列出正在監(jiān)聽(tīng)的服務(wù)器 socket

我們執(zhí)行一下這個(gè)命令。

另外,在 Linux 中,已經(jīng)推薦使用 ss 來(lái)替代 netstat ,使用 ip route 來(lái)替代 netstat -r ,使用ip -s link 來(lái)替代 netstat -i ,使用 ip addr 來(lái)替代 netstat -g 了。


責(zé)任編輯:武曉燕 來(lái)源: 程序員cxuan
相關(guān)推薦

2025-02-03 08:16:56

2022-10-31 08:47:21

人臉識(shí)別按鍵鍵盤

2017-03-17 13:40:48

思科視頻

2020-05-09 16:45:56

ping命令Linux

2022-10-28 19:19:11

ChromeNetwork網(wǎng)絡(luò)

2020-10-09 10:45:22

語(yǔ)言代碼數(shù)組

2021-01-27 18:13:35

日志nginx信息

2024-10-28 07:10:00

scroll標(biāo)記前端網(wǎng)格布局

2021-08-29 18:13:03

緩存失效數(shù)據(jù)

2021-11-22 11:05:20

Vue 3setup前端

2024-03-25 08:03:32

技術(shù)面試ShowMeBug協(xié)同編程

2019-03-28 11:07:56

Spring BootRedis緩存

2024-10-17 16:55:08

2013-03-26 13:26:41

婚禮微信微信公眾賬號(hào)

2021-04-01 05:40:53

分庫(kù)分表數(shù)據(jù)庫(kù)MySQL

2022-01-04 08:00:48

前端技術(shù)Esbuild

2020-08-14 08:19:25

Shell命令行數(shù)據(jù)

2017-03-07 09:49:18

存儲(chǔ)

2014-12-15 09:16:10

DockerDaoCloud鏡像部署
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)