From 262dcb1dffbdf90cbc958f242eb96da9cd52bdb1 Mon Sep 17 00:00:00 2001 From: Cuong Manh Le Date: Thu, 2 Mar 2023 09:16:51 +0700 Subject: [PATCH] cmd/ctrld: check for ipv6 listen local Since when the machine may not have external ipv6 capability, but still can do ipv6 network on local network. --- cmd/ctrld/dns_proxy.go | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/cmd/ctrld/dns_proxy.go b/cmd/ctrld/dns_proxy.go index 4a428a4..4e67df6 100644 --- a/cmd/ctrld/dns_proxy.go +++ b/cmd/ctrld/dns_proxy.go @@ -57,14 +57,16 @@ func (p *prog) serveUDP(listenerNum string) error { // On Windows, there's no easy way for disabling/removing IPv6 DNS resolver, so we check whether we can // listen on ::1, then spawn a listener for receiving DNS requests. - if runtime.GOOS == "windows" && ctrldnet.SupportsIPv6() { + if runtime.GOOS == "windows" && ctrldnet.SupportsIPv6ListenLocal() { go func() { s := &dns.Server{ Addr: net.JoinHostPort("::1", strconv.Itoa(listenerConfig.Port)), Net: "udp", Handler: handler, } - _ = s.ListenAndServe() + if err := s.ListenAndServe(); err != nil { + mainLog.Error().Err(err).Msg("could not serving on ::1") + } }() }