Linux中的netstat命令详解「建议收藏」

Linux中的netstat命令详解「建议收藏」前面我们学习了网络的有关基础知识,今天我们来介绍一个Linux下面的关于网络的一个重要指令——netstat.功能说明netstat是基于Netstat这个命令行工具的指令,它可以用来查询系统上的网络套接字连接情况,包括tcp,udp以及Unix套接字;另外它还能列出路由表,接口状态和多播成员等信息。主要选项关于netstat命令的选项有很多,这里我们只介绍常见选项,关于选项和选项的作用如下图:

大家好,又见面了,我是你们的朋友全栈君。

前面我们学习了网络的有关基础知识,今天我们来介绍一个Linux下面的关于网络的一个重要指令——netstat.


功能说明

netstat是基于Netstat这个命令行工具的指令,它可以用来查询系统上的网络套接字连接情况,包括tcp,udp以及Unix套接字;另外它还能列出路由表,接口状态和多播成员等信息。


主要选项

关于netstat命令的选项有很多,这里我们只介绍常见选项,关于选项和选项的作用如下图:
这里写图片描述


实例演示

netstat -a       

这条命令会列出所有的端口,包括监听的和未监听的。


netstat -t

列出所有的tcp协议的端口,结果如下:

[root@bogon Test2017_3_7]# netstat -at
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address               Foreign Address             State      
tcp        0      0 localhost:1024              *:*                         LISTEN      
tcp        0      0 *:ssh                       *:*                         LISTEN      
tcp        0      0 localhost:ipp               *:*                         LISTEN      
tcp        0      0 localhost:smtp              *:*                         LISTEN      
tcp        0      0 localhost:40312             localhost:1024              ESTABLISHED 
tcp        0      0 localhost:1024              localhost:40312             ESTABLISHED 
tcp        0      0 *:ssh                       *:*                         LISTEN      
tcp        0      0 localhost:ipp               *:*                         LISTEN      
tcp        0      0 localhost:smtp              *:*                         LISTEN   

netstat -ua

同样,这条命令表示列出所有的UDP协议的端口。


找出程序运行的端口

netstat -ap | grep '程序名'

例如:

[root@bogon Test2017_3_7]# netstat -ap | grep './server'
tcp        0      0 localhost:1024              *:*                         LISTEN      6130/./server       
tcp        0      0 localhost:1024              localhost:40312             ESTABLISHED 6130/./server       
You have new mail in /var/spool/mail/lzh

找出端口的程序名

netstat -ap | grep '端口号'

例如:

[root@bogon Test2017_3_7]# netstat -ap | grep '1024'
tcp        0      0 localhost:1024              *:*                         LISTEN      6130/./server       
tcp        0      0 localhost:40312             localhost:1024              ESTABLISHED 6323/./client       
tcp        0      0 localhost:1024              localhost:40312             ESTABLISHED 6130/./server   

禁止域名解析
这个主要netstat中的-n选项有关,我们先来看看不带n时所输出的结果。

[root@bogon Test2017_3_7]# netstat -ltp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address               Foreign Address             State       PID/Program name   
tcp        0      0 localhost:1024              *:*                         LISTEN      6130/./server       
tcp        0      0 *:ssh                       *:*                         LISTEN      1800/sshd           
tcp        0      0 localhost:ipp               *:*                         LISTEN      1690/cupsd          
tcp        0      0 localhost:smtp              *:*                         LISTEN      1925/master         
tcp        0      0 *:ssh                       *:*                         LISTEN      1800/sshd           
tcp        0      0 localhost:ipp               *:*                         LISTEN      1690/cupsd          
tcp        0      0 localhost:smtp              *:*                         LISTEN      1925/master    

下面我们再来看看加上n 选项后的输入结果。

[root@bogon Test2017_3_7]# netstat -nltp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address               Foreign Address             State       PID/Program name   
tcp        0      0 127.0.0.1:1024              0.0.0.0:*                   LISTEN      6130/./server       
tcp        0      0 0.0.0.0:22                  0.0.0.0:*                   LISTEN      1800/sshd           
tcp        0      0 127.0.0.1:631               0.0.0.0:*                   LISTEN      1690/cupsd          
tcp        0      0 127.0.0.1:25                0.0.0.0:*                   LISTEN      1925/master         
tcp        0      0 :::22                       :::*                        LISTEN      1800/sshd           
tcp        0      0 ::1:631                     :::*                        LISTEN      1690/cupsd          
tcp        0      0 ::1:25                      :::*                        LISTEN      1925/master         

我们发现在local address 即主机地址这一栏中,如果没有带n选项,会将套接字所对应的域名解析出来,如果加上n选项,那么就不会显示,即禁止域名解析的功能,这样做有助于提高查询速度,因为减少了对主机域名的查询。


持续输出netstat信息

这个没有什么好说的,大家自己试一试指令即可。

netstat -c**

显示路由表的信息

netstat -r

这条指令相当于route指令,会输出核心路由信息。

[root@bogon Test2017_3_7]# netstat -nr
Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
192.168.3.0     0.0.0.0         255.255.255.0   U         0 0          0 eth0
0.0.0.0         192.168.3.1     0.0.0.0         UG        0 0          0 eth0

显示接口信息

netstat -i
root@bogon Test2017_3_7]# netstat -i
Kernel Interface table
Iface       MTU Met    RX-OK RX-ERR RX-DRP RX-OVR    TX-OK TX-ERR TX-DRP TX-OVR Flg
eth0       1500   0     5277      0      0      0      578      0      0      0 BMRU
lo        16436   0      820      0      0      0      820      0      0      0 LRU

分类统计各个协议的相关信息

netstat -sa

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/139105.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • threadlocal详解_thread local

    threadlocal详解_thread localC#中,Thread类有一个IsBackground的属性.MSDN上对它的解释是:获取或设置一个值,该值指示某个线程是否为后台线程。个人感觉这样的解释等于没有解释..Net中的线程,可以分为后台线程和前台线程。后台线程与前台线程并没有本质的区别,它们之间唯一的区别就是:后台线程不会防止应用程序的进程被终止掉。呵呵,这句话读出来好像并不那么好懂.其实,说白了就是当前台线程都结束了的时候,整个…

    2022年10月17日
    4
  • C++中定义一个函数为bool类型的作用「建议收藏」

    C++中定义一个函数为bool类型的作用「建议收藏」1.bool型函数bool型函数(即返回值为bool类型的函数)的作用——获取函数返回值boolgetvalue(boolb){if(b==true)returntrue;elsereturnfalse;}intmain(){//在main()中调用函数就可以得到5261函数的返回结果4102cout<<boolalpha<<getValue(true);return0;

    2022年6月8日
    49
  • cegui基础

    cegui基础cegui基础2010年11月12日  cegui渲染入门:  至少需要3步,才可以使cegui运行起来  1创建CEGUI::Renderer对象  2创建CEGUI::System对象  3调用渲染函数  ofcourse,实现真正的游戏GUI,你还需要装载相关的数据文件,进行一些最基础的初始话,你也需要处理用户输入。  1创建CEGUI:Re…

    2022年7月24日
    8
  • 35岁以上的IT人士如果有一天被公司裁员了,该怎么办?

    35岁以上的IT人士如果有一天被公司裁员了,该怎么办?我觉得裁员和年龄无关,和本人的技能,工作态度,处事规则有关系。大家都知道华为裁员比例厉害,特别是对35岁以上的,会感到中年危机。但是我几个在华为的同学,都到了40岁了工作依然好好的,也没有见谁被裁掉。如果在工作中保持积极的态度,做事主动,平常多学习,和同事,领导的关系都不错,那么也不会被裁掉。作为已经到而立之年的中年人,给大家一点建议吧。在工作和生活中时刻保持乐观的心态,做事积极主动,多想多思考,与同事和领导友好相处,尽量让自己成为不可替代的人。那么你就不会被裁掉,也不会有中年危机。…

    2022年7月18日
    48
  • SOAP 协议「建议收藏」

    SOAP 协议「建议收藏」参考链接SOAP教程http协议与soap协议之间的区别SOAPSOAP是基于XML的简易协议,可使应用程序在HTTP之上进行信息交换SOAP提供了一种标准的方法,使得运行在不同的操作系统并使用不同的技术和编程语言的应用程序可以互相进行通信SOAP协议可以简单地理解为:SOAP=RPC+HTTP+XML采用HTTP作为通信协议RPC(RemoteProcedureCallProtocol远程过程调用协议)作为一致性的调用途径XML作为数据传送的格式,从而允许服务提供

    2022年7月12日
    15
  • pychram安装教程

    pychram安装教程前言Pycharm社区版其实基本也够用的,但是,但是,还是想装专业版呢。一、安装pycharm1.下载安装包先去官网下载好安装包,我们这里用Windown环境的普通版就够用了https://www.jetbrains.com/pycharm/download/#section=windows2.安装后面就是一路next,跟装个QQ一样安装完成后,选择稍后重启电脑,然后去桌面打开pycharm…

    2022年8月27日
    5

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号