Linux系統(tǒng)中,ss命令可用于查看系統(tǒng)的socket的狀態(tài)。
專注于為中小企業(yè)提供網(wǎng)站設(shè)計、成都做網(wǎng)站服務(wù),電腦端+手機端+微信端的三站合一,更高效的管理,為中小企業(yè)商丘免費做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動了上千余家企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設(shè)實現(xiàn)規(guī)模擴充和轉(zhuǎn)變。
1、命令格式:
ss [參數(shù)]
ss [參數(shù)] [過濾]
2、命令功能:
ss(Socket Statistics的縮寫)命令可以用來獲取 socket統(tǒng)計信息,此命令輸出的結(jié)果類似于
netstat輸出的內(nèi)容,但它能顯示更多更詳細的 TCP連接狀態(tài)的信息,且比 netstat 更快速高效。它使用了 TCP協(xié)議棧中
tcp_diag(是一個用于分析統(tǒng)計的模塊),能直接從獲得第一手內(nèi)核信息,這就使得 ss命令快捷高效。在沒有
tcp_diag,ss也可以正常運行。
3、命令參數(shù):
-h, --help 幫助信息
-V, --version 程序版本信息
-n, --numeric 不解析服務(wù)名稱
-r, --resolve 解析主機名
-a, --all 顯示所有套接字(sockets)
-l, --listening 顯示監(jiān)聽狀態(tài)的套接字(sockets)
-o, --options 顯示計時器信息
-e, --extended 顯示詳細的套接字(sockets)信息
-m, --memory 顯示套接字(socket)的內(nèi)存使用情況
-p, --processes 顯示使用套接字(socket)的進程
-i, --info 顯示 TCP內(nèi)部信息
-s, --summary 顯示套接字(socket)使用概況
-4, --ipv4 僅顯示IPv4的套接字(sockets)
-6, --ipv6 僅顯示IPv6的套接字(sockets)
-0, --packet 顯示 PACKET 套接字(socket)
-t, --tcp 僅顯示 TCP套接字(sockets)
-u, --udp 僅顯示 UCP套接字(sockets)
-d, --dccp 僅顯示 DCCP套接字(sockets)
-w, --raw 僅顯示 RAW套接字(sockets)
-x, --unix 僅顯示 Unix套接字(sockets)
-f, --family=FAMILY 顯示 FAMILY類型的套接字(sockets),F(xiàn)AMILY可選,支持 unix, inet, inet6, link, netlink
-A, --query=QUERY, --socket=QUERY
QUERY := {all|inet|tcp|udp|raw|unix|packet|netlink}[,QUERY]
-D, --diag=FILE 將原始TCP套接字(sockets)信息轉(zhuǎn)儲到文件
-F, --filter=FILE 從文件中都去過濾器信息
FILTER := [ state TCP-STATE ] [ EXPRESSION ]
4、使用實例:
ss(Socket?Statistics的縮寫)命令可以用來獲取?socket統(tǒng)計信息,此命令輸出的結(jié)果類似于?netstat輸出的內(nèi)容。
ss -antl
-a,?--all?顯示所有套接字(sockets)
-n,?--numeric?不解析服務(wù)名稱
-t,?--tcp?僅顯示?TCP套接字(sockets)
-l,?--listening?顯示監(jiān)聽狀態(tài)的套接字(sockets)
ss -antl? 即為不解析服務(wù)名稱的情況下顯示所有狀態(tài)為listening的TCP連接
ss 是 Socket Statistics 的縮寫。ss 命令可以用來獲取 socket 統(tǒng)計信息,它顯示的內(nèi)容和 netstat 類似。但 ss 的優(yōu)勢在于它能夠顯示更多更詳細的有關(guān) TCP 和連接狀態(tài)的信息,而且比 netstat 更快。當服務(wù)器的 socket 連接數(shù)量變得非常大時,無論是使用 netstat 命令還是直接 cat /proc/net/tcp,執(zhí)行速度都會很慢。ss 命令利用到了 TCP 協(xié)議棧中 tcp_diag。tcp_diag 是一個用于分析統(tǒng)計的模塊,可以獲得 Linux 內(nèi)核中第一手的信息,因此 ss 命令的性能會好很多。《Linux就該這么學(xué)》有Linux命令大全
常用選項
-h, --help 幫助
-V, --version 顯示版本號
-t, --tcp 顯示 TCP 協(xié)議的 sockets
-u, --udp 顯示 UDP 協(xié)議的 sockets
-x, --unix 顯示 unix domain sockets,與 -f 選項相同
-n, --numeric 不解析服務(wù)的名稱,如 "22" 端口不會顯示成 "ssh"
-l, --listening 只顯示處于監(jiān)聽狀態(tài)的端口
-p, --processes 顯示監(jiān)聽端口的進程(Ubuntu 上需要 sudo)
-a, --all 對 TCP 協(xié)議來說,既包含監(jiān)聽的端口,也包含建立的連接
-r, --resolve 把 IP 解釋為域名,把端口號解釋為協(xié)議名稱
常見用例
如果不添加選項 ss 命令默認輸出所有建立的連接(不包含監(jiān)聽的端口),包括 tcp, udp, and unix socket 三種類型的連接:
查看主機監(jiān)聽的端口 $ ss -tnl
蠻少看見用-ntl參數(shù)的。