Linux网络-ss命令

作者介绍:简历上没有一个精通的运维工程师。希望大家多多关注我,我尽量把自己会的都分享给大家,下面的思维导图也是预计更新的内容和当前进度(不定时更新)。

Linux服务器作为一个常用的网络服务器,主要的作用就是向客户端提供网络服务,所以我们需要熟练掌握网络相关的命令,用于探测对端网络是否畅通,用于检查本地网络进程是否正常,以及可以通过命令去远端服务器进行下载文件,或者请求对方接口。

主要从以下几个方面来介绍:

1.给Linux服务器配置IP

2.探测对方网络连通性(ping & telnet)

3.下载对方文件(wget)

4.请求对方服务器(curl)

5.检查本地服务状态(netstat)

6.检查本地服务状态(ss)本章节

7.网络小结

上一章我们说过,命令netstat在大量网络连接的时候,是有性能问题的,当然一般的情况下还是比较难遇到的问题的,所以有替代方案就是ss命令,这2个命令在使用上,基本大体差不多,看个人习惯。

SS

ss命令是 netstat 命令的替代品,它提供了与 netstat 类似的功能,但性能更优,输出更详细。ss 命令的基本语法如下:

复制代码
ss [options]

下面是一些常用的 ss 选项及其作用:

  1. 查看活动连接

    • -a: 显示所有连接和监听端口

    • -t: 仅显示 TCP 协议的连接

    • -u: 仅显示 UDP 协议的连接

    • -x: 仅显示 UNIX 域套接字连接

  2. 查看监听端口

    • -l: 仅显示正在监听的连接
  3. 查看进程信息

    • -p: 显示与每个连接相关的进程 ID 和进程名称
  4. 查看统计信息

    • -s: 显示各种协议的统计信息
  5. 查看套接字选项

    • -o: 显示套接字选项
  6. 输出格式控制

    • -n: 以数字形式显示地址和端口

    • -r: 以更易读的格式显示输出

  7. 其他选项

    • -i: 显示网络接口信息

    • -e: 显示扩展信息

比如,如果您想查看系统上所有的 TCP 连接,可以使用:

复制代码
ss -antp

这将显示所有活动的 TCP 连接,包括远程地址、本地地址、状态和相关进程信息。

如果您想查看某个进程正在使用的网络连接,可以使用:

复制代码
ss -antp | grep 12345

这将只显示与进程 ID 为 12345 的进程相关的网络连接。

与 netstat 相比,ss 命令的优势在于:

  1. 更快的执行速度,特别是在连接数量非常大的情况下。

  2. 输出更加详细和丰富,包括更多的连接信息和统计数据(信息也就更多,看起来也相对麻烦)。

  3. 支持更多的过滤和查询选项,可以更精确地定位问题。大部分问题其实也不需要用到那么多选项。

关注微信公众号《运维小路》获取更多内容。

相关推荐
冰封之寂5 小时前
Docker 资源管理终极指南:CPU、内存与 IO 的精细化控制
linux·运维·服务器·docker·云计算
xiaoye-duck5 小时前
《Linux系统编程》Linux 系统多线程(五):<线程同步与互斥>线程互斥(上):从条件变量到生产者消费者模型详解
linux·线程
小柯南敲键盘6 小时前
图片翻译API接入与自动化实现指南
运维·python·自动化
云计算磊哥@7 小时前
运维开发宝典058-大型网站nginx服务器管理全集4
服务器·nginx·运维开发
952367 小时前
Docker - 基础
运维·后端·docker·容器
Promise微笑7 小时前
智能激光清障仪选型指南:高效运维与安全保障的关键考量
运维·安全
Code_Ignis7 小时前
docker国内可用源(持续维护)
运维·docker·容器
一叶龙洲7 小时前
向日葵远程Ubuntu,支持隐私屏
linux·运维·ubuntu
酷可达拉斯8 小时前
Linux操作系统-shell编程之Grep与正则表达式
linux·运维·服务器·正则表达式·centos
寒水馨8 小时前
Linux下载、安装llama.cpp-b10068(附安装包llama-b10068-bin-ubuntu-vulkan-x64.tar.gz)
linux·ubuntu·llm·llama·本地部署·llama.cpp·推理引擎