-
Notifications
You must be signed in to change notification settings - Fork 250
Description
Operating system
Windows
System version
10 and 11
Installation type
zip
Version
1.1.1
Description
Summary
On Windows, enabling Routing Settings -> Hijack -> DNS Server causes ThroneCore to fail to load the generated config with:
duplicate inbound tag: dns-in
It appears Throne already generates a built-in DNS inbound, and enabling DNS Server creates another inbound with the same tag dns-in, which makes sing-box reject the config.
Actual result
ThroneCore fails to start and shows:
LoadConfig return error
duplicate inbound tag: dns-in
From the error output, the generated config contains two inbounds with the same tag:
{"listen":"127.0.0.1","listen_port":5533,"tag":"dns-in","type":"direct"}
{"listen":"127.0.0.1","listen_port":53,"tag":"dns-in","type":"direct"}So the config generator creates duplicate inbound tags.
Expected result
Enabling Hijack -> DNS Server should not generate duplicate inbound tags.
If Throne already has a built-in DNS inbound, it should either:
- reuse the existing
dns-in - generate a different tag for the extra DNS inbound
- or avoid creating a second DNS inbound entirely
Additional details
Current related settings observed locally:
core_dns_in_port = 5533direct_dns = localhostremote_dns = tls://8.8.8.8
This suggests Throne already has an internal DNS inbound on port 5533, and enabling DNS Server adds another one on port 53 using the same tag dns-in.
This looks like a config generation bug rather than a user configuration error.
问题概述
在 Windows 上,启用 Routing Settings -> Hijack -> DNS Server 后,ThroneCore 无法加载生成的配置,并报错:
duplicate inbound tag: dns-in
看起来 Throne 本身已经生成了一个内置的 DNS inbound,而开启 DNS Server 后又额外生成了一个同名的 dns-in,导致 sing-box 因 tag 重复而拒绝加载配置。
实际结果
ThroneCore 启动失败,并提示:
LoadConfig return error
duplicate inbound tag: dns-in
从报错中可以看到,生成的配置里同时存在两个相同 tag 的 inbound:
{"listen":"127.0.0.1","listen_port":5533,"tag":"dns-in","type":"direct"}
{"listen":"127.0.0.1","listen_port":53,"tag":"dns-in","type":"direct"}也就是说,配置生成器创建了两个同名的 dns-in。
期望结果
启用 Hijack -> DNS Server 时,不应生成重复的 inbound tag。
如果 Throne 已经内置了一个 DNS inbound,则应当:
- 复用已有的
dns-in - 或给新增的 DNS inbound 使用不同的 tag
- 或者避免重复创建第二个 DNS inbound
补充信息
本地观察到的相关设置如下:
core_dns_in_port = 5533direct_dns = localhostremote_dns = tls://8.8.8.8
这说明 Throne 很可能本来就已经有一个内部 DNS inbound 监听在 5533,而启用 DNS Server 后,又在 53 端口新增了另一个同名 dns-in。
因此这更像是配置生成逻辑的问题,而不是用户配置错误。
Reproduction
- Start Throne
- Enable TUN mode
- Open Routing Settings -> Hijack
- Keep the default/simple DNS settings
- Enable DNS Server
- Apply config / restart service
- 启动 Throne
- 启用 TUN 模式
- 打开 Routing Settings -> Hijack
- 保持默认/简易 DNS 设置
- 启用 DNS Server
- 应用配置或重启服务