diff --git a/internal/app/networkd/pkg/networkd/misc.go b/internal/app/networkd/pkg/networkd/misc.go index cf6210aa9..2c39afedf 100644 --- a/internal/app/networkd/pkg/networkd/misc.go +++ b/internal/app/networkd/pkg/networkd/misc.go @@ -12,6 +12,8 @@ import ( "net" "strings" "text/template" + + talosnet "github.com/talos-systems/talos/pkg/net" ) // filterInterfaceByName filters network links by name so we only mange links @@ -49,6 +51,14 @@ func writeResolvConf(resolvers []string) (err error) { } } + if domain, err := talosnet.DomainName(); err == nil { + if domain != "" { + if _, err = resolvconf.WriteString(fmt.Sprintf("search %s\n", domain)); err != nil { + return fmt.Errorf("failed to add domain search line to resolvconf: %s", err) + } + } + } + log.Println("writing resolvconf") return ioutil.WriteFile("/etc/resolv.conf", []byte(resolvconf.String()), 0644)