免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: freebird1983
打印 上一主题 下一主题

熟悉IP分流朋友进来看看 [复制链接]

论坛徽章:
0
21 [报告]
发表于 2009-01-06 19:52 |只看该作者
内核数包,或者统计,有没有相应的函数可以解决这个问题
还是自己写个buff,然后把每个包都解开,然后统计包数,
和包长?

论坛徽章:
36
IT运维版块每日发帖之星
日期:2016-04-10 06:20:00IT运维版块每日发帖之星
日期:2016-04-16 06:20:0015-16赛季CBA联赛之广东
日期:2016-04-16 19:59:32IT运维版块每日发帖之星
日期:2016-04-18 06:20:00IT运维版块每日发帖之星
日期:2016-04-19 06:20:00每日论坛发贴之星
日期:2016-04-19 06:20:00IT运维版块每日发帖之星
日期:2016-04-25 06:20:00IT运维版块每日发帖之星
日期:2016-05-06 06:20:00IT运维版块每日发帖之星
日期:2016-05-08 06:20:00IT运维版块每日发帖之星
日期:2016-05-13 06:20:00IT运维版块每日发帖之星
日期:2016-05-28 06:20:00每日论坛发贴之星
日期:2016-05-28 06:20:00
22 [报告]
发表于 2009-01-06 20:02 |只看该作者
内核中有  struct net_device_stats* (*get_stats)(struct net_device *dev);这个结构体用来统计设备流量的,
具体可以参看我的博客中转载的文章:http://blog.chinaunix.net/u/33048/showart_1433232.html
不过按照你的需求,可能还是需要自己写。

论坛徽章:
0
23 [报告]
发表于 2009-01-07 08:53 |只看该作者
struct net_device_stats 这个是统计所有流量的吧,估计我要自己写了,郁闷

论坛徽章:
36
IT运维版块每日发帖之星
日期:2016-04-10 06:20:00IT运维版块每日发帖之星
日期:2016-04-16 06:20:0015-16赛季CBA联赛之广东
日期:2016-04-16 19:59:32IT运维版块每日发帖之星
日期:2016-04-18 06:20:00IT运维版块每日发帖之星
日期:2016-04-19 06:20:00每日论坛发贴之星
日期:2016-04-19 06:20:00IT运维版块每日发帖之星
日期:2016-04-25 06:20:00IT运维版块每日发帖之星
日期:2016-05-06 06:20:00IT运维版块每日发帖之星
日期:2016-05-08 06:20:00IT运维版块每日发帖之星
日期:2016-05-13 06:20:00IT运维版块每日发帖之星
日期:2016-05-28 06:20:00每日论坛发贴之星
日期:2016-05-28 06:20:00
24 [报告]
发表于 2009-01-07 09:28 |只看该作者
原帖由 freebird1983 于 2009-1-7 08:53 发表
struct net_device_stats 这个是统计所有流量的吧,估计我要自己写了,郁闷


对,这个是统计经过某个网卡的所有流量。具体IP的话,可能要自己写了。

其实个人觉得,你写程序用来得出每个IP的流量,然后限制的地方可以直接使用TC

论坛徽章:
0
25 [报告]
发表于 2009-01-07 11:08 |只看该作者
我一直想做一个基于ip地址的流量控制系统(用于校内网关上)

1.在PREROUTING最前面加入一个hook,比conntrack还要前
2.hook中可以对每个ip地址进行连接数控制,包浏览控制,字节流量控制
3.可以设置规则,指定对哪个地址或某些地址设置策略
4.应该采用hash数据结构

可惜现在没时间,下半年做吧

论坛徽章:
0
26 [报告]
发表于 2009-01-07 11:39 |只看该作者
路过,进来学习一下

论坛徽章:
36
IT运维版块每日发帖之星
日期:2016-04-10 06:20:00IT运维版块每日发帖之星
日期:2016-04-16 06:20:0015-16赛季CBA联赛之广东
日期:2016-04-16 19:59:32IT运维版块每日发帖之星
日期:2016-04-18 06:20:00IT运维版块每日发帖之星
日期:2016-04-19 06:20:00每日论坛发贴之星
日期:2016-04-19 06:20:00IT运维版块每日发帖之星
日期:2016-04-25 06:20:00IT运维版块每日发帖之星
日期:2016-05-06 06:20:00IT运维版块每日发帖之星
日期:2016-05-08 06:20:00IT运维版块每日发帖之星
日期:2016-05-13 06:20:00IT运维版块每日发帖之星
日期:2016-05-28 06:20:00每日论坛发贴之星
日期:2016-05-28 06:20:00
27 [报告]
发表于 2009-01-07 11:49 |只看该作者
原帖由 qtdszws 于 2009-1-7 11:08 发表
我一直想做一个基于ip地址的流量控制系统(用于校内网关上)

1.在PREROUTING最前面加入一个hook,比conntrack还要前
2.hook中可以对每个ip地址进行连接数控制,包浏览控制,字节流量控制
3.可以设置规则,指定 ...


如果要流量控制的话,可以考虑比conntrack靠前。数据结构的话,还是hash使用起来相对容易一些。

论坛徽章:
0
28 [报告]
发表于 2009-01-07 11:55 |只看该作者
原帖由 qtdszws 于 2009-1-7 11:08 发表
我一直想做一个基于ip地址的流量控制系统(用于校内网关上)

1.在PREROUTING最前面加入一个hook,比conntrack还要前
2.hook中可以对每个ip地址进行连接数控制,包浏览控制,字节流量控制
3.可以设置规则,指定对哪个地址或某些地址设置策略
4.应该采用hash数据结构

可惜现在没时间,下半年做吧

统计每个 IP 的连接数、字节流量控制,这些都可以直接从 conntrack 中提取,为何还要做在 conntrack 前面呢?
我想的是,如果做在前面,那是不是就不要 conntrack 机制了,如果要,那们实际要做两次统计,自己一次,conntrack 一次,得不偿失
为什么不考虑直接挂在 conntrack 流程后面呢?

论坛徽章:
36
IT运维版块每日发帖之星
日期:2016-04-10 06:20:00IT运维版块每日发帖之星
日期:2016-04-16 06:20:0015-16赛季CBA联赛之广东
日期:2016-04-16 19:59:32IT运维版块每日发帖之星
日期:2016-04-18 06:20:00IT运维版块每日发帖之星
日期:2016-04-19 06:20:00每日论坛发贴之星
日期:2016-04-19 06:20:00IT运维版块每日发帖之星
日期:2016-04-25 06:20:00IT运维版块每日发帖之星
日期:2016-05-06 06:20:00IT运维版块每日发帖之星
日期:2016-05-08 06:20:00IT运维版块每日发帖之星
日期:2016-05-13 06:20:00IT运维版块每日发帖之星
日期:2016-05-28 06:20:00每日论坛发贴之星
日期:2016-05-28 06:20:00
29 [报告]
发表于 2009-01-07 12:53 |只看该作者
为什么不考虑直接挂在 conntrack 流程后面呢?


昨晚和同时讨论的时候,他也这么说。

如果在某种情况下,我对数据包的处理是在PREROUTING之前,这个时侯想去统计的话,是不是没法借用conntrack了。

论坛徽章:
0
30 [报告]
发表于 2009-01-07 13:29 |只看该作者
原帖由 platinum 于 2009-1-7 11:55 发表

统计每个 IP 的连接数、字节流量控制,这些都可以直接从 conntrack 中提取,为何还要做在 conntrack 前面呢?
我想的是,如果做在前面,那是不是就不要 conntrack 机制了,如果要,那们实际要做两次统计,自 ...


是的,我也想到用这个了,但不知道怎么下手,我是新从windows下转过来的,因为工作中一般只在windows下面做,linux玩得并不多,特别是动手能力更菜
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP