zoukankan      html  css  js  c++  java
  • Linux netstat用法

    常见参数

    -a (all)显示所有选项,默认不显示LISTEN相关
    -t (tcp)仅显示tcp相关选项
    -u (udp)仅显示udp相关选项
    -n 拒绝显示别名,能显示数字的全部转化成数字。
    -l 仅列出有在 Listen (监听) 的服務状态

    -p 显示建立相关链接的程序名
    -r 显示路由信息,路由表
    -e 显示扩展信息,例如uid等
    -s 按各个协议进行统计
    -c 每隔一个固定时间,执行该netstat命令。

    提示:LISTEN和LISTENING的状态只有用-a或者-l才能看到

    常用命令

    1)统计不同类型的tcp connection
    netstat -an | awk '/^tcp/ {++S[$NF]} END {for(a in S) print S[a],a}'|sort -rn
    
    2)只看ESTABLISH的数量
    netstat -an | awk '/ESTABLISHED/ {S[$NF]++} END {for(a in S) print S[a]}'
    netstat -an|awk '/ESTABLISHED/ {print $6}'|sort|uniq -c
    
    3)只看time wait数量
    netstat -an|awk '/TIME_WAIT/ {print $6}'|sort|uniq -c
    
    4)看前20的tcp相关的 IP数量
    netstat -an |grep 'ESTABLISHED' |awk '{print $5}'|awk -F ':' '{print $1}'|sort|uniq -c|sort -rn|head -20
    netstat -n|awk '/^tcp/ {print $5}'|awk -F : '{print $1}'|awk '{print $1}'|sort|uniq -c|sort -rn|head -20
    或用下面这个性能更好的方法
    awk 'BEGIN{while("netstat -an"|getline){if( $5 ~ /[1-255]/){split($5,t1,":");tarr[t1[1]]++;}}for(k in tarr){print tarr[k],k | "sort -rn";}};'|head -20

    一个简单 for  loop 观察链接数变化,以及链接数前20的IP

    while true;do uptime;netstat -an | awk '/ESTABLISHED/ {S[$NF]++} END {for(a in S) print S[a]}';awk 'BEGIN{while("netstat -an"|getline){if( $5 ~ /[1-255]/){split($5,t1,":");tarr[t1[1]]++;}}for(k in tarr){print tarr[k],k | "sort -rn";}};'|head -20;sleep 20;done

    谢谢大家

  • 相关阅读:
    NPOI操作 EXCEL文件
    mysql 临时变量,临时表
    ReSharper制作Template帮助我们快速输入代码
    临时表的实际运用
    如何避免项目重复循环引用
    mysql 5.1以上版本数据库 使用定时器功能(Event)
    Fedora12下装SMPlayer
    Fedora12启动时激活网卡并将firefox不设置为脱机工作
    设置yum
    Fedora 有用更新源上海交大的yum源
  • 原文地址:https://www.cnblogs.com/faberbeta/p/12981880.html
Copyright © 2011-2022 走看看