Linux中的netstat命令使用教程
从整体上看,netstat的输出结果可以分为两个部分:
一个是active internet connections,称为有源tcp连接,其中"recv-q"和"send-q"指%0a的是接收队列和发送队列。这些数字一般都应该是0。如果不是则表示软件包正在队列中堆积。这种情况只能在非常少的情况见到。
另一个是active unix domain sockets,称为有源unix域套接口(和网络套接字一样,但是只能用于本机通信,性能可以提高一倍)。
proto显示连接使用的协议,refcnt表示连接到本套接口上的进程号,types显示套接口的类型,state显示套接口当前的状态,path表示连接到套接口的其它进程使用的路径名。
netstat命令用于显示与ip、tcp、udp和icmp协议相关的统计数据,一般用于检验本机各端口的网络连接情况。netstat是在内核中访问网络及相关信息的程序,它能提供tcp连接,tcp和udp监听,进程内存管理的相关报告。
如果你的计算机有时候接收到的数据报导致出错数据或故障,你不必感到奇怪,tcp/ip可以容许这些类型的错误,并能够自动重发数据报。但如果累计的出错情况数目占到所接收的ip数据报相当大的百分比,或者它的数目正迅速增加,那么你就应该使用netstat查一查为什么会出现这些情况了。
1.命令格式:
netstat [-accefghilmnnoprstuvvwx][-a<网络类型>][--ip]
2.命令功能:
netstat用于显示与ip、tcp、udp和icmp协议相关的统计数据,一般用于检验本机各端口的网络连接情况。
3.命令参数:
-a或–all 显示所有连线中的socket。
-a<网络类型>或–<网络类型> 列出该网络类型连线中的相关地址。
-c或–continuous 持续列出网络状态。
-c或–cache 显示路由器配置的快取信息。
-e或–extend 显示网络其他相关信息。
-f或–fib 显示fib。
-g或–groups 显示多重广播功能群组组员名单。
-h或–help 在线帮助。
-i或–interfaces 显示网络界面信息表单。
-l或–listening 显示监控中的服务器的socket。
-m或–masquerade 显示伪装的网络连线。
-n或–numeric 直接使用ip地址,而不通过域名服务器。
-n或–netlink或–symbolic 显示网络硬件外围设备的符号连接名称。
-o或–timers 显示计时器。
-p或–programs 显示正在使用socket的程序识别码和程序名称。
-r或–route 显示routing table。
-s或–statistice 显示网络工作信息统计表。
-t或–tcp 显示tcp传输协议的连线状况。
-u或–udp 显示udp传输协议的连线状况。
-v或–verbose 显示指令执行过程。
-v或–version 显示版本信息。
-w或–raw 显示raw传输协议的连线状况。
-x或–unix 此参数的效果和指定”-a unix”参数相同。
–ip或–inet 此参数的效果和指定”-a inet”参数相同。
4.使用实例:
列出所有的tcp端口(包括监听和未监听的)
列出所有处于监听状态的tcp端口
显示所有端口的统计信息
显示占用某个特定tcp端口的进程的pid
netstat -p 可以与其它开关一起使用,就可以添加“pid/进程名称”到netstat输出中,这样排查问题的适合可以很方便的发现特定端口运行的程序
推荐阅读
-
主机和VMware中的Linux实现共享文件夹的图文教程
-
在Linux中挂载ISO文件的两种方法(mount命令与mount软件)
-
linux中rz、sz命令的安装配置方法
-
Linux中rz命令使用实例分享(批量上传文件、简单易用)
-
VMware Workstation/Fusion 中安装 Fedora 23/24 及其他 Linux 系统时使用 Open VM Tools 代替 VMware Tools 增强工具的方法
-
使用composer命令加载vendor中的第三方类库 的方法
-
Python安装使用命令行交互模块pexpect的基础教程
-
如何运行openSUSE?Win10中安装SUSE Linux子系统的详细图文教程
-
Three.js中矩阵和向量的使用教程
-
linux查看进程命令grep(linux中的grep命令的作用 )