Linux 命令 netstat

netstat 查看鏈接和端口監(jiān)聽等信息

參數介紹:

-n :不顯示別名(主機名/域名以 數字或IP顯示)

-e :顯示其他/更多信息

-p :顯示進程PID/進程名

-c :持續(xù)輸出(設置后會每隔 1秒輸出一次,Ctrl+C 終止)

-l :顯示正在監(jiān)聽的套接字

-a :顯示全部信息

# 下面這些就不很常用了。

-r :顯示路由表

-i :顯示網絡接口(網卡)

-g :顯示多播組信息

-s :顯示網絡統(tǒng)計

-M :顯示偽裝連接

-v :顯示正在進行的工作

# 更多的命令可以用 netstat --help 來查看。

使用示例:

# 顯示當前服務器的所有連接信息

netstat -a

# 顯示當前服務器的所有 TCP連接信息

netstat -at

# 顯示當前服務器的所有 UDP連接信息

netstat -au

# 顯示當前服務器的所有 端口監(jiān)聽信息

netstat -lnp

# 顯示當前服務器的所有 TDP端口監(jiān)聽信息

netstat -lntp

一般來說經常使用這個命令:

# 顯示當前服務器的所有正在監(jiān)聽 TCP端口的信息,并且 顯示進程PID和進程名,但不顯示別名(域名以IP顯示),這個命令算是最常用的了。

netstat -lntp

# 輸出示例

Active Internet connections (only servers)

Proto Recv-Q Send-Q Local Address? ? ? ? ? Foreign Address? ? ? ? State? ? ? PID/Program name

tcp? ? ? ? 0? ? ? 0 0.0.0.0:80? ? ? ? ? ? ? 0.0.0.0:*? ? ? ? ? ? ? LISTEN? ? ? 14233/nginx.conf

tcp? ? ? ? 0? ? ? 0 0.0.0.0:22? ? ? ? ? ? ? 0.0.0.0:*? ? ? ? ? ? ? LISTEN? ? ? 1555/sshd? ? ?

tcp? ? ? ? 0? ? ? 0 0.0.0.0:443? ? ? ? ? ? 0.0.0.0:*? ? ? ? ? ? ? LISTEN? ? ? 14233/nginx.conf

tcp6? ? ? 0? ? ? 0 :::22? ? ? ? ? ? ? ? ? :::*? ? ? ? ? ? ? ? ? ? LISTEN? ? ? 1555/sshd

—————————————————————————————————————

# 顯示監(jiān)聽 80端口的進程PID和進程名,grep是匹配并顯示 符合關鍵詞的行。

netstat -lntp|grep ":80"

# 輸出示例

Active Internet connections (only servers)

Proto Recv-Q Send-Q Local Address? ? ? ? ? Foreign Address? ? ? ? State? ? ? PID/Program name

tcp? ? ? ? 0? ? ? 0 0.0.0.0:80? ? ? ? ? ? ? 0.0.0.0:*? ? ? ? ? ? ? LISTEN? ? ? 14233/nginx.conf

—————————————————————————————————————

# 顯示 ssh的監(jiān)聽情況,grep是匹配并顯示 符合關鍵詞的行。

netstat -lntp|grep "ssh"

# 輸出示例

Active Internet connections (only servers)

Proto Recv-Q Send-Q Local Address? ? ? ? ? Foreign Address? ? ? ? State? ? ? PID/Program name

tcp? ? ? ? 0? ? ? 0 0.0.0.0:22? ? ? ? ? ? ? 0.0.0.0:*? ? ? ? ? ? ? LISTEN? ? ? 1555/sshd

表頭解釋:

Proto :連接協(xié)議(tcp/udp是IPv4,tcp6/udp6是IPv6)

Recv-Q : 接收隊列(基本都是0,如果不是代表堆積)

Send-Q :發(fā)送隊列(基本都是0,如果不是代表堆積)

Local Address :本地地址和端口

Foreign Address :對外地址和端口

State :連接狀態(tài)

PID/Program name :進程PID/進程名

# 每隔 1秒顯示一次當前服務器的所有連接信息

netstat -c

# 每隔 1秒顯示一次當前服務器的所有 TCP連接信息

netstat -ct

# 每隔 1秒顯示一次當前服務器的所有 UDP連接信息

netstat -cu

# 顯示當前服務器的路由表

netstat -r

# 顯示當前服務器的網絡接口信息(網卡)

netstat -i

# 顯示當前服務器的網絡統(tǒng)計信息

netstat -s

# 更多的命令可以用 netstat --help 來查看。

在使用 netstat命令中,會顯示一些連接狀態(tài),下面是各狀態(tài)的意思:

LISTEN

# 監(jiān)聽來自遠程連接的 TCP端口連接請求

SYN-SENT

# 在發(fā)送連接請求后,等待匹配的連接請求

SYN-RECEIVED

# 在收到和發(fā)送一個連接請求后,等待對方對連接請求的確認

ESTABLISHED

# 代表一個打開的連接

FIN-WAIT-1

# 等待遠程 TCP連接中斷請求,或先前的連接中斷請求的確認

FIN-WAIT-2

# 從遠程 TCP等待連接中斷請求

CLOSE-WAIT

# 等待從本地用戶發(fā)來的連接中斷請求

CLOSING

# 等待遠程TCP對連接中斷的確認

LAST-ACK

# 等待原來的發(fā)向遠程TCP的連接中斷請求的確認

TIME-WAIT

# 等待足夠的時間,以確保遠程TCP接收到連接中斷請求的確認

CLOSED

# 沒有任何連接狀態(tài)(或者關閉了連接)

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

  • 今天來學習一個命令netstat,官方文檔 https://linux.die.net/man/8/netstat...
    Brown_閱讀 894評論 0 51
  • Netstat 命令用于顯示各種網絡相關信息,如網絡連接,路由表,接口狀態(tài) (Interface Statisti...
    Frank_8942閱讀 190評論 0 0
  • 輸出信息含義 執(zhí)行netstat后,其輸出結果為 Active Internet connections (w/o...
    bailongxian閱讀 1,303評論 0 2
  • https://nodejs.org/api/documentation.html 工具模塊 Assert 測試 ...
    KeKeMars閱讀 6,608評論 0 6
  • 每一次,回到南京丁山“香格里拉”,每一次,倦色沉重的通宵工作歸來,眼前,或是花枝招展的風結,或是簌簌落落的雨花,總...
    LECAMELIA閱讀 307評論 0 1

友情鏈接更多精彩內容