linux查看网络端口状态命令
linux查看网络端口状态命令详细介绍
在 Linux 中,查看网络端口状态可通过以下命令实现,附常用场景和示例:
1.
ss(推荐,高效替代 netstat)
用途:查看套接字统计,支持更复杂的过滤,性能更优。
常用命令:
bash
ss
ss
ss state established
2.
netstat(经典工具,部分系统需安装)
用途:老牌端口查看工具,输出更直观。
常用命令:
bash
3.
lsof(通过文件描述符查看端口)
用途:直接关联端口和进程,适合排查端口占用。
常用命令:
bash
:3306
LISTEN
4.
netcat/nc(简单端口探测)
用途:测试端口是否可达(客户端视角)。
常用命令:
bash
.0.1
www.baidu.com
场景总结
| 场景 | 推荐命令 | 示例 | |
|---|---|---|---|
| 查看所有监听端口 | ss -lntp 或 netstat -tulnp |
ss -lntp |
|
| 排查端口被谁占用 | lsof -i :端口号 |
lsof -i :8080 |
|
| 测试端口连通性 | nc -z 主机 端口 |
nc -z 192.168.1.1 22 |
|
| 查看连接状态统计 | ss -ant 或 netstat -ant |
`ss -ant | grep ESTAB` |
注意事项
- 权限:部分命令(如查看进程名、非特权端口)需
sudo。 - 工具安装:
ss内置(新系统),netstat需安装net-tools,lsof需单独安装。 - 状态缩写:
LISTEN(监听)、ESTAB(已连接)、TIME_WAIT(连接关闭中)。
根据需求选择合适工具,ss 和 lsof 是日常运维的高效组合。