Skip to content

dns中的queryStrategy能否设计成 可以在每个server中单独设置,以避免不需要的AAAA查询 #1953

@GeorgeRudd

Description

@GeorgeRudd

本地和vps都有ipv6,日常使用时,只需要Netflix相关域名走ipv6,其余都走ipv4。

根据这里 https://www.v2fly.org/config/dns.html#dnsobject 建议没有 IPv6 网络的用户,设置为 UseIPv4。本选项与 freedom 协议 outbound 中的 domainStrategy 选项优先级相同,建议同时设置为 UseIPv4。如果queryStrategy设置为 UseIPv4,而 freedom 协议 outbound 中的 domainStrategy 选项设置为 UseIPv6,会导致从 freedom 协议 outbound 发出的连接的 DNS 查询被 Go 运行时接管,进而导致 DNS 泄漏;反之同理。

所以服务端只能这样设置

{
	"dns": {
		"servers": [
			"8.8.8.8"
		]
	},
	"outbounds": [
		{
			"tag": "direct-out",
			"protocol": "freedom",
			"settings": {
				"domainStrategy": "UseIPv4"
			}
		},
		{
			"tag": "netflix-out",
			"protocol": "freedom",
			"settings": {
				"domainStrategy": "UseIPv6"
			}
		}
	]
}

但是这样访问大多数网站都是同时查询A和AAAA,而查询AAAA需要花费上百ms。能否分开设置queryStrategy?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions