现在的位置: 首页 > 综合 > 正文

linux基本监控-ss

2014年01月01日 ⁄ 综合 ⁄ 共 2502字 ⁄ 字号 评论关闭

1.ss是Socket Statistics的缩写,是俄罗斯人写的,ss优势是能够显示更详细的TCP和连接状态信息,而且比netstat更快速更高效。

注意:当1万以上TCP连接时候,通常就不再使用netstat(cat /proc/net/tcp 也一样) 而是用ss 。
ss快的快在于,它利用到了TCP协议栈中tcp_diag。tcp_diag是一个用于分析统计的模块,可以获得Linux 内核中第一手的信息,
这就确保了ss的快捷高效。当然,如果你的系统中没有tcp_diag,ss也可以正常运行,只是效率会变得稍慢。(但仍然比netstat要快)

netstat官方已经不再更新了。它已经被ss命令和ip命令所取代。

安装:
所有的Linux系统都会默认包含netstat命令,但并不一定有ss命令。netstat在net-tools工具集中:
#rpm -q net-tools
net-tools-1.60-109.el6.i686

而ss命令是iproute工具集中的一员:
#rpm -qf /usr/sbin/ss
iproute-2.6.32-17.el6.i686
#rpm -q iproute
iproute-2.6.32-17.el6.i686
如果仍无法使用ss,可能是缺少iproute,安装一下:
yum install iproute iproute-doc

常用:
ss -l 显示本地打开的所有端口
ss -pl 显示每个进程具体打开的socket
ss -t -a 显示所有tcp socket
ss -u -a 显示所有的UDP Socekt
ss -o state established '( dport = :smtp or sport = :smtp )'   显示所有已建立的SMTP连接
ss -o state established '( dport = :http or sport = :http )'  显示所有已建立的HTTP连接
ss -x src /tmp/.X11-unix/*  找出所有连接X服务器的进程
ss -s 列出当前socket详细信息:

详细:
Usage: ss [ OPTIONS ]
       ss [ OPTIONS ] [ FILTER ]
   -h, --help           this message
   -V, --version        output version information 
   -n, --numeric        don't resolve service names  不解析服务域名
   -r, --resolve       resolve host names           解析
   -a, --all            display all sockets
   -l, --listening      display listening sockets
   -o, --options       show timer information
   -e, --extended       show detailed socket information
   -m, --memory         show socket memory usage
   -p, --processes      show process using socket
   -i, --info           show internal TCP information
   -s, --summary        show socket usage summary

   -4, --ipv4          display only IP version 4 sockets
   -6, --ipv6          display only IP version 6 sockets
   -0, --packet display PACKET sockets
   -t, --tcp            display only TCP sockets
   -u, --udp            display only UDP sockets
   -d, --dccp           display only DCCP sockets
   -w, --raw            display only RAW sockets
   -x, --unix           display only Unix domain sockets
   -f, --family=FAMILY display sockets of type FAMILY

   -A, --query=QUERY
       QUERY := {all|inet|tcp|udp|raw|unix|packet|netlink}[,QUERY]

   -F, --filter=FILE   read filter information from FILE
       FILTER := [ state TCP-STATE ] [ EXPRESSION ]

作用 原命令(netstat)
新命令
网络连接 netstat -a
ss
路由表 netstat -r
ip route
统计接口 netstat -i
ip -s link
伪连接 netstat -M
ss
组播成员 netstat -g
ip maddr

========================== iproute介绍 ==================================
net-tools是一套标准的Unix网络工具,用于配置网络接口、设置路由表信息、管理ARP表、显示和统计各类网络信息等,从2001年起不再更新和维护了。
新工具是iproute,这是一套可以支持IPv4/IPv6网络的用于管理TCP/UDP/IP网络的工具集,目前的大版本号是2。

iproute工具集几乎可以替代掉net-tools工具集,具体替代方案:

用途 net-tool(被淘汰)
iproute2
地址和链路配置 ifconfig
ip addr, ip link
路由表 route
ip route
邻居 arp
ip neigh
VLAN vconfig
ip link
隧道 iptunnel
ip tunnel
组播 ipmaddr
ip maddr
统计 netstat
ss

iproute包含工具组件:
ip 网络配置命令
tc 用来进行流量控制的命令(traffic control)
rtacct 查看数据包流量状态的命令
ifcfg 网络地址配置管理
rtstat 路由状态查看工具
nstat 显示网络统计信息
ss 类似于netstat 命令,显示活动的连接

抱歉!评论已关闭.