用户工具

站点工具


xnix:dnsmasq_patchset

自用 dnsmasq 的补丁集

patch-dnsmasq-try-all-servers-upon-failure

当 dnsmasq 启用 all-servers 时, 将会把请求同时发送到所有上游服务器, 并且采纳最快响应的结果返回给客户端. 但是如果最快响应的结果是 SERVFAIL, dnsmasq 也依然直接返回给客户端.

该补丁的用途是, 上游服务器返回 SERVFAIL 时, 不采纳, 继续尝试其他服务器的结果.

patch-dnsmasq-filter_rr-qtype-64-65

查询 DNS 的 QTYPE 类型为 64(SVCB) 或 65(HTTPS) 时, 其结果返回类型可能是多样化的. RFC 9460

当 dnsmasq 配置 filter_rr= 为 64 或 65 时, 并不能很好挡掉这些请求.

该补丁用途是配置了 filter_rr= 64或65时, 直接返回 NXDOMAIN.

FreeBSD /etc/make.conf

如果需要在 FreeBSD 安装 ports dnsmasq 时自动应用补丁, 在 /etc/make.conf 下添加以下内容. 将其中的路径替换为实际.

.if ${.CURDIR:M*/dns/dnsmasq}
    EXTRA_PATCHES+=/path/patch-dnsmasq-try-all-servers-upon-failure.txt
    EXTRA_PATCHES+=/path/patch-dnsmasq-filter_rr-qtype-64-65.txt
.endif

附件

xnix/dnsmasq_patchset.txt · 最后更改: 2024/05/04 18:57 由 Hshh