作者介绍:简历上没有一个精通的运维工程师。希望大家多多关注我,我尽量把自己会的都分享给大家,下面的思维导图也是预计更新的内容和当前进度(不定时更新)。
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 选项及其作用:
-
查看活动连接
-
-a
: 显示所有连接和监听端口 -
-t
: 仅显示 TCP 协议的连接 -
-u
: 仅显示 UDP 协议的连接 -
-x
: 仅显示 UNIX 域套接字连接
-
-
查看监听端口
-l
: 仅显示正在监听的连接
-
查看进程信息
-p
: 显示与每个连接相关的进程 ID 和进程名称
-
查看统计信息
-s
: 显示各种协议的统计信息
-
查看套接字选项
-o
: 显示套接字选项
-
输出格式控制
-
-n
: 以数字形式显示地址和端口 -
-r
: 以更易读的格式显示输出
-
-
其他选项
-
-i
: 显示网络接口信息 -
-e
: 显示扩展信息
-
比如,如果您想查看系统上所有的 TCP 连接,可以使用:
ss -antp
这将显示所有活动的 TCP 连接,包括远程地址、本地地址、状态和相关进程信息。
如果您想查看某个进程正在使用的网络连接,可以使用:
ss -antp | grep 12345
这将只显示与进程 ID 为 12345 的进程相关的网络连接。
与 netstat 相比,ss 命令的优势在于:
-
更快的执行速度,特别是在连接数量非常大的情况下。
-
输出更加详细和丰富,包括更多的连接信息和统计数据(信息也就更多,看起来也相对麻烦)。
-
支持更多的过滤和查询选项,可以更精确地定位问题。大部分问题其实也不需要用到那么多选项。
关注微信公众号《运维小路》获取更多内容。