查看监听端口的命令

查看监听端口的命令以下:socket

netstat、lsof、sstcp

lsof命令:ui

一、lsof -i:80  #显示全部打开80端口的进程unix

二、netstat进程

netstat参数以下:ip

-a (all)显示全部选项,默认不显示LISTEN相关
-t (tcp)仅显示tcp相关选项
-u (udp)仅显示udp相关选项
-n 拒绝显示别名,能显示数字的所有转化成数字。
-l 仅列出有在 Listen (监听) 的服務状态内存

-p 显示创建相关连接的程序名
-r 显示路由信息,路由表
-e 显示扩展信息,例如uid等
-s 按各个协议进行统计
-c 每隔一个固定时间,执行该netstat命令。资源

netstat -lnpt | grep -w 80 #显示TCP相关的监听80端口的状态路由

三、ssio

ss参数以下:

-h, --help帮助信息

-V, --version程序版本信息

-n, --numeric不解析服务名称

-r, --resolve        解析主机名

-a, --all显示全部套接字(sockets)

-l, --listening显示监听状态的套接字(sockets)

-o, --options        显示计时器信息

-e, --extended       显示详细的套接字(sockets)信息

-m, --memory         显示套接字(socket)的内存使用状况

-p, --processes显示使用套接字(socket)的进程

-i, --info显示 TCP内部信息

-s, --summary显示套接字(socket)使用概况

-4, --ipv4           仅显示IPv4的套接字(sockets)

-6, --ipv6           仅显示IPv6的套接字(sockets)

-0, --packet        显示 PACKET 套接字(socket)

-t, --tcp仅显示 TCP套接字(sockets)

-u, --udp仅显示 UCP套接字(sockets)

-d, --dccp仅显示 DCCP套接字(sockets)

-w, --raw仅显示 RAW套接字(sockets)

-x, --unix仅显示 Unix套接字(sockets)

-f, --family=FAMILY  显示 FAMILY类型的套接字(sockets),FAMILY可选,支持  unix, inet, inet6, link, netlink

-A, --query=QUERY, --socket=QUERY

      QUERY := {all|inet|tcp|udp|raw|unix|packet|netlink}[,QUERY]

-D, --diag=FILE     将原始TCP套接字(sockets)信息转储到文件

 -F, --filter=FILE   从文件中都去过滤器信息

       FILTER := [ state TCP-STATE ] [ EXPRESSION ]

ss -ltn | grep -w 80 #显示TCP相关的监听80端口的状态

三者虽然达到的目的相同,可是速度区别却很大:

比较一下速度,ss命令远远快于其余两个命令。

netstat是遍历/proc下面每一个PID目录,ss直接读/proc/net下面的统计信息。因此ss执行的时候消耗资源以及消耗的时间都比netstat少不少

相关文章
相关标签/搜索