開心生活站

位置:首頁 > IT科技 > 

linux,ss命令

IT科技1.12W

1、ss命令簡介:

ss是Socket Statistics的縮寫。ss命令可以用來獲取socket統計信息,可以顯示和netstat類似的內容。能夠顯示更多更詳細的有關TCP和連接狀態的信息,而且比netstat更快速更高效。

當服務器的socket連接數量變得非常大時,無論是使用netstat命令還是直接cat /proc/net/tcp,執行速度都會很慢。

ss快是因爲利用到了TCP協議棧中tcp_diag。tcp_diag是一個用於分析統計的模塊,可以獲得Linux 內核中第一手的信息,這就確保了ss的快捷高效。

2、用法
ss [選項] [過濾]

3、常見參數:

如果沒有指定任何選項,ss 列出所有已經建立、並不處在listen的TCP 套接字。

-h, –help

列出選項概要

-V,–version
輸出版本信息

-n, –numeric
不嘗試解析服務的名字

-r,–resolve
嘗試解析數字地址/端口

-a,–all
顯示處在listening 和 非listening 狀態的套接字(對TCP來說,這意味所有已建立的連接)。

-l,–listening
只顯示處在 listening 狀態的套接字(默認情況下它們是被忽略的)

* -o, –options*
顯示定時器信息

-e,–extended
顯示詳細的套接字信息

-m,–memory
顯示套接字的內存使用信息

-p, –process
顯示使用套接字的進程

-i, –info
顯示TCP內部信息

-s,–summary
顯示概要統計。該選項不分析來自不同來源的套接字概要信息。 當套接字的數量很大導致分析/proc/net/tcp 很痛苦時,它很有用。

-Z,–context
同 -p 選項,不過還顯示進程的安全上下文

-z,–contexts
同 -Z, 不過還顯示套接字的上下文。 該套接字上下文是從inode裏取出的、並不是內核持有的實際的socket上下文。 套接子通常以創建它的進程上下文標記, 但該上下文會反映已應用上的policy role, type and/or range , 因此這是個很有用的參考。

-b,-bpf
顯示套接字的BPF過濾(只有管理員能獲取這些信息)

-4,–ipv4
只顯示IPv4 套接字(-f inet的別名)

-6,–ipv6
只顯示IPv6 套接字(-f inet6的別名)

-0,–packet
顯示PACKET 套接字(-f link的別名)

-t,–tcp
顯示 TCP 套接字

-u,–udp
顯示UDP 套接字

-d,–dccp
顯示 DCCP 套接字

-w,–raw
顯示 RAW 套接字

-x,–unix
顯示 Unix Domain 套接字(-f unix的別名)

-f FAMILY,–family=FAMILY
顯示類型爲FAMILY的套接字。 支持以下幾個family: unix, inet,inet6,link,netlink

-A QUERY, –query=QUERY, –socket=QUERY
列出需要倒出的套接字列表,用逗號隔開。 支持以下標識符: all, inet, tcp, udp, raw, unix, packet, netlink, unix_dgram, unix_stream, unix_seqpacket, packet_raw, packet_dgram

-D FILE, –diag=FILE
不顯示任何內容,僅把原始TCP套接字信息存入文件FILE。 如果FILE爲 - , 則使用stdout作爲輸出。

-F FILE, –filter=FILE
從文件FILE中讀取信息。 文件的每一行被認爲是單個命令行參數。 如果FILE爲 - , 則使用stdin。

* FILTER := [ state TCP-STATE ] [ EXPRESSION ] *

舉例:

顯示所有的連接

linux ss命令

標籤:ss linux 命令