netstat的替代命令ss

铺垫

net-tools 与 iproute

net-tools是一套标准的Unix网络工具,用于配置网络接口、设置路由表信息、管理ARP表、显示和统计各类网络信息等等,但是遗憾的是,这个工具自2001年起便不再更新和维护了。
即将隆重登场的便是iproute,这是一套可以支持IPv4/IPv6网络的用于管理TCP/UDP/IP网络的工具集,这套工具由Stephen Hemminger负责维护和升级,目前的大版本号是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

ss命令

  • 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命令实用案例
ss -s   统计网路连接情况
ss -l   统计当前系统打开的所有端口
ss -ta  查看所有的tcp连接及端口
ss -ua  查看素有的udp连接及端口



写在最后

  • ss与netstat对比

1)当服务器的socket连接数量变得非常大时,无论是使用netstat命令还是直接cat /proc/net/tcp,执行速度都会很慢。可能你不会有切身的感受,但请相信我,当服务器维持的连接达到上万个的时候,使用netstat等于浪费生命,而用ss才是节省时间。
2)而ss快的秘诀在于它利用到了TCP协议栈中tcp_diag。tcp_diag是一个用于分析统计的模块,可以获得Linux内核中第一手的信息,这就确保了ss的快捷高效。当然,如果你的系统中没有tcp_diag,ss也可以正常运行,只是效率会变得稍慢(但仍然比netstat要快)。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容