功能说明

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

Linux中的netstat命令详解的更多相关文章

  1. linux中的alias命令详解

    功能说明:设置指令的别名.语 法:alias[别名]=[指令名称]参 数 :若不加任何参数,则列出目前所有的别名设置.举    例 :ermao@lost-desktop:~$ alias       ...

  2. Linux netstat命令详解

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

  3. linux netstat 命令详解

    linux netstat 命令详解 1.功能与说明 netstat 用于显示linux中各种网络相关信息.如网络链接 路由表  接口状态链接 多播成员等等. 2.参数含义介绍 -a (all)显示所 ...

  4. netstat命令详解

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

  5. Linux中使用netstat命令的基本操作,排查端口号的占用情况

    Linux中netstat命令详解 Netstat是控制台命令,是一个监控TCP/IP网络的非常有用的工具,它可以显示路由表.实际的网络连接以及每一个网络接口设备的状态信息.Netstat用于显示与I ...

  6. Linux上的free命令详解、swap机制

    Linux上的free命令详解   解释一下Linux上free命令的输出. 下面是free的运行结果,一共有4行.为了方便说明,我加上了列号.这样可以把free的输出看成一个二维数组FO(Free ...

  7. Linux CAT与ECHO命令详解 <<EOF EOF

    Linux CAT与ECHO命令详解 cat命令是Linux下的一个文本输出命令,通常是用于观看某个文件的内容的: cat主要有三大功能: .一次显示整个文件. $ cat filename .从键盘 ...

  8. [r]Ubuntu Linux系统下apt-get命令详解

    Ubuntu Linux系统下apt-get命令详解(via|via) 常用的APT命令参数: apt-cache search package 搜索包 apt-cache show package ...

  9. Linux CAT与ECHO命令详解

    Linux CAT与ECHO命令详解 cat命令是Linux下的一个文本输出命令,通常是用于观看某个文件的内容的: cat主要有三大功能: 1.一次显示整个文件. $ cat filename 2.从 ...

随机推荐

  1. Codeforces 8C 状压DP

    题意:有个人想收拾行李,而n个物品散落在房间的各个角落里(n < 24).现在给你旅行箱的坐标(人初始在旅行箱处),以及n个物品的坐标,你一次只能拿最多两个物品,并且拿了物品就必须放回旅行箱,不 ...

  2. const 和 #define区别

    (1) 编译器处理方式不同 define宏是在预处理阶段展开. const常量是编译运行阶段使用. (2) 类型和安全检查不同 define宏没有类型,不做任何类型检查,仅仅是展开. const常量有 ...

  3. Xshell连接不上Linux的解决方法

    xshell连接linux主机时,会出现错误:Could not connect to '127.0.0.1' (port 22): Connection failed.  但是这时能ping通. 通 ...

  4. C# 与Java初始化顺序及异同(转)

    C#初始化顺序 类成员变量初始化先于类的构造函数 静态成员变量先于实例变量 子类成员变量先于父类成员变量(java相反) 父类构造函数先于子类构造函数 参考实例: using System; //us ...

  5. GridView里的按钮事件

    http://www.cnblogs.com/insus/archive/2012/09/22/2697862.html using System;using System.Collections.G ...

  6. C#中对sqlserver进行增删改查操作(简单易懂)

    1.添加引用using System.Data;using System.Data.SqlData; 2.建立于数据库的连接,建议将它做成一个方法,方便多次利用.string sqlconnectio ...

  7. C# DLL(程序集)的生成和调用

    日期:2018年11月24日 环境:Window 10,VS2015 一.利用VS2015自带的工具生成DLL 步骤: 1.利用C#准备一个.cs文件: using System; public cl ...

  8. iOS Programming GitHub

    我把学习<iOS编程(第4版)>的相关代码放在了GitHub上: https://github.com/palanceli/iOSProgramming 学了一段时间之后,当要用到某个知识 ...

  9. uint8_t / uint16_t / uint32_t /uint64_t 是什么数据类型

    在nesc的代码中,你会看到很多你不认识的数据类型,比如uint8_t等.咋一看,好像是个新的数据类型,不过C语言(nesc是C的扩展)里面好像没有这种数据类型啊!怎么又是u又是_t的?很多人有这样的 ...

  10. c语言参考书籍

    很惭愧没能把c++学的很好,毕竟离开始工作只有2年时间,对自己要求不要过高,慢慢来吧.话说知道自己的不足,以后要更加抓紧了!fighting~ 现在计划着把c语言给学习一下了,当然这次指的是深入地学习 ...