OpenWrt | 使用 nftables 规则禁用小明投影仪内置 DoT 服务的流量

上篇文章详细介绍了通过抓包分析的过程,发现小明投影仪因为内置了 DoT 服务,通过阿里云的 DNS 服务去解析域名,从而导致无法解析本地域名,而无法使用域名连接 SMB 服务,并介绍如何通过 OpenWrt 的防火墙配置解决此问题:https://blog.csdn.net/TeleostNaCl/article/details/156135648

解决方案是通过 OpenWrt 防火墙,将小明投影仪的 DoT 流量拦截即可 。

但是,在 OpenWrt 防火墙是在 forward 链上进行拦截的,如果设备上有其他影响防火墙的插件,会导致以上防火墙规则不生效。因此本文在前文的基础上,补充使用 nftables 规则禁用小明投影仪内置 DoT 服务的流量。

首先,我们可以使用以下命令验证 nftables 是否可以生效。

shell 复制代码
# 1. 创建 table
nft add table inet filter

# 2. 创建 chain
nft add chain inet filter reject_xiaoming_dot { type filter hook prerouting priority -300 \; }

# 3. 针对 TCP 853 的 DoT 拒绝(MAC 匹配)
nft add rule inet filter reject_xiaoming_dot ether saddr ${mac地址} tcp dport 853 reject with tcp reset

验证通过之后,我们可以在 /etc/nftables.d 编写自动应用的 nft 规则文件 10-reject-xiaoming-dot.nft,内容如下:

shell 复制代码
chain reject_xiaoming_dot {
    type filter hook prerouting priority -300; policy accept;

    ether saddr ${mac地址} tcp dport 853 reject with tcp reset
}

我们可以在 luci > 状态 > 防火墙 看到我们新增的一条规则,其在路由最早的 prerouting,以便及时的被拦截。

相关推荐
中屹指纹浏览器17 小时前
中屹指纹浏览器多场景技术适配与接口封装实践
经验分享·笔记
宏集科技工业物联网18 小时前
预防性维护与能源效率:SCADA 在工业运营中的关键作用
经验分享·scada·预测性维护·工业自动化·能耗管理
三流架构师1 天前
Matlab资源合集
经验分享
changyunkeji1 天前
长云科技机动绞磨
经验分享·科技
changyunkeji1 天前
电缆敷设机就找长云科技
经验分享·科技
三水不滴1 天前
Apache RocketMQ的原理与实践
经验分享·apache·rocketmq
孞㐑¥1 天前
算法—链表
开发语言·c++·经验分享·笔记·算法
晚霞的不甘1 天前
Flutter for OpenHarmony智能穿搭推荐:构建一个实用又美观的个性化衣橱助手
前端·经验分享·flutter·ui·前端框架
源代码•宸1 天前
Golang面试题库(Interface、GMP)
开发语言·经验分享·后端·面试·golang·gmp·调度过程
相思难忘成疾1 天前
华为HCIP:MPLS实验
网络·华为·智能路由器·hcip