fix(dns): сбрасывать udp-резолверы, если сессия их не задала

Глобальный список переживал сессию, и следующая наследовала резолверы прошлой сессии или сети.
This commit is contained in:
samosvalishe
2026-09-19 23:54:42 +03:00
parent 64f8b63548
commit 4865a73b5f
2 changed files with 7 additions and 2 deletions
+3 -1
View File
@@ -345,7 +345,9 @@ const (
var udpDNSServersPtr atomic.Pointer[[]string]
func init() {
func init() { ResetUDPDNSServers() }
func ResetUDPDNSServers() {
def := []string{
"77.88.8.8:53", "77.88.8.1:53",
"8.8.8.8:53", "8.8.4.4:53",
+4 -1
View File
@@ -187,9 +187,12 @@ func (s *Session) Run(ctx context.Context) (err error) {
log := s.deps.Logger
dnsdial.SetLogger(log)
if s.cfg.DNS.Servers != nil {
if len(s.cfg.DNS.Servers) > 0 {
dnsdial.SetUDPDNSServers(s.cfg.DNS.Servers)
log.Infof("[DNS] using custom UDP servers: %v", s.cfg.DNS.Servers)
} else {
dnsdial.ResetUDPDNSServers()
}
appDialer := dnsdial.AppDialer(s.cfg.DNS.Mode)
dnsdial.InstallGlobalResolver(s.cfg.DNS.Mode)