linux如何查看tcpudp
linux如何查看tcpudp详细介绍
在 Linux 系统中,可以使用以下常用命令查看 TCP 和 UDP 连接及相关信息:
1.
netstat 命令(经典工具)
netstat 用于显示网络连接、路由表、网络接口统计等信息。
查看 TCP 连接:
bash
-t:显示 TCP 连接-u:显示 UDP 连接-l:仅显示处于监听状态的连接-n:以数字形式显示 IP 和端口(避免反向解析主机名)-p:显示对应的进程和进程号(需 root 权限)
常用选项组合:
- 所有 TCP 连接:
netstat -atn - 所有 UDP 连接:
netstat -aun - 监听中的 TCP/UDP 端口:
netstat -tuln(常用)
2.
ss 命令(更高效的现代工具)
ss(socket statistics)是新一代网络统计工具,比 netstat 更高效,功能更强大。
查看 TCP/UDP 连接:
bash
ss
选项与 netstat 类似,但输出更简洁:
-t:TCP 连接-u:UDP 连接-l:监听状态-n:数字形式显示端口-p:显示进程信息(需 root 权限)
其他常用选项:
- 所有 TCP 连接:
ss -atn - 所有 UDP 连接:
ss -aun
3.
lsof 命令(列出打开的文件和网络连接)
lsof 可以列出所有打开的文件和网络连接,包括 TCP/UDP 端口对应的进程。
查看 TCP/UDP 端口占用:
bash
:端口号tcp
udp
-i:指定网络相关的文件(即网络连接)- 可结合端口号或协议(
tcp/udp)过滤。
4.
按进程或端口筛选
如果需要查看特定端口(如 TCP 80 或 UDP 53)的状态:
bash
:80
ss :80
:53
命令对比:
| 命令 | 优势 | 适用场景 |
|---|---|---|
netstat |
兼容性强(老系统常用) | 快速查看基础网络连接信息 |
ss |
性能更好,输出更简洁 | 高效查询网络状态 |
lsof |
可关联进程信息 | 排查端口占用的具体进程 |
根据需求选择合适的工具即可。日常排查网络连接时,ss -tuln 和 netstat -tuln 是最常用的命令。