linux基本监控-ss

来源:互联网 发布:linux 注释多行 编辑:程序博客网 时间:2024/05/01 12:35
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 -ass
路由表 netstat -rip route
统计接口 netstat -iip -s link
伪连接 netstat -Mss
组播成员 netstat -gip maddr




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


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


用途 net-tool(被淘汰)iproute2
地址和链路配置 ifconfigip 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 命令,显示活动的连接

原创粉丝点击