-
Notifications
You must be signed in to change notification settings - Fork 288
Open
Description
大神,能帮忙看看这个功能:删除返回结果中cname域名
之前有人在上游提过这个功能,详见IrineSistiana/mosdns#256
主要因为在linux环境下,分流或者prefer_ipv4时,第二次查询的cname 不在定义的列表里,造成功能失效。
还有人写了一个插件,w22gb8/mosdns@ed3ede2
只是很久没有update了,不知道还支持现在5.3.3版本不,我不懂go语言,大神有时间看看能否修改完善下生成一个patch实现?
谢谢。
附:Linux 系统中常用的 DNS 解析器(如 glibc 的 getaddrinfo 或 systemd-resolved)在查询域名时,通常会按以下步骤进行:
第一次查询 A 记录(IPv4 地址)。
如果返回包含CNAME 记录(别名记录),解析器会提取 CNAME 指向的目标域名。
第二次查询 AAAA 记录(IPv6 地址)时,使用的是 CNAME 指向的目标域名,而不是原始输入的域名。
这种行为是 Linux DNS 解析器设计的标准行为,遵循 RFC 1034 和 RFC 1035 的 DNS 规范。这种行为的根本原因在于 Linux 系统通常会更积极地遵循 DNS 协议中的CNAME(Canonical Name)记录,解析器会将后续查询基于 CNAME 的目标域名继续进行,以确保查询的是实际的资源记录。
windows 两次查询都只使用原始域名。
Metadata
Metadata
Assignees
Labels
No labels