OpenVPN 限制流量带宽

公司安装了 openvpn ,带来方便,但是也有很多不便的地方,机房的总带宽就那么多。

很多人共用 vpn 的时候,就会抢占带宽。

那么,我们需要限制一下,限制 openvpn 所能使用的带宽,避免抢占 WEB 的带宽

做法如下:

由于我们不是要单独限制某一个 openvpn 用户,而是限制整体,所以简单用 TC 就可以了

1#!/bin/sh
2tc qdisc del dev tun0 root  
3tc qdisc add dev tun0 root handle 1: htb default 1
4tc class add dev tun0 parent 1: classid 1:1 htb rate 30Mbit ceil 30Mbit

解释一下:

  • 我们 openvpn 启的是 tun0 ,所以限制的对象就是 dev tun0
  • 首先第一行清除 tun0 的根队列
  • 然后第二行建立 tun0 的 root 根队列为 1:0 htb ,缺省是1:1的子队列
  • 最后一行,第三行建立 1:1 的子队列,带宽限制是 30Mbit ,注意这里是大B,就是网络术语中的带宽,换算成小b的话,需要除以8

效果很明显,直接被限制住(41兆而不是30M是因为这台机器是虚机,实体机上还有别的流量):

Float Left


本站博客的由来以及搭建使用教程
使用IPSET封掉某个国家整个的访问