- 論壇徽章:
- 0
|
小弟在做路由器的開發(fā)過程中要做一個基于WAN口的流控,具體要求是這樣的:比如內(nèi)網(wǎng)的一個IP為192.168.0.5,路由器有兩個WAN口,當192.168.0.5走WAN1的時候,WAN1對192.168.0.5的流量下行速度為30K,內(nèi)網(wǎng)的其它IP不受192.168.0.5的流量下行速度為30K的限制。當192.168.0.5走WAN2的時候,WAN2對192.168.0.5的流量下行速度為50K,內(nèi)網(wǎng)的其它IP不受192.168.0.5的流量下行速度為50K的限制。小弟的代碼如下:
if [ -n "$host_speed_up" ]; then #上行
/bin/tc class add dev $WAN1_IF parent 1:1 classid $cid cbq bandwidth $ALLBW_UP rate $host_speed_up allot 1514 maxburst $MAXBURST weight $host_weight_up prio $PRIO_2 avpkt 1000 $BOUND 1>/dev/null 2>&1
/bin/tc filter add dev $WAN1_IF parent 1:1 protocol ip prio $PRIO_2 handle $ip_val fw flowid $cid 1>/dev/null 2>&1
fi
if [ -n "$host_speed_down" ]; then #下行
/bin/tc class add dev $LAN_IF parent 1:1 classid $cid cbq bandwidth $ALLBW_DOWN rate $host_speed_down allot 1514 maxburst $MAXBURST weight $host_weight_down prio $PRIO_2 avpkt 1000 $BOUND 1>/dev/null 2>&1
/bin/tc filter add dev $LAN_IF parent 1:1 protocol ip prio $PRIO_2 u32 match ip src "$WAN1_IPADDR" match ip dst "$ip_net.$ip_host" flowid $cid 1>/dev/null 2>&1
fi
#---WAN1_IPADDR為WAN1的IP------
#----ip_net.$ip_host為內(nèi)網(wǎng)的一個IP---
現(xiàn)小弟只插了WAN1口,但是下行速度不起作用啊。還有一個問題就是當同時對WAN1、WAN2都做了流量控制的時候,192.168.0.5的流量怎么疊加在一起呢?求各位大哥幫小弟指點一下。 |
|