【linux】(18)查看端口占用-netstat

netstat 是一个网络统计工具,用于显示网络连接、路由表、接口统计、伪装连接以及多播成员。

基本用法

sh 复制代码
netstat [OPTION]...

常用选项

  1. 显示所有连接
sh 复制代码
   netstat -a

例子:显示所有活动的连接(包括TCP和UDP)。

  1. 显示监听端口
sh 复制代码
   netstat -l

例子:显示所有监听的端口。

  1. 显示TCP连接
sh 复制代码
   netstat -t

例子:显示所有TCP连接。

  1. 显示UDP连接
sh 复制代码
   netstat -u

例子:显示所有UDP连接。

  1. 显示UNIX套接字
sh 复制代码
   netstat -x

例子:显示所有UNIX套接字。

  1. 显示PID和进程名称
sh 复制代码
   netstat -p

例子:显示每个连接的PID和进程名称(需要超级用户权限)。

  1. 显示网络接口统计信息
sh 复制代码
   netstat -i

例子:显示网络接口的统计信息。

  1. 显示路由表
sh 复制代码
   netstat -r

例子:显示内核路由表。

  1. 按原始格式显示地址
sh 复制代码
netstat -n

例子:不解析主机名、端口和用户,将地址信息直接显示为数字。

  1. 显示多播组信息
sh 复制代码
    netstat -g

例子:显示多播组信息。

组合选项

  1. 显示监听的TCP端口
sh 复制代码
netstat -lt
  1. 显示监听的UDP端口
sh 复制代码
netstat -lu
  1. 显示监听的UNIX端口
sh 复制代码
netstat -lx
  1. 显示详细的TCP连接
sh 复制代码
netstat -at
  1. 显示详细的UDP连接
sh 复制代码
netstat -au
  1. 显示每个连接的PID和进程名称
sh 复制代码
sudo netstat -ap

示例

假设你想要查看当前系统上所有活动的网络连接,可以使用:

sh 复制代码
netstat -a

输出示例:

复制代码
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State
tcp        0      0 0.0.0.0:ssh             0.0.0.0:*               LISTEN
tcp        0      0 localhost:smtp          0.0.0.0:*               LISTEN
tcp        0      0 localhost:ipp           0.0.0.0:*               LISTEN
tcp6       0      0 [::]:ssh                [::]:*                  LISTEN
tcp6       0      0 ip6-localhost:ipp       [::]:*                  LISTEN
udp        0      0 0.0.0.0:bootpc          0.0.0.0:*

高级用法

  1. 显示网络接口的详细信息
sh 复制代码
netstat -ie

例子:显示接口详细信息,包括物理地址和传输速率。

  1. 显示系统未决的网络连接
sh 复制代码
netstat -o

例子:显示未决的网络连接。

  1. 显示TCP/IP统计信息
sh 复制代码
netstat -s

例子:显示各种网络协议的统计信息。

  1. 持续显示网络状态
sh 复制代码
watch netstat -an

例子:每两秒更新一次网络连接状态。

使用 grep 过滤输出

  1. 显示所有监听的TCP端口
sh 复制代码
netstat -tuln | grep LISTEN
  1. 显示特定端口的连接
sh 复制代码
netstat -an | grep ':80'
  1. 显示特定IP地址的连接
sh 复制代码
netstat -an | grep '192.168.1.1'

使用 netstat 查看当前连接状态

  1. 查看本机的所有连接状态
sh 复制代码
netstat -an | awk '/tcp/ {print $6}' | sort | uniq -c | sort -n
  1. 查看所有ESTABLISHED的连接
sh 复制代码
netstat -an | grep ESTABLISHED
相关推荐
EulerBlind1 分钟前
【运维】HuggingFace缓存目录结构详解
运维·深度学习
new_abc27 分钟前
net-snmp添加自定义mib树
服务器·前端·javascript
幻雨様39 分钟前
UE5多人MOBA+GAS 30、技能升级机制
运维·服务器·ue5
love530love2 小时前
Windows 11 下 Anaconda 命令修复指南及常见问题解决
运维·ide·人工智能·windows·python·架构·conda
Joey_Chen2 小时前
【What · Why · How】浅析select/poll/epoll与IO多路复用
linux·服务器
java叶新东老师2 小时前
CMakelists.txt 实现多级目录编译
java·服务器·数据库
(Charon)2 小时前
【C语言网络编程基础】TCP并发网络编程:io多路复用
运维·服务器
“αβ”2 小时前
线程安全的单例模式
linux·服务器·开发语言·c++·单例模式·操作系统·vim
gnawkhhkwang3 小时前
clock_nanosleep系统调用及示例
linux
渡我白衣3 小时前
综合:日志的实现
linux