搜索 社区服务 统计排行 帮助
  • 1065阅读
  • 8回复

[求助]关于iptables+tc做流量限制的问题

楼层直达
级别: 光明使者
注册时间:
2003-01-28
在线时间:
0小时
发帖:
27818
— 本帖被 sakuraahn 执行锁定操作(2012-07-07) —
以前一直用iptables的连接数来限制,情况不理想而且浪费带宽 所以想换成tc,无奈一窍不通= =

网络情况是eth0外网 eth1内网,且绑定3个ip地址(192.168.0.254和1.254与2.254) 只对下载流量进行限制

#tc设置如下
tc qdisc add dev eth1 root handle 1: htb default 20
tc class add dev eth1 parent 1: classid 1:1 htb rate 1000Mbit
tc class add dev eth1 parent 1:1 classid 1:10 htb rate 256kbit ceil 128kbit prio 1
tc class add dev eth1 parent 1:1 classid 1:30 htb rate 384kbit ceil 512kbit prio 2
tc class add dev eth1 parent 1:1 classid 1:20 htb rate 128kbit ceil 256kbit prio 3
tc class add dev eth1 parent 1:1 classid 1:40 htb rate 512kbit ceil 2048kbit prio 4
tc class add dev eth1 parent 1:1 classid 1:50 htb rate 128kbit ceil 512kbit prio 5
#局域网流量
tc class add dev eth1 parent 1:1 classid 1:60 htb rate 1000Mbit prio 6
tc qdisc add dev eth1 parent 1:10 handle 10: sfq perturb 10
tc qdisc add dev eth1 parent 1:20 handle 20: sfq perturb 10
tc qdisc add dev eth1 parent 1:30 handle 30: sfq perturb 10
tc qdisc add dev eth1 parent 1:40 handle 40: sfq perturb 10
tc qdisc add dev eth1 parent 1:50 handle 50: sfq perturb 10
tc qdisc add dev eth1 parent 1:60 handle 60: sfq perturb 10
tc filter add dev eth1 protocol ip parent 1:0 handle 1 fw flowid 1:10
tc filter add dev eth1 protocol ip parent 1:0 handle 2 fw flowid 1:20
tc filter add dev eth1 protocol ip parent 1:0 handle 3 fw flowid 1:30
tc filter add dev eth1 protocol ip parent 1:0 handle 4 fw flowid 1:40
tc filter add dev eth1 protocol ip parent 1:0 handle 5 fw flowid 1:50
tc filter add dev eth1 protocol ip parent 1:0 handle 6 fw flowid 1:60


#iptables设置如下
#标记特殊程序 比如wow.....:o
iptables -A PREROUTING -t mangle -p tcp -s 192.168.2.249 -m multiport --ports 1119,3724,6113 -j MARK --set-mark 1
iptables -A PREROUTING -t mangle -p tcp -s 192.168.0.0/24 -m multiport --ports 1119,3724,6113 -j MARK --set-mark 1
iptables -A PREROUTING -t mangle -p icmp -j MARK --set-mark 1
iptables -A PREROUTING -t mangle -p tcp -m tcp --tcp-flags SYN,RST,ACK SYN -j MARK --set-mark 2
#192.168.0.1-192.168.0.254 80端口
iptables -A PREROUTING -t mangle -p tcp -s 192.168.0.0/24 -m multiport --ports 80 -j MARK --set-mark 3
#其余流量
iptables -A PREROUTING -t mangle -s 192.168.0.0/24 -j MARK --set-mark 2
#192.168.1.1-192.168.1.254 80端口
iptables -A PREROUTING -t mangle -p tcp -s 192.168.1.0/24 -m multiport --ports 80 -j MARK --set-mark 4
#其余流量
iptables -A PREROUTING -t mangle -s 192.168.1.0/24 -j MARK --set-mark 5
#局域网流量
iptables -A PREROUTING -t mangle -i ! eth0 -j MARK --set-mark 6
#大于1024的包和没有被mark的
iptables -A PREROUTING -t mangle -p tcp -m length --length 1024: -j MARK --set-mark 4
iptables -A PREROUTING -t mangle -j MARK --set-mark 4



以上设置是否正确(合理)? 应该是有问题的....但是一时找不出所在>_<...........汗
因为跨IP段传输,如192.168.0.1局域网传输文件到192.168.1.1速度不正常(<100k
iptables -A PREROUTING -t mangle -j MARK --set-mark 4
上面那些未符合规则而没有被标注的包,应该根据这条规则被标注到4
问题就在于流量显示有很大一部分流量(包)被标注到了4 是我上面的规则写错了么?错在哪里呢-_-




或者谁能给点这方面有用资料的,丢个链接也成[/han] 麻烦了|||

There can be no better way of knowing

In a world beyond controlling
Are you gonna deny the saviour in front of your eyes?
Stare into the night power beyond containing
Are you going to remain a slave for the rest of your life?
Give in to the night
级别: 天使
注册时间:
2002-06-28
在线时间:
3402小时
发帖:
36494
只看该作者 1楼 发表于: 2010-04-06
TC原来不是Turbo C啊

级别: 小朋友
注册时间:
2003-06-03
在线时间:
46小时
发帖:
15796
只看该作者 2楼 发表于: 2010-04-06
看到荔枝D,进来踹一脚。。。。。。。。。。

只要让我化身为神奇的扫帚,只要让我穿梭飞翔在虹彩漫漫的月圆之夜,只要这么一次,一次就好。。。。。
朱朱家谱:
LG:颓颓
好姊妹:Sun_Star(阿拉阿妹~)
MM:语扬、小未、小隐、MIKI、小望(女的那个)、公主
DD:皮蛋、小松、岚、MAX、柯南(荔枝)、犬叉叉 、小U、小宇、绯绯、狼(士多)、小爆、小望(男的那个)、YUGIWU、牛牛、小黑
GG:雷、小科、南南
JJ:KOKO 外公:6N 爸爸:鲨鲨
大叔:蚊子 女儿:娃娃、怜、织织
级别: 光明使者
注册时间:
2003-01-28
在线时间:
0小时
发帖:
27818
只看该作者 3楼 发表于: 2010-04-06
引用
最初由 atkio 发布
TC原来不是Turbo C啊

http://en.wikipedia.org/wiki/Tc

Computers

* tc, command-line utility used configure network traffic control in the Linux kernel.
* .tc, the Internet country code top-level domain (ccTLD) for Turks and Caicos Islands
* TrueCrypt, disk encryption software
* Trusted Computing, a scheme for adding additional controls on what computers may or may not do into hardware or software
* Turbo C, software development program by Borland
[/TX]
排名不分先后.........
引用
最初由 zoeva 发布
看到荔枝D,进来踹一脚。。。。。。。。。。

好歹是求助贴- - 轻点c[/han]

There can be no better way of knowing

In a world beyond controlling
Are you gonna deny the saviour in front of your eyes?
Stare into the night power beyond containing
Are you going to remain a slave for the rest of your life?
Give in to the night
级别: 工作组
注册时间:
2002-09-30
在线时间:
7小时
发帖:
21275
只看该作者 4楼 发表于: 2010-04-06
看完後,整個人暈倒了...
荔枝抱歉了,解決不能...= =

级别: 精灵王
注册时间:
2004-11-11
在线时间:
66小时
发帖:
2722
只看该作者 5楼 发表于: 2010-04-06
虽然我们公司做这东西,但我看完后依然解决不能

不同厂家的路由器、交换机配制方法都不一样
甚至同一个厂家不同档次的设备,配制方法也都完全不同

楼主这个问题不是太明确

如果用linux的PC/服务器装软件限流的话,根据我的经验无论什么软件都不能精确限流

级别: 新手上路
注册时间:
2002-08-15
在线时间:
283小时
发帖:
17157
只看该作者 6楼 发表于: 2010-04-07
网络管理。。。这个要学一下。。。

你的微笑
级别: 光明使者
注册时间:
2003-01-28
在线时间:
0小时
发帖:
27818
只看该作者 7楼 发表于: 2010-04-09
解决了 有些包被重复mark了 配合layer7效果不错

引用
最初由 卿卿雅儿 发布
虽然我们公司做这东西,但我看完后依然解决不能

不同厂家的路由器、交换机配制方法都不一样
甚至同一个厂家不同档次的设备,配制方法也都完全不同

楼主这个问题不是太明确

如果用linux的PC/服务器装软件限流的话,根据我的经验无论什么软件都不能精确限流

我觉得我的问题和传输层相关和链路层无关

笑 如果不能精确限流,那网上那么多服务器还活不活了:o
ps:tc不是软件

There can be no better way of knowing

In a world beyond controlling
Are you gonna deny the saviour in front of your eyes?
Stare into the night power beyond containing
Are you going to remain a slave for the rest of your life?
Give in to the night
级别: 光明使者
注册时间:
2002-12-02
在线时间:
3629小时
发帖:
12559
只看该作者 8楼 发表于: 2010-04-09
以我的经验。。。。。运算能力差的设备要做到精确限流很难。。。。。这个方案是靠CPU算的。。。。。

来た、見た、勝った!

「花は桜木、人は武士」——一休宗純

燃えましょう!不死鳥!

俺は自分の戦争を始めた、俺は刀だ、俺の敵を必ず一刀両断にする。

昔は空を自由に飛ぶ鳥だったが、翼に矢を受けてしまってな...

小楼春雨伊人,清风樱舞留香。

免费VPN,支持android,如无法访问请先使用Hotspot Shield
http://tenacy-free.com/

Blog
http://www.wujunjie.me

为了防止某些想法被遗忘,也为了便于整理,会贴些疯言疯语——拒绝跨省~O~