【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
相关推荐
张文君10 分钟前
Ubuntu iSCSI CHAP认证与Win11挂载
linux·运维·ubuntu
一直C13 分钟前
嵌入式 Linux 驱动开发学习笔记:中断、等待队列与工作队列
linux·驱动开发·嵌入式硬件·学习·imx6ull
程序员-Benothing19 分钟前
Linux防火墙配置教程:iptables、firewalld、nftables、ufw
linux·运维·服务器
齐鲁大虾28 分钟前
如何通过 CUPS Web 界面(http://localhost:631)安装打印机驱动
linux
Black蜡笔小新30 分钟前
中央厨房配餐看不见风险高?EasyCVR可视化监管方案设计
运维·安全·easycvr
木雷坞31 分钟前
Docker Compose端口映射排查:用port和inspect定位网页访问失败
运维·docker·容器
yunwei3734 分钟前
eBPF 实例教程:使用内核跟踪点监控 GPU 驱动活动
linux·后端·性能优化
龙亘川35 分钟前
电子印章安全审计管理业务建模:从证书密钥、安全策略到审计预警的全链路闭环
运维·人工智能·安全·智慧城市·开源软件·数据可视化
AlfredZhao2 小时前
用脚本按顺序执行初始化 DB 的 SQL 文件
linux
瑞克-桑切斯2 小时前
企业生产环境:https部署+nginx高可用(业务不中断)
linux·服务器·数据库