使用 Google Chrome 时无法使用 ndpi-netfilter 识别 YouTube 流量

使用 Google Chrome 时无法使用 ndpi-netfilter 识别 YouTube 流量

我已经ndpi-netfilter在 Ubuntu 上安装了,我需要使用 tc 模块将 youtube 流量调整为 100kbps。我通过 iptables 将所有 youtube 流量归为一类,并应用 tc 类来调整流量。

当我使用 Firefox 时它运行良好,但当我从 Google Chrome 访问 youtube 时它不起作用。

ndpi-netfilter下面是和的规则和命令iptables

$ sudo tc qdisc add dev eth1 root handle 1: htb default 10  
$ sudo tc class add dev eth1 parent 1: classid 1:1 htb rate 1Mbps  
$ sudo tc class add dev eth1 parent 1:1 classid 1:10 htb rate 100kbps ceil 100kbps prio 10

$ sudo iptables -t mangle -A POSTROUTING -s 192.168.200.27 -m ndpi --youtube -j CLASSIFY --set-class 1:10  
$ sudo iptables -t mangle -A POSTROUTING -d 192.168.200.27 -m ndpi --youtube -j CLASSIFY --set-class 1:10  

有人知道如何解决这个问题吗?

答案1

ndpi-netfilter 是否处理 Chrome 用于加载 YouTube 视频的 QUIC 协议?您可以尝试在 iptables 输出链中阻止 UDP/443,以强制 Chrome 使用 TCP/443,看看它是否能解决您的问题。

答案2

我发现YouTube在Google Chrome浏览器上使用QUIC协议。

我通过在 iptables 中插入 QUIC Drop 规则成功解决了我的问题。

$ sudo iptables -I POSTROUTING -m ndpi --quic -j DROP

相关内容