侧边栏壁纸
博主头像
张种恩的技术小栈博主等级

行动起来,活在当下

  • 累计撰写 748 篇文章
  • 累计创建 65 个标签
  • 累计收到 39 条评论

目 录CONTENT

文章目录

Linux基础(43)之网络状态查看工具ss命令

zze
zze
2019-12-05 / 0 评论 / 0 点赞 / 544 阅读 / 1608 字

不定期更新相关视频,抖音点击左上角加号后扫一扫右方侧边栏二维码关注我~正在更新《Shell其实很简单》系列

ss 命令是一个网络状态查看工具,类似与前面提到的 netstat 的作用。只是当主机上存在非常多的连接时,ss 命令的速度可能是 netstat 命令的好几倍,即 ss 命令的效率更高。
ss 命令的使用格式如下:

ss [options] [ FILTER ]
    options:常用选项
        -t:tcp 协议相关;
        -u:udp 协议相关;
        -w:裸套接字相关;
        -x:unix socket 相关;
        -l:listen 状态的连接;
        -a:所有;
        -n:数字格式;
        -p:相关程序及 PID;
        -e:扩展的信息;
        -m:内存用量;
        -o:显示计时器信息;
    FILTER:用来指定过滤条件;
        [ state TCP-STATE ] [ EXPRESSION ]:
            state:指定 tcp 连接有限状态机的状态,如 established;
            EXPRESSION:
                dport = :<PORT>:指定源端口;
                sport = :<PORT>:指定目标端口;
                src <addr>:匹配本地地址;
                dst <sddr>:匹配远程地址;

TCP 的有限状态机(tcp finite state machine)指的是 TCP 的状态一定是在几个状态间转换,常见状态有如下:

  • LISTEN:监听;
  • ESTABALISHED:已建立、正在通信中的连接;
  • SYN_SENT:三次握手的第一次;
  • SYN_RECV:对方收到信息;
  • CLOSEED:断开、已关闭;

例 1:显示所有 tcp 连接。

[root@zze ~]# ss -ta

例 2:列出所有处于监听状态的连接。

[root@zze ~]# ss -ta

例 3:显示所有状态为 established 的 HTTP 连接。

[root@zze ~]# ss -o state established '( dport = :http or sport = :http )'

例 4:列举出处于 FIN-WAIT-1 状态的源端口为 80 或者 443,目标网络为 193.233.7/24 所有 tcp 套接字。

[root@zze ~]# ss -o state fin-wait-1 '( sport = :http or sport = :https )' dst 193.233.7/24
0

评论区