单网络接口VPS的带宽管理配置问题咨询
单网络接口VPS的带宽管理配置问题咨询
大家好,我最近在折腾VPS的带宽限制,遇到了一些困惑想请教各位:
我的VPS只有一个物理网络接口ens3(回环接口lo不算在内),我想实现特定流量的带宽限制,思路是创建一个虚拟网络接口,然后给这个虚拟接口配置token bucket filter(TBF)队列规则来限速。
我在Debian 12测试服务器上创建了tun0接口(我知道tun0通常被OpenVPN使用,但我服务器上没装这个服务),执行了以下一系列命令:
# 创建tun0虚拟接口 ip tuntap add dev tun0 mode tun # 配置IP地址 ip addr add 10.0.0.1/24 dev tun0 # 启用接口 ip link set up dev tun0 # 配置NAT规则,把80端口的流量转发到tun0的80端口 iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to 10.0.0.1:80 # 配置源地址转换,让tun0的流量能通过物理网卡出去 iptables -t nat -A POSTROUTING -o enp0s3 -s 10.0.0.0/24 -j MASQUERADE # 给tun0添加TBF队列规则,限制带宽为4mbit tc qdisc add dev tun0 root tbf rate 4mbit burst 128kbit latency 400ms
现在查看tun0的状态,可以看到已经应用了tbf队列规则:
3: tun0: <NO-CARRIER,POINTOPOINT,MULTICAST,NOARP,UP> mtu 1500 qdisc tbf state DOWN group default qlen 500 link/none inet 10.0.0.1/24 scope global tun0 valid_lft forever preferred_lft forever
不过我不确定这个配置是否能正常生效,或者有没有配置疏漏的地方,想请大家帮忙评估下这个思路是否可行,以及当前的配置有没有需要调整的地方?
备注:内容来源于stack exchange,提问作者pkSML
相关产品推荐
相关产品推荐

