首页 > 系统 > Linux > 正文

Linux中使用ss命令检查网络连接的方法

2020-07-10 11:24:23
字体:
来源:转载
供稿:网友

ss是iproute2包的一部分(控制TCP/IP网络和流量的工具)。iproute2的目标是替代先前用于配置网络接口、路由表和管理ARP表的标准Unix网络工具套装(通常称之为“net-tools”)。ss工具用于导出套接字统计,它可以显示与netstat类似的信息,且可以显示更多的TCP和状态信息。因为它直接从内核空间获取信息,所以会更快。ss的操作和netstat很像,所以这让它可以很容易就可以取代netstat。
使用和常见选项

ss和netstat很像,默认它会显示已经建立连接的开放的非监听TCP套接字列表。并且你可以用下面的选项过滤输出:

  •     -n - 不要尝试解析服务名。
        -r - 尝试解析数字的地址/端口。
        -a - 显示所有套接字。
        -l - 显示监听套接字。
        -p - 显示使用该套接字的进程。
        -s - 打印统计数据
        -t - 只显示TCP套接字。
        -u - 只显示UDP套接字。
        -d - 只显示DCCP套接字
        -w - 只显示RAW套接字。
        -x - 只显示Unix域套接字
        -f FAMILY - 显示FAMILY套接字的类型。目前支持下面这些族:unix、inet、inet6、link、netlink。
        -A QUERY - 指定要列出的套接字列表,通过逗号分隔。可以识别下面的标识符:all、inet、tcp、udp、raw、unix、packet、netlink、unixdgram、unixstream、packetraw、packetdgram。
        -o STATUS - 列出指定状态的套接字

ss 命令示例

1. 显示所有的的TCP端口和使用它们的进程:

   

复制代码
代码如下:
# ss -tnap

    2015616153726504.jpg (800×210)

    2. 你可以使用-4 标志来显示IPv4链接,-6标志来显示IPv6链接,比如:

   

复制代码
代码如下:
# ss -tnap6

2015616153747431.jpg (800×140)

    3. 跟上面的行为一样,你只需用u代替t就会显示所有开放的UDP端口。

   

复制代码
代码如下:
# ss -unap

2015616153809363.jpg (800×348)

    4. 你可以使用-s标志来打印各种有用的统计数据:

   

复制代码
代码如下:
# ss -s

2015616153828816.jpg (800×232)

    5. 你可以使用-o标志来检查所有不同状态下的链接,比如显示所有已经建立的连接。

   

复制代码
代码如下:
# ss -tn -o state established -p

  2015616153850663.jpg (800×277)

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表