@@ -52,9 +52,6 @@ func FrontendStatic() fs.FS {
5252 return fsys
5353}
5454
55- // useAwldns is used for tests
56- var useAwldns = true
57-
5855// @title Anywherelan API
5956// @version 0.1
6057// @description Anywherelan API
@@ -154,7 +151,7 @@ func (a *Application) Init(ctx context.Context, tunDevice tun.Device) error {
154151 go a .AuthStatus .BackgroundExchangeStatusInfo (a .ctx )
155152 go a .SOCKS5 .ServeConns (a .ctx )
156153
157- if useAwldns && ! a .Conf .VPNConfig .DisableVPNInterface {
154+ if ! a . Conf . DNS . DisableDNS && ! a .Conf .VPNConfig .DisableVPNInterface {
158155 interfaceName , err := a .vpnDevice .InterfaceName ()
159156 if err != nil {
160157 a .logger .Errorf ("failed to get TUN interface name: %v" , err )
@@ -324,7 +321,14 @@ func NewDNSService(conf *config.Config, eventbus awlevent.Bus, ctx context.Conte
324321
325322func (a * DNSService ) initDNS (interfaceName string ) {
326323 var err error
327- a .dnsResolver = awldns .NewResolver (awldns .DNSAddress )
324+ dnsAddr := a .conf .DNS .ListenAddress
325+ dnsHost , _ , err := net .SplitHostPort (dnsAddr )
326+ if err != nil {
327+ a .logger .Errorf ("invalid dns listen address %s: %v" , dnsAddr , err )
328+ return
329+ }
330+
331+ a .dnsResolver = awldns .NewResolver (dnsAddr )
328332 a .upstreamDNS = awldns .DefaultUpstreamDNSAddress
329333 a .refreshDNSConfig ()
330334
@@ -338,7 +342,7 @@ func (a *DNSService) initDNS(interfaceName string) {
338342 tsLogger .Infof (format , args ... )
339343 }, nil , & controlknobs.Knobs {}, interfaceName )
340344 if err != nil {
341- a .logger .Errorf ("create dns os configurator: %v" , err )
345+ a .logger .Errorf ("unable to create dns os configurator: %v" , err )
342346 return
343347 }
344348
@@ -347,7 +351,7 @@ func (a *DNSService) initDNS(interfaceName string) {
347351 panic (err )
348352 }
349353 newOSConfig := dns.OSConfig {
350- Nameservers : []netip.Addr {netip .MustParseAddr (awldns . DNSIp )},
354+ Nameservers : []netip.Addr {netip .MustParseAddr (dnsHost )},
351355 MatchDomains : []dnsname.FQDN {fqdn },
352356 }
353357
0 commit comments