Linux系统服务器站点流量限制的方案


#! /bin/sh

  # Simple bandwidth limiter - <[email]j@4u.net[/email]>

  # Change this to your link bandwidth

  # (for cable modem, DSL links, etc. put the maximal bandwidth you can

  # get, not the speed of a local Ethernet link)

  REAL_BW='10Mbit'

  # Change this to the bandwidth you want to allocate to WEB.

  # We're talking about megabits, not megabytes, so 80Kbit is

  # 10 Kilobytes/s

  WEB_BW='1000Kbit'

  # Change this to your physical network device (or 'ppp0')

  NIC='eth0'

  tc qdisc del dev "$NIC" root 2> /dev/null

  tc qdisc add dev "$NIC" root handle 1: cbq \

  bandwidth "$REAL_BW" avpkt 1000

  tc class add dev "$NIC" parent 1: classid 1:1 cbq bandwidth "$REAL_BW" \

  rate "$REAL_BW" maxburst 1 avpkt 1000

  tc class add dev "$NIC" parent 1:1 classid 1:10 cbq \

  bandwidth "$REAL_BW" rate "$WEB_BW" maxburst 1 avpkt 1000 bounded

  tc qdisc add dev "$NIC" parent 1:10 sfq perturb 10

  tc filter add dev "$NIC" parent 1: protocol ip handle 1 fw classid 1:10

  iptables -t mangle -A OUTPUT -p tcp ——sport 80 -j MARK ——set-mark 1

 

本文作者:
« 
» 
快速导航

Copyright © 2016 phpStudy | 豫ICP备2021030365号-3