iptraf通过TCP/UDP端口查看流量,指定端口号范围

[ 2010-12-08 13:51:15 | 作者: admin ]
字号: | |
同事说用iptraf查看无法查看xxxx端口的流量, 我打开iptraf一看, 还真的看不到xxxx端口的流量, 这是什么原因呢?

本着研究的精神, 我到http://iptraf.seul.org/download.html下载的iptraf的源码, 查看iptraf-3.0.0/src/serv.c, 找到函数updateportent(), 发现里面调用了一个goodport()的函数, 看看这个函数是长啥样子的.


int goodport(unsigned int port, struct porttab *table)
{
        return ((port < 1024) || (portinlist(table, port)));
}

原来需要小于1024或者在portinlist里面的端口才会被监听到, 再看看portinlist是长什么样子的.


int portinlist(struct porttab *table, unsigned int port)
{
        struct porttab *ptmp = table;
       
        while (ptmp != NULL) {
               if (((ptmp->port_max == 0) && (ptmp->port_min == port)) ||
                    ((port >= ptmp->port_min) && (port <= ptmp->port_max)))
                    return 1;
       
               ptmp = ptmp->next_entry;
        }
   
        return 0;
}

哦, 原来还可以自己设定要监听的端口的范围, 看看iptraf那里可以设置, 打开iptraf,从Configure-Additional ports->输入端口范围.

打开iptraf, 选Statistical breakdowns->By TCP/UDP port, 这个时候可以看到xxxx端口的流量了.
TCP/xxxx 21662 35536334 10723 579045 10939 34957289
评论Feed 评论Feed: http://blog.xg98.com/feed.asp?q=comment&id=1578

这篇日志没有评论。

此日志不可发表评论。