netstat简介

  netstat是一个监控TCP/IP网络的非常有用的工具,它可以显示路由表,实际的网络连接以及每一个网络接口设备的状态信息,netstat用于显示与IP,TCP,UDP和ICMP协议相关的统计数据,一般用于查询本机各端口的网络连接情况。

  一般用netstat -an显示所有连接的IP、端口并用数字表示。

  netstat命令的功能是显示网络连接、路由表和网络接口信息,可以让用户得知有哪些网络连接正在运作。

  使用时,如果不带参数,netstat显示活动的TCP连接

netstat常用参数

  常用的几个参数有:-a -n -p -l

  -a 显示所有socket,包括正在监听的

  -l 显示有在 Listen (监听) 的服务状态

  -n 以网络IP地址代替名称,显示网络连接情形

  -p 显示建立相关连接的程序名和PID

  -t 显示TCP协议的连接情况

  -u 显示UDP协议的连接情况

  -s 显示每个协议的统计

  -b 显示在创建每个连接或监听端口时涉及的可执行程序

  -c 每个1秒就重新显示一遍,直到用户中断

netstat常用场景

  1. netstat -a 列出所有连接
[root@77-9-162-bx-core ~]# netstat -a
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 0.0.0.0:privatewire 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:4194 0.0.0.0:* LISTEN
tcp 5 0 0.0.0.0:30211 0.0.0.0:* LISTEN

 udp 0 0 0.0.0.0:10010 0.0.0.0:*
  udp 0 0 0.0.0.0:11916 0.0.0.0:*
  udp 0 0 0.0.0.0:30000 0.0.0.0:*
  Active UNIX domain sockets (servers and established)
  Proto RefCnt Flags Type State I-Node Path
  unix 2 [ ACC ] STREAM LISTENING 3925009694 /tmp/tmux-0/default
  unix 2 [ ACC ] STREAM LISTENING 4021720277 /tmp/tmux-1091/default
  unix 2 [ ACC ] STREAM LISTENING 3910671241 /tmp/tmux-1081/default

  2. netstat -at 列出所有tcp连接

root@77-9-162-bx-core ~]# netstat -at|head
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 0.0.0.0:privatewire 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:4194 0.0.0.0:* LISTEN
tcp 5 0 0.0.0.0:30211 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:zabbix-agent 0.0.0.0:* LISTEN
tcp 0 0 localhost:cslistener 0.0.0.0:* LISTEN
tcp 0 0 localhost:10248 0.0.0.0:* LISTEN
tcp 1 0 0.0.0.0:31080 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:30089 0.0.0.0:* LISTEN

3. netstat -au 列出所有udp连接

[root@77-9-162-bx-core ~]# netstat -au|head
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State
udp 0 0 0.0.0.0:krb524 0.0.0.0:*
udp 0 0 0.0.0.0:upnotifyp 0.0.0.0:*
udp 0 0 0.0.0.0:n1-fwp 0.0.0.0:*
udp 0 0 0.0.0.0:n1-rmgmt 0.0.0.0:*
udp 0 0 0.0.0.0:asc-slmd 0.0.0.0:*
udp 0 0 0.0.0.0:privatewire 0.0.0.0:*
udp 0 0 0.0.0.0:55511 0.0.0.0:*
udp 0 0 0.0.0.0:55512 0.0.0.0:*

  4. netstat -nl|grep port  查询端口号是否占用

[root@77-9-162-bx-core ~]# netstat -ln|grep 8090
tcp 0 0 0.0.0.0:8090 0.0.0.0:* LISTEN

  5. netstat -nlp|grep port 查询占用端口号的程序名或pid

[root@77-9-162-bx-core ~]# netstat -lnp|grep 8090
tcp 0 0 0.0.0.0:8090 0.0.0.0:* LISTEN 8904/vintage

  6. netstat -apn|grep server 查询程序占用端口

# netstat -apn|grep server
Active Internet connections (servers and established)
tcp 0 0 0.0.0.0:8100 0.0.0.0:* LISTEN 17557/server

连接状态

LISTEN  监听来自远方的TCP端口的连接请求

SYN-SENT  在发送连接请求后等待匹配的连接请求

SYN-RECEIVED  在收到和发送一个连接请求后等待对方对连接请求的确认

ESTABLISHED  代表一个打开的连接

TIME-WAIT  等待足够的时间以确保远程TCP接收到连接中断请求的确认

CLOSED  没有任何连接状态

CLOSED-WAIT  等待从本地用户发来的连接中断请求

netstat 常用方法的更多相关文章

  1. TCP/IP 笔记 6 netstat -s 命令查看每个协议统计数据

    netstat -s 命令,查看每个协议统计数据的常用方法 lenovo-myc@lenovomyc-Lenovo-Product:~$ netstat -s Ip: total packets re ...

  2. Linux下用netstat查看网络状态、端口状态(转)

    转:http://blog.csdn.net/guodongdongnumber1/article/details/11383019 在linux一般使用netstat 来查看系统端口使用情况步.  ...

  3. Linux命令:ps,netstat,top

    ps ps用于查看当前运行的进程.如果想查看动态的进程信息,可以使用top命令.查看详细命令帮助使用man ps. ps最常用的选项组合就是ps aux: # ps aux USER PID %CPU ...

  4. 前端开发:Javascript中的数组,常用方法解析

    前端开发:Javascript中的数组,常用方法解析 前言 Array是Javascript构成的一个重要的部分,它可以用来存储字符串.对象.函数.Number,它是非常强大的.因此深入了解Array ...

  5. Jquery元素选取、常用方法

    一:常用的选择器:(李昌辉) 基本选择器 $("#myDiv") //匹配唯一的具有此id值的元素 $("div") //匹配指定名称的所有元素 $(" ...

  6. python浅谈正则的常用方法

    python浅谈正则的常用方法覆盖范围70%以上 上一次很多朋友写文字屏蔽说到要用正则表达,其实不是我不想用(我正则用得不是很多,看过我之前爬虫的都知道,我直接用BeautifulSoup的网页标签去 ...

  7. C# Webbrowser 常用方法及多线程调用

    设置控件的值 /// <summary> /// 根据ID,NAME双重判断并设置值 /// </summary> /// <param name="tagNa ...

  8. list,tuple,dict,set常用方法

    Python中list,tuple,dict,set常用方法 collections模块提供的其它有用扩展类型 from collections import Counter from collect ...

  9. 记录yii2-imagine几个常用方法

    记录yii2-imagine几个常用方法: //压缩 Image::thumbnail('@webroot/img/test-image.jpg', 120, 120)->save(Yii::g ...

随机推荐

  1. 【LESS系列】三角形Mixins

    又是一篇自 W3CPLUS 中转化而来的文章. 和 W3CPLUS 上的做法,在设计上最大的不同就在于,这里我用的是多个 Mixins 函数来实现. 先总结这种做法的特点: 需要额外的标签来实现,因此 ...

  2. linux进程间的网络通信

    一.进程是如何进行网络通信的?socket通信的过程? 同一机器上的不同进程之间的通信方式有很多种,主要使用消息传递或共享内存.而跨网络的进程是几乎都是使用socket通信,例如web服务器,QQ. ...

  3. redis实战笔记(1)-第1章 初识Redis

    第1章 初识Redis 注:本书在redis3.0版本的,比如redis3.0以后支持服务端集群.3.0之前只能客户端分片.    本章主要内容 1.Redis与其他软件的相同之处和不同之处 2.Re ...

  4. CADisplayLink+弹簧动画实现果冻效果

    项目中在Tabbar中间的按钮要从底部弹出视图并有果冻效果,在CocoaChina中找了一篇博客用 UIBezierPath 实现果冻效果,github,自己就按着上面的demo修改了一下( 之前也是 ...

  5. 9.Symbol

    Symbol Symbol 概述 ES5 的对象属性名都是字符串,这容易造成属性名的冲突.比如,你使用了一个他人提供的对象,但又想为这个对象添加新的方法(mixin 模式),新方法的名字就有可能与现有 ...

  6. c# 中 event 和 delegate 的区别

    event 是一种特殊的delegate. 1)event 在本类(派生类也不行)之外不能触发.(如果是public的在类外或protected的在派生类中可以使用 += 或 -=, 但不能调用该ev ...

  7. git pull和git pull --rebase的使用

    使用下面的关系区别这两个操作: git pull = git fetch + git merge git pull --rebase = git fetch + git rebase 现在来看看git ...

  8. python,tensorflow线性回归Django网页显示Gif动态图

    1.工程组成 2.urls.py """Django_machine_learning_linear_regression URL Configuration The ` ...

  9. Bootstrap网格

    首先了解一下,什么是网格? 在平面设计中,网格是一种由一系列用于组织内容的相交的直线(垂直的.水平的)组成的结构(通常是二维的).它广泛应用于打印设计中的设计布局和内容结构.在网页设计中,它是一种用于 ...

  10. css3在页面中插入内容

    A. 使用选择器来插入内容 h2:before{ content:"前缀"; } h2:after{ content:"后缀"; } B. 指定个别的元素不进行 ...