【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
相关推荐
云空7 分钟前
《DeepSeek 网页/API 性能异常(DeepSeek Web/API Degraded Performance):网络安全日志》
运维·人工智能·web安全·网络安全·开源·网络攻击模型·安全威胁分析
深度Linux11 分钟前
Linux网络编程中的零拷贝:提升性能的秘密武器
linux·linux内核·零拷贝技术
没有名字的小羊1 小时前
Cyber Security 101-Build Your Cyber Security Career-Security Principles(安全原则)
运维·网络·安全
m0_465215791 小时前
TCP & UDP Service Model
服务器·网络·tcp/ip
千夜啊1 小时前
Nginx 运维开发高频面试题详解
运维·nginx·运维开发
存储服务专家StorageExpert2 小时前
答疑解惑:如何监控EMC unity存储系统磁盘重构rebuild进度
运维·unity·存储维护·emc存储
chian-ocean4 小时前
从理论到实践:Linux 进程替换与 exec 系列函数
linux·运维·服务器
拎得清n4 小时前
UDP编程
linux
敖行客 Allthinker4 小时前
从 UTC 日期时间字符串获取 Unix 时间戳:C 和 C++ 中的挑战与解决方案
linux·运维·服务器·c++
JunLan~5 小时前
Docker 部署 GLPI(IT 资产管理软件系统)
运维·docker·容器