liunx-netstat&ps

发布时间 2023-03-29 09:19:15作者: P_sara

本篇包以下命令

netstat ps ...

netstat


基本信息

  • 命令名称:netstat
  • 英文原意:Print network connections, routing tables, interface statistics, masquerade connections, and multicast memberships
  • 所在路径:/bin/netstat
  • 执行权限:所有用户
  • 功能描述:输出网络连接、路由表、接口统计、伪装连接和组播成员

常用参数:

参数:

-a:all,列出所有网络状态,包括 Socket 程序;
-c:count,秒数指定每隔几秒刷新一次网络状态;
-n:network,使用 IP 地址和端口号显示,不使用域名与服务名;
-p:process,显示 PID 和程序名;
-t:tcp,显示使用 TCP 协议端口的连接状况;
-u:udp,显示使用 UDP 协议端口的连接状况;
-I:listen,仅显示监听状态的连接;
-r:router,显示路由表;

常用组合

  • netstat -anulp --直接使用ip地址列出所有处理监听状态的TCP端口,且加上程序名

netstat-anulp

  • Proto:协议名(tcp协议还是udp协议);

  • recv-Q:网络接收队列(表示收到的数据已经在本地接收缓冲,但是还有多少没有被进程取走,recv()如果接收队列Recv-Q一直处于阻塞状态,可能是遭受了拒绝服务 denial-of-service 攻击;)

  • send-Q:网路发送队列(对方没有收到的数据或者说没有Ack的,还是本地缓冲区.)

  如果发送队列Send-Q不能很快的清零,可能是有应用向外发送数据包过快,或者是对方接收数据包不够快;

    这两个值通常应该为0,如果不为0可能是有问题的。packets在两个队列里都不应该有堆积状态。可接受短暂的非0情况。


Local Address 解释

Local Address 部分的0.0.0.0:873表示监听服务器上所有ip地址的所有(0.0.0.0表示本地所有ip),比如你的服务器是有172.172.230.210和172.172.230.11两个ip地址,那么0.0.0.0:873此时表示监听172.172.230.210,172.172.230.211,127.0.0.1三个地址的873端口。
127.0.0.1:25这个表示监听本机的loopback地址的25端口(如果某个服务只监听了回环地址,那么只能在本机进行访问,无法通过tcp/ip 协议进行远程访问)
192.168.1.81:2288这是因为我们在启动的时候指定了192.168.1.81:2288参数,如果不指定的话,会监听0.0.0.0:2288

Foreign Address解释

与本机端口通信的外部socket。显示规则与Local Address相同

ps


基本信息

  • 命令名称:ps
  • 英文原意:postscript
  • 所在路径:/bin/ps
  • 执行权限:所有用户
  • 功能描述:查看系统中所有运行进程的详细信息

常用参数:

参数:

-a:显示一个终端的所有进程,除会话引线外;
-u:显示进程的归属用户及内存的使用情况;
-x:显示没有控制终端的进程;
-l:长格式显示更加详细的信息;
-e:显示所有进程;

常用组合

  • ps aux 可以查看系统中所有的进程;
  • ps -le 可以查看系统中所有的进程,而且还能看到进程的父进程的 PID 和进程优先级;
  • ps -l 只能看到当前 Shell 产生的进程;
  • ps -ef -e:等价于 ‘-A’ ,表示列出全部的进程;-f:显示全部的列(显示全字段)

ps -aux