0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Linux網(wǎng)絡(luò)狀態(tài)工具ss命令使用詳解

Linux愛好者 ? 來源:ttlsa ? 作者:ttlsa ? 2020-11-12 15:43 ? 次閱讀

ss命令用于顯示socket狀態(tài). 他可以顯示PACKET sockets, TCP sockets, UDP sockets, DCCP sockets, RAW sockets, Unix domain sockets等等統(tǒng)計. 它比其他工具展示等多tcp和state信息. 它是一個非常實用、快速、有效的跟蹤IP連接和sockets的新工具.SS命令可以提供如下信息:

所有的TCP sockets

所有的UDP sockets

所有ssh/ftp/ttp/https持久連接

所有連接到Xserver的本地進程

使用state(例如:connected, synchronized, SYN-RECV, SYN-SENT,TIME-WAIT)、地址、端口過濾

所有的state FIN-WAIT-1 tcpsocket連接以及更多

很多流行的Linux發(fā)行版都支持ss以及很多監(jiān)控工具使用ss命令.熟悉這個工具有助于您更好的發(fā)現(xiàn)與解決系統(tǒng)性能問題.本人強烈建議使用ss命令替代netstat部分命令,例如netsat -ant/lnt等.

展示他之前來做個對比,統(tǒng)計服務(wù)器并發(fā)連接數(shù)

netstat# time netstat -ant | grep EST | wc -l3100 real 0m12.960suser 0m0.334ssys 0m12.561s# time ss -o state established | wc -l3204 real 0m0.030suser 0m0.005ssys 0m0.026s

結(jié)果很明顯ss統(tǒng)計并發(fā)連接數(shù)效率完勝netstat,在ss能搞定的情況下, 你還會在選擇netstat嗎, 還在猶豫嗎, 看以下例子,或者跳轉(zhuǎn)到幫助頁面.

常用ss命令:

ss -l 顯示本地打開的所有端口ss -pl 顯示每個進程具體打開的socketss -t -a 顯示所有tcp socketss -u -a 顯示所有的UDP Socektss -o state established '( dport = :smtp or sport = :smtp )' 顯示所有已建立的SMTP連接ss -o state established '( dport = :http or sport = :http )' 顯示所有已建立的HTTP連接ss -x src /tmp/.X11-unix/* 找出所有連接X服務(wù)器的進程ss -s 列出當前socket詳細信息:

顯示sockets簡要信息,列出當前已經(jīng)連接,關(guān)閉,等待的tcp連接

# ss -sTotal: 3519 (kernel 3691)TCP: 26557 (estab 3163, closed 23182, orphaned 194, synrecv 0, timewait 23182/0), ports 1452 Transport Total IP IPv6* 3691 - -RAW 2 2 0UDP 10 7 3TCP 3375 3368 7INET 3387 3377 10FRAG 0 0 0

列出當前監(jiān)聽端口

# ss -lRecv-Q Send-Q Local Address:Port Peer Address:Port0 10 :::5989 :::*0 5 *:rsync *:*0 128 :::sunrpc :::*0 128 *:sunrpc *:*0 511 *:http *:*0 128 :::ssh :::*0 128 *:ssh *:*0 128 :::35766 :::*0 128 127.0.0.1:ipp *:*0 128 ::1:ipp :::*0 100 ::1:smtp :::*0 100 127.0.0.1:smtp *:*0 511 *:https *:*0 100 :::1311 :::*0 5 *:5666 *:*0 128 *:3044 *:*

ss列出每個進程名及其監(jiān)聽的端口

# ss -pl

ss列所有的tcp sockets

# ss -t -a

ss列出所有udp sockets

# ss -u -a

ss列出所有http連接中的連接

# ss -o state established '( dport = :http or sport = :http )'

·以上包含對外提供的80,以及訪問外部的80

·用以上命令完美的替代netstat獲取http并發(fā)連接數(shù),監(jiān)控中常用到

ss列出本地哪個進程連接到x server

# ss -x src /tmp/.X11-unix/*

ss列出處在FIN-WAIT-1狀態(tài)的http、https連接

# ss -o state fin-wait-1 '( sport = :http or sport = :https )'

ss常用的state狀態(tài):

establishedsyn-sentsyn-recvfin-wait-1fin-wait-2time-waitclosedclose-waitlast-acklistenclosingall : All of the above statesconnected : All the states except for listen and closedsynchronized : All the connected states except for syn-sentbucket : Show states, which are maintained as minisockets, i.e. time-wait and syn-recv.big : Opposite to bucket state.

ss使用IP地址篩選

ss src ADDRESS_PATTERNsrc:表示來源ADDRESS_PATTERN:表示地址規(guī)則如下:ss src 120.33.31.1 # 列出來之20.33.31.1的連接 #列出來至120.33.31.1,80端口的連接ss src 120.33.31.1:httpss src 120.33.31.1:8

ss使用端口篩選

ss dport OP PORTOP:是運算符PORT:表示端口dport:表示過濾目標端口、相反的有sport

OP運算符如下:

<= or le : 小于等于 >= or ge : 大于等于== or eq : 等于!= or ne : 不等于端口< or lt : 小于這個端口 > or gt : 大于端口

OP實例

ss sport = :http 也可以是 ss sport = :80ss dport = :httpss dport > :1024ss sport > :1024ss sport < :32000ss sport eq :22ss dport != :22ss state connected sport = :httpss ( sport = :http or sport = :https )ss -o state fin-wait-1 ( sport = :http or sport = :https ) dst 192.168.1/24

為什么ss比netstat快:

netstat是遍歷/proc下面每個PID目錄,ss直接讀/proc/net下面的統(tǒng)計信息。所以ss執(zhí)行的時候消耗資源以及消耗的時間都比netstat少很多

ss命令幫助

# ss -hUsage: ss [ OPTIONS ] ss [ OPTIONS ] [ FILTER ] -h, --help this message -V, --version output version information -n, --numeric don't resolve service names -r, --resolve resolve host names -a, --all display all sockets -l, --listening display listening sockets -o, --options show timer information -e, --extended show detailed socket information -m, --memory show socket memory usage -p, --processes show process using socket-i,--infoshowinternalTCPinformation-s,--summaryshowsocketusagesummary -4, --ipv4 display only IP version 4 sockets -6, --ipv6 display only IP version 6 sockets -0, --packet display PACKET sockets -t, --tcp display only TCP sockets -u, --udp display only UDP sockets -d, --dccp display only DCCP sockets -w, --raw display only RAW sockets -x, --unix display only Unix domain sockets-f,--family=FAMILYdisplaysocketsoftypeFAMILY -A, --query=QUERY, --socket=QUERYQUERY:={all|inet|tcp|udp|raw|unix|packet|netlink}[,QUERY] -D, --diag=FILE Dump raw information about TCP sockets to FILE -F, --filter=FILE read filter information from FILE FILTER := [ state TCP-STATE ] [ EXPRESSION ]

責任編輯:lq

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • Linux
    +關(guān)注

    關(guān)注

    87

    文章

    11304

    瀏覽量

    209535
  • 服務(wù)器
    +關(guān)注

    關(guān)注

    12

    文章

    9165

    瀏覽量

    85436
  • TCP
    TCP
    +關(guān)注

    關(guān)注

    8

    文章

    1353

    瀏覽量

    79078

原文標題:Linux 網(wǎng)絡(luò)狀態(tài)工具 ss 命令使用詳解

文章出處:【微信號:LinuxHub,微信公眾號:Linux愛好者】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    Linux grep命令詳解

    Linux grep命令是一種非常常用的文本搜索工具,它可以在給定的文件中搜索匹配的字符串,并輸出匹配的行。grep是全稱“global search regular expression print”,可以識別正則表達式,并使
    的頭像 發(fā)表于 12-25 09:39 ?87次閱讀

    盤點Linux系統(tǒng)中的常見命令

    作為運維同學怎能不知道Linux系統(tǒng)中的lsmod、lsof、lspci、lsscsi命令呢,今天就來盤一盤她及實例。
    的頭像 發(fā)表于 12-03 09:48 ?250次閱讀
    盤點<b class='flag-5'>Linux</b>系統(tǒng)中的常見<b class='flag-5'>命令</b>

    Kali Linux常用工具介紹

    的使用教程: ** 建議您在搜索引擎上輸入相關(guān)關(guān)鍵詞,例如: "Kali Linux 工具名 中文教程",這樣可以找到一些比較新的教程,同時您也可以參考官方文檔或官方社區(qū)里跟相應工具相關(guān)的討論。 1)信息收集
    的頭像 發(fā)表于 11-11 09:29 ?508次閱讀

    Linux系統(tǒng)中shell命令解析

    shell是Linux系統(tǒng)的用戶界面,提供了用戶與內(nèi)核交互的一種接口,它接收用戶輸入的命令并到送到內(nèi)核去執(zhí)行,因此也被稱為Linux命令解釋器。
    的頭像 發(fā)表于 11-05 15:40 ?268次閱讀

    詳解kubectl常用命令

    詳解kubectl常用命令
    的頭像 發(fā)表于 11-05 15:39 ?242次閱讀
    <b class='flag-5'>詳解</b>kubectl常用<b class='flag-5'>命令</b>

    Linux實用命令大全

    Linux實用命令大全
    的頭像 發(fā)表于 10-23 13:50 ?231次閱讀
    <b class='flag-5'>Linux</b>實用<b class='flag-5'>命令</b>大全

    Linux lsof命令的基本用法

    linux 系統(tǒng)中,一切皆文件。通過文件不僅僅可以訪問常規(guī)數(shù)據(jù),還可以訪問網(wǎng)絡(luò)連接和硬件。所以 lsof 命令不僅可以查看進程打開的文件、目錄,還可以查看進程監(jiān)聽的端口等 socket 相關(guān)的信息。本文將介紹 lsof
    的頭像 發(fā)表于 10-23 11:52 ?266次閱讀
    <b class='flag-5'>Linux</b> lsof<b class='flag-5'>命令</b>的基本用法

    Linux中cut命令的實用示例

    Linux command cut 用于文本處理。您可以使用此命令通過選擇列從文件中提取部分文本。
    的頭像 發(fā)表于 08-05 15:14 ?322次閱讀

    util-linux修復WallEscape漏洞,影響Linux系統(tǒng)wall命令使用

    WallEscape 主要影響“wall”命令操作,Linux 系統(tǒng)中的常規(guī)下,該指令被用作向系統(tǒng)所有登錄用戶的終端發(fā)布消息。然而在處理命令行參數(shù)輸入時,過濾器未正確識別和過濾轉(zhuǎn)義序列
    的頭像 發(fā)表于 03-29 14:35 ?987次閱讀

    Linux常用網(wǎng)絡(luò)命令介紹

    默認使用該命令會一直發(fā)送ICMP包直到用戶手動中止,可以使用-c命令指定發(fā)送數(shù)據(jù)包的個數(shù),使用-W指定最長等待時間,如果有多張網(wǎng)卡,還可以通過-I指定發(fā)送包的網(wǎng)卡。
    發(fā)表于 03-25 14:45 ?471次閱讀
    <b class='flag-5'>Linux</b>常用<b class='flag-5'>網(wǎng)絡(luò)</b><b class='flag-5'>命令</b>介紹

    linux命令概述

    電子發(fā)燒友網(wǎng)站提供《linux命令概述.pdf》資料免費下載
    發(fā)表于 03-11 09:18 ?3次下載

    Linux常用命令自學手冊》工具書永遠是常備的秘籍

    。《Linux常用命令自學手冊》就是其中的一本工具書,它以清晰、簡潔的方式,將復雜的命令行知識呈現(xiàn)給讀者,為Linux新手和老手都提供了寶貴
    發(fā)表于 01-29 19:42

    Linux上如何通過命令行來更改日期和時間?

    Linux上如何通過命令行來更改日期和時間? 在Linux上,我們可以使用命令工具來更改日期和時間。操作系統(tǒng)中有一個專門的
    的頭像 發(fā)表于 01-16 17:10 ?2836次閱讀

    Linux查看IO狀態(tài)的常用命令都有哪些呢?

    介紹下Linux的3個常用I/O相關(guān)命令,解決I/O壓力過大問題時用iostat,查看磁盤的I/O狀態(tài)用iotop,查看I/O進程排名用lsof
    的頭像 發(fā)表于 01-16 09:28 ?5384次閱讀

    Linux基本命令總結(jié)

    都說Linux命令多,實際工作中我們又有多少命令會接觸用到呢?本文跟大家分享Linux運維工作中常用的600個命令,可以說這些
    的頭像 發(fā)表于 01-11 10:32 ?973次閱讀