linux下的netstat介绍

netstat是一个监控本地端口网络状态的,显示各种网络信息的,比如说路由表、接口状态等等

命令格式: netstat [选项]

常见选项:

  • -a (all)显示所有socket
  • -t (tcp)仅显示已经建立连接tcp链接
  • -u (udp)仅显示udp相关选项
  • -i(–interfaces) 显示网卡网络界面信息表单。
  • -n 直接使用数字,而不通过域名服务器。
  • -l(–listening) 仅列出有在 Listen (监听) 的服務状态
  • -o(–timers) 显示计时器
  • -p 显示建立相关链接的程序名(需要sudo)
  • -r 显示路由信息,路由表
  • -e 显示扩展信息,例如uid等
  • -s 按各个协议进行统计
  • -c 每隔多少秒刷新一次
  • socket: 网络上的两个程序通过一个双向的通信连接实现数据的交换,这个连接的一端称为一个socket(就像电话号码)。
  • Active UNIX domain Sockets: 有源Unix域套接口,不需要经过网络协议栈,不需要打包拆包、计算校验和、维护序号和应答等,只是将应用层数据从一个进程拷贝到另一个进程

例子:

netstat -ano

查看所有socket,包括监听状态,并且显示连接时长

netstat -anto

仅查看所有tcp的连接

netstat -anuo

仅查看所有udp的连接

TCP/IP协议简介:TCP是面向连接的通信协议,通过三次握手建立连接,通讯完成时要拆除连接,具体介绍:http://blog.csdn.net/whuslei/article/details/6667471/
UDP协议介绍:一种无连接的传输层协议,提供面向事务的简单不可靠信息传送服务

连接状态解读

状态 解释
LISTEN 监听状态
ESTABLISHED 连接建立状态
SYN_SENT 客户端向服务端发送连接请求
SYN_RECV 服务端接收到客户端发送的请求后发送连接许可

你可能感兴趣的:(linux下的netstat介绍)