你好,可以通过以下代码获取操作系统自身使用的DNS地址:
package main
import (
"fmt"
"net"
)
func main() {
resolvConf, err := net.ResolvConf()
if err != nil {
fmt.Println("Error: ", err)
return
}
for _, nameserver := range resolvConf.Servers {
fmt.Println(nameserver)
}
}
上述代码中,我们首先通过 net.ResolvConf()
函数获取操作系统的 DNS 配置信息,并将其存储在变量 resolvConf
中。然后我们遍历该配置信息中的所有 DNS 服务器地址,并输出它们。
需要注意的是,如果操作系统没有配置任何 DNS 服务器地址,则 resolvConf.Servers
将返回一个空数组。