V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
lxf1992521
V2EX  ›  Linux

能否实现单网卡 Linux 局域网主机,实时显示和存储其内网(10.42.0.0/24)流量和外网(非该网段)流量?

  •  
  •   lxf1992521 · 2017-06-09 15:35:11 +08:00 · 3593 次点击
    这是一个创建于 2709 天前的主题,其中的信息可能已经有所发展或是发生改变。

    如题,现在有一台 linux 主机,只有一个网卡,配置着内网 IP,可以通过网关的 NAT 来上网。

    业务需要分析下该主机对内网(10.42.0.0/24)的流量趋势图,和其到 NAT 网关的流量出口图。

    目前 NAT 网关的流量出口图我们没有权限,所以只能从本机分析,

    网上搜索了下,有 iftop、tcpdump 等,但是感觉不是很好,很糙,而且需要自己再额外的写相应的存储、计算、画图脚本,感觉应该不是这种情况的解决方案。

    请高手推荐个解决方案

    17 条回复    2017-06-11 10:26:34 +08:00
    raysonx
        1
    raysonx  
       2017-06-09 15:37:27 +08:00
    Zabbix?
    lxf1992521
        2
    lxf1992521  
    OP
       2017-06-09 15:39:31 +08:00
    @raysonx 不是网卡的流量,而是“某个网段”或者“非某个网段”的流量趋势图。
    ToughGuy
        3
    ToughGuy  
       2017-06-09 16:10:45 +08:00
    http://ipband.sourceforge.net/

    试试这个呢。 能够直接符合你要求的估计比较难找, 多少得自己动手写点代码。
    ToughGuy
        4
    ToughGuy  
       2017-06-09 16:11:53 +08:00
    lxf1992521
        5
    lxf1992521  
    OP
       2017-06-09 16:18:44 +08:00
    @ToughGuy bandwidthd 和 ipband 这两个我都看过,测试发现,应该是上世纪的软件 ^-^.....

    世界上画图我都可以使用 rrdtool 来实现,但是实时捕获某一网段的流量并存储,感觉如果没有其他软件的话,只能使用 tcpdump 来硬写了。。。。
    cocochan
        6
    cocochan  
       2017-06-09 16:23:53 +08:00




    我这个应该和你差不多,第一个是大陆流量,第二个是北美流量,可以试试看划分不同的出口,然后统计走向
    lxf1992521
        7
    lxf1992521  
    OP
       2017-06-09 16:53:39 +08:00
    @cocochan 恩,效果很棒啊。但是这边应该不能划分多个出口,只有一个网卡,除非在网络空间进行 TAP/TUN 引流,否则估计实现不了了。
    Senorsen
        8
    Senorsen  
       2017-06-09 16:54:49 +08:00
    vnstati
    Sh888
        9
    Sh888  
       2017-06-09 17:09:05 +08:00
    如果这台 linux 接的是交换机 gi1/0/1,那么配置一个端口镜像,可以把 gi1/0/1 所有的 input/output 流量定向到另一个端口,比如 gi1/0/2。
    然后在 gi1/0/2 接一个网络分析软件,比如 panabit 的 BSD 免费版。软件自带协议分析,可以看到 linux 主机所有的 3、4 层协议。不过有个问题,panabit 的这个免费版会定期向公网某 ip 传送数据包,可能是抓取统计数据。有隐私要求的,可以在网管 ban 掉这个设备的流量。
    lxf1992521
        10
    lxf1992521  
    OP
       2017-06-09 17:11:19 +08:00
    @Sh888 panabit 整个软件也看过,需要在交换机上做操作,整个也不是系统管理员能控制的,估计不大行。。。
    lxf1992521
        11
    lxf1992521  
    OP
       2017-06-09 17:24:35 +08:00
    @Senorsen 整个也是整个网卡的流量,我们这边使用的是 ganglia 来监控的,但是不能实现网段流量分析。
    dfc643
        12
    dfc643  
       2017-06-09 17:49:09 +08:00
    用虚拟接口绑定不同地址来区分,然后挂常规的监控软件?
    em2:0
    em2:1
    dfc643
        13
    dfc643  
       2017-06-09 17:50:45 +08:00
    好像是只绑定了一个 IP,估计就只能写程序或者脚本通过连接的目标主机来区分了
    lxf1992521
        14
    lxf1992521  
    OP
       2017-06-09 18:18:45 +08:00
    @dfc643 是的,虽然有多个虚拟网卡,但是只有一个内网 IP,所以估计只能通过 libcap2 来实时转包存储了。
    ToughGuy
        15
    ToughGuy  
       2017-06-09 23:39:54 +08:00   ❤️ 1
    https://github.com/ntop/ntopng

    那这个应该可以的。
    lxf1992521
        16
    lxf1992521  
    OP
       2017-06-11 05:03:45 +08:00
    @ToughGuy 测试通过,之前也看到了该软件,但没有安装,今天部署了下,感觉很简单

    满足了我本地网段和外网流量的要求,在“ Networks ” 部分,可以清晰的看到对应的分类和图标,感谢!!!
    Albert8888
        17
    Albert8888  
       2017-06-11 10:26:34 +08:00
    单网卡配置多 IP 不就可以解决了吗
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   973 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 19:59 · PVG 03:59 · LAX 11:59 · JFK 14:59
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.