推荐优先使用ss工具查看网络端口,因其基于netlink接口,比依赖/proc/net的netstat更快更高效;ss支持灵活过滤语法,适合高并发环境,而netstat因兼容性仍被使用但逐渐被取代。

在Linux系统中,管理网络端口是日常运维的重要任务之一。通过查看开放的端口、连接状态和服务监听情况,可以快速排查网络问题、诊断服务异常或识别潜在的安全风险。常用的两个工具是 netstat 和 ss,它们都能显示套接字(socket)信息,但各有特点。
netstat(network statistics)是一个传统的命令行工具,用于显示网络连接、路由表、接口统计等信息。尽管在较新的系统中逐渐被 ss 取代,但因其广泛兼容性仍被普遍使用。
常用选项:netstat -tuln:列出当前正在监听的 TCP 和 UDP 端口-t 显示 TCP 连接-u 显示 UDP 连接-l 仅显示监听中的服务-n 以数字形式显示地址和端口号(不解析主机名或服务名)netstat -anp | grep :80:查找与80端口相关的所有连接及其进程其中 -p 参数可显示关联的进程ID和程序名,但需要 root 权限才能看到所有进程。
ss(Socket Statistics)是较新的工具,设计用于取代 netstat。它直接从内核获取信息,因此速度更快、资源占用更低,尤其适合高并发环境。
常见用法:ss -tuln:与 netstat -tuln 功能相同,列出监听的 TCP/UDP 端口ss -tnlp:显示 TCP 监听端口及对应进程(需权限)ss -s:简要统计当前套接字使用情况ss -o:显示 TCP 连接的计时器信息(如重传时间)ss dst 192.168.1.100:过滤目标地址为指定 IP 的连接ss 支持更灵活的过滤语法,例如使用表达式筛选特定状态的连接:ss '( dport = :80 or dport = :443 )' 查看目的端口为80或443的连接。
虽然两者功能相似,但推荐优先使用 ss,特别是在性能敏感或生产环境中。netstat 依赖过时的 /proc/net 文件系统接口,而 ss 使用更底层的 netlink 接口,响应更快,输出更精确。
若系统中没有安装 netstat,可能是因为所属的 net-tools 包未默认安装(如某些精简版 CentOS 或 Ubuntu)。可通过以下命令安装:
sudo apt install net-tools
sudo yum install net-tools 或 sudo dnf install net-tools
ss 则包含在 iproute2 软件包中,现代发行版通常已预装。
基本上就这些。掌握 netstat 和 ss 的基本用法,能帮助你快速了解系统网络状态,定位服务是否正常监听、是否有异常连接等问题。日常建议多用 ss,熟悉其语法后效率更高。以上就是Linux如何管理系统网络端口_Linuxnetstat与ss使用的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号