码迷,mamicode.com
首页 > 系统相关 > 详细

linux 查看TCP连接IP统计小程序

时间:2017-02-08 23:28:24      阅读:482      评论:0      收藏:0      [点我收藏+]

标签:python   cccccc   linux   color   style   

#!/usr/bin/env python
#coding:utf8
import commands
import time
import sys

def main(count_list):
    print "数量\t\tIP地址 \t\t\t连接状态"
    for i in  count_list:
        for x in i.split():
            if len(x) > 14:
                print "%s \t"% x,
            else:
                print "%s \t\t" % x,
        print

if __name__ == __main__:

    if len(sys.argv) >1:

        try:
            while 1:
                command_str = """netstat -tan | grep ‘""" + sys.argv[1] + """‘ |awk ‘{print $(NF-1),$NF}‘ | grep -E ‘[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}‘ | awk -F [\ :] ‘{print $(NF-2),$NF}‘ | awk ‘{ip[$0]++}END{for ( i in ip) print ip[i],i | "sort -nr | head -n 20" }‘ 2>/dev/null """
                count_list =  commands.getstatusoutput(command_str)[1].split("\n")
                main(count_list)
                time.sleep(5)
                print
                print "-----------------------------------------------------"
        except:
            pass

    else:

        try:
            while 1:
                command_str = """netstat -tan|awk ‘{print $(NF-1),$NF}‘ | grep -E ‘[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}‘ | awk -F [\ :] ‘{print $(NF-2),$NF}‘ | awk ‘{ip[$0]++}END{for ( i in ip) print ip[i],i | "sort -nr | head -n 20" }‘ 2>/dev/null """
                count_list =  commands.getstatusoutput(command_str)[1].split("\n")
                main(count_list)
                time.sleep(5)
                print
                print "-----------------------------------------------------"
        except:
            pass

执行结果

[root@duyunlong-100-70test]# tcpcheck 
数量        IP地址                 连接状态
313        172.16.6.11         ESTABLISHED         
189        172.16.6.13         ESTABLISHED         
176        172.16.6.12         ESTABLISHED         
64         172.16.100.50       ESTABLISHED         
50         172.16.100.51       ESTABLISHED         
43         172.16.3.20         ESTABLISHED         
31         172.16.1.64         ESTABLISHED         
31         172.16.1.62         ESTABLISHED         
31         172.16.1.61         ESTABLISHED         
30         172.16.4.20         ESTABLISHED         
30         172.16.3.81         ESTABLISHED         
30         172.16.3.80         ESTABLISHED         
30         172.16.3.66         ESTABLISHED         
30         172.16.3.21         ESTABLISHED         
30         172.16.1.65         ESTABLISHED         
30         172.16.1.63         ESTABLISHED         
30         172.16.1.60         ESTABLISHED         
30         172.16.1.103        ESTABLISHED         
30         172.16.1.102        ESTABLISHED         
30         172.16.1.101        ESTABLISHED

或者可以跟参数

[root@duyunlong-100-70test]# tcpcheck TIME_WAIT
数量        IP地址                 连接状态
15         172.16.3.21         TIME_WAIT         
15         172.16.3.20         TIME_WAIT         
2          172.16.6.24         TIME_WAIT

linux 查看TCP连接IP统计小程序

标签:python   cccccc   linux   color   style   

原文地址:http://duyunlong.blog.51cto.com/1054716/1896123

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!