在golang中询问LookupTXT函数

时间:2018-04-17 03:26:13

标签: windows go dns

如何更改DNS服务器的IP地址?

在情况下,我在Windows网络设置中设置了Google DNS服务器。

我在Golang中使用LookupTXT函数来获取DNS txt请求。 但LookupTXT参数只是查询字符串。

任何帮助或指示都将受到高度赞赏。谢谢!

1 个答案:

答案 0 :(得分:0)

在这一点上使用golang并不是一件好事。但是,您可以使用允许配置解析程序的第三方DNS程序包。首先安装包:

go get github.com/bogdanovich/dns_resolver

以下是使用它和Google解析器8.8.8.88.8.4.4的示例:

package main

import (
    "log"
    "github.com/bogdanovich/dns_resolver"
)

func main() {
    resolver := dns_resolver.New([]string{"8.8.8.8", "8.8.4.4"})

    // In case of i/o timeout
    resolver.RetryTimes = 5

    ip, err := resolver.LookupHost("google.com")
    if err != nil {
        log.Fatal(err.Error())
    }
    log.Println(ip)
    // Output [216.58.192.46]
}

Source

golang中存在一个未解决的问题,因此希望使用内置net软件包更容易:https://github.com/golang/go/issues/12503。它可能只是一个文档问题,因为现在可能,我只是找不到一个例子。

编辑:实际上该套餐仅支持lookupHosthttps://github.com/bogdanovich/dns_resolver/blob/master/dns_resolver.go#L51-L79

因此需要PR来添加TXT解析器。

第二次编辑:我使用txt查找here制作了一个PR。这个项目多年来没有被触及,所以它可能永远不会被接受。