《坚持每天学习一个 linux 命令,今天我们来学习 netstat 命令》

  前言:netstat 命令用于显示各种网络相关信息,如网络连接,路由表,接口状态等,还可以很方便查看本地机器上的外部连接及本地和远程系统连接的状态。

我们先来看一下执行 netstat 命令结束后的输出信息:

从整体上看,输出的信息主要可以分为两部分:

1,Active Internet connections: 称为有源 TCP 连接,其中Recv-Q 和 Send-Q 分别表示接收队列和发送队列,这些数字一般都应该为 0,如果不是表示网络包正在缓冲队列中堆积,这种情况只能在非常少的情况下能看到。

2,Active UNIX domain socket: 称为有源 Unix域套接口(和网络套接字一样,但只能用于本机通信,性能可以提高一倍),Proto 表示连接所使用的协议,RefCnt 表示连接到本套接口上的进程号,Type 显示套接口的类型,State 显示套接口当前的状态,Path 表示连接到套接口的其它进程使用的路径名。

options:

  -a : 显示所有选项,默认不显示 LISTEN 相关

   -t : 仅显示 tcp 相关选项

  -u : 仅显示 udp 相关选项

  -n : 禁止显示别名,能显示数字的全部转换成数字(如将 localhost 显示为 192.168.175.137)

  -l : 仅列出 LISTEN 的服务状态

  -r : 显示路由信息,路由表

  -e : 显示扩展信息,如 uid 等

  -s : 按各个协议进行统计

  -c : 每隔一个固定时间,执行该 netstat 命令

note : LISTEN 和 LISTENING 的状态只有用 -l 或者 -a 才能看到

step 1 : 列出端口

# 列出所有端口
$ netstat -a # 列出所有 tcp 端口
$ netstat -at # 列出所有 udp 端口
$ netstat -au # 列出监听的端口
$ netstat -l # 列出所有监听 tcp 的端口
$ netstat -lt # 列出所有监听 udp 的端口
$ netstat -lu # 列出所有监听 UNIX 端口
$ netstat -lx

step 2 : 统计端口的统计信息

# 统计端口统计信息
$ netstat -s # 显示 TCP 端口统计信息
$ netstat -st # 显示 UDP 端口统计信息
$ netstat -su

step 3 : 在 netstat 输出中显示 PID 和进程名称,这样我们就可以很方便的发现特定端口运行的程序。

# 显示特定端口运行的程序
$ netstat -p # -p 参数可以与其他参数一同使用
# 显示 tcp 连接中的端口所运行的程序
$ netstat -pt

注1:在用 netstat 命令时,可能会看到 Local Address 和 Foreign Address 都是自己的本机地址,这是因为自己的机器是可以连接到自己的机器的,比如开了代理然后自己浏览器连接到代理服务器上。

注2 : netstat 中的 0.0.0.0 的意思是本机上可用的任意地址,比如 0.0.0.0:13550 表示本机上所有地址的 13550 端口,这样多 ip 计算机就不用重复显示了; TCP 0.0.0.0:80 表示在所有的可用接口上监听 TCP 80 号端口;另外,0.0.0.0 为默认路由,即到达不再路由表里面的网段的包都走这条默认路由。

参考资料:

https://www.cnblogs.com/ggjucheng/archive/2012/01/08/2316661.html

one_day_one_linuxCmd---netstat命令的更多相关文章

  1. linux之netstat命令

    netstat用于显示各种网络相关的信息,如网络连接,路由表接口状态(interface statistics), masquerade连接,多播成员(Multicast Memberships)等等 ...

  2. netstat命令

    netstat命令会罗列出当前所有的网络连接.连接统计以及路由表信息.默认情况下,netstat命令将罗列出本地计算机所有开启的端口情况,以及它所连接的外部计算机情况. 端口就像一所房子的房门一样.数 ...

  3. Linux netstat命令详解

    Linux netstat命令详解 一  简介 Netstat 命令用于显示各种网络相关信息,如网络连接,路由表,接口状态 (Interface Statistics),masquerade 连接,多 ...

  4. 每天一个linux命令(56):netstat命令

    netstat命令​用于显示与IP.TCP.UDP和ICMP协议相关的统计数据,一般用于检验本机各端口的网络连接情况.netstat是在内核中访问网络及相关信息的程序,它能提供TCP连接,TCP和UD ...

  5. SS命令和Netstat命令比较

    在早期运维工作中,查看服务器连接数一般都会用netstat命令.其实,有一个命令比netstat更高效,那就是ss(Socket Statistics)命令!ss命令可以用来获取socket统计信息, ...

  6. Linux之netstat命令详解

    简介 Netstat 命令用于显示各种网络相关信息,如网络连接,路由表,接口状态 (Interface Statistics),masquerade 连接,多播成员 (Multicast Member ...

  7. netstat命令详解

    它主要的用法和详解! (netstat -na 命令),本文主要是说Linux下的netstat工具,然后详细说明一下各种网络连接状态. netstat -nat |awk ‘{print $}’|s ...

  8. centos7.0 没有netstat 命令问题

    centos有时安装时,没有安装netstat命令: 直接如下就可搞定: yum install wget 运行  yum install net-tools  就OK了 netstat常用命令: n ...

  9. linux netstat 命令简解

    Netstat 简介: Netstat是在内核中访问网络及相关信息的程序,它能提供TCP连接,TCP和UDP监听,进程内存管理的相关报告.常见参数-a (all)显示所有选项,默认不显示LISTEN相 ...

  10. 每天一个linux命令(48):netstat命令

    netstat命令用于显示与IP.TCP.UDP和ICMP协议相关的统计数据,一般用于检验本机各端口的网络连接情况.netstat是在内核中访问网络及相关信息的程序,它能提供TCP连接,TCP和UDP ...

随机推荐

  1. delphi10.2 命令行编译x64脚本

    Build.bat @echo off @echo delphi x64编译测试 @cd /d %~dp0 @echo 设置Delphi参数信息 @set SourcePath=%~dp0.\src ...

  2. 解析underscore中的debounce

    先奉上源码 取自Underscore.js 1.9.1的debounce _.debounce = function(func, wait, immediate) { var timeout, res ...

  3. Django(三) 模型:ORM框架、定义模型类并创建一个对应的数据库、配置Mysql数据库

    一.模型概述 https://docs.djangoproject.com/zh-hans/3.0/intro/tutorial02/ https://www.runoob.com/django/dj ...

  4. unity基础开发----Unity获取PC,Ios系统的mac地址等信息

    在软件开发中可以会用到mac地址作为,设备的唯一标示,我们也可以通过unity获取,经测试pc,ios都可以但是安卓没有获取到. 代码如下: using UnityEngine; using Syst ...

  5. 又一个无效的列类型错误Error setting null for parameter #7 with JdbcType NULL . Try setting a different JdbcType for this parameter or a different jdbcTypeForNull configuration property. Cause: java.sql.SQLExcept

    在更新数据时候出现的错误 更新代码如下: <update id="modify" parameterType="Standard"> update ...

  6. 4 —— node —— 启动一个 http 服务器

    const http = require('http'); const server = http.createServer(); // 绑定客户端请求事件 // on => 绑定事件 // r ...

  7. 053-switch分支结构

    <?php $week=3; //定义并初始化星期变量 switch($week){ case 0: //变量为0的情况 echo '星期日.'; break; case 1: //变量为1的情 ...

  8. hdu 1257 最少拦截系统 求连续递减子序列个数 (理解二分)

    最少拦截系统 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Subm ...

  9. 如何安装Anaconda

    如何安装Anaconda Python作为一门易读.易维护的语言,在工作和学习中应用广泛,被大量用户所欢迎.本文主要给大家介绍一下Anaconda 步骤 1 Anaconda在官网就可以下载,网址:h ...

  10. linux系统pid的最大值研究

    内核源码探查 通过对linux内核源码的追踪,可以看到对pid最大值的限定最终集中到include/linux/threads.h文件中的PID_MAX_DEFAULT上了,代码如下: /* * Th ...