12.6.2 获取域名的 MX 记录
另一个 DNS 请求常见的作用是获取域名的 MX 记录。MX 记录指定域名的邮件服务。MXrecords.go 工具将用 Go 履行这一任务。
MXrecords.go 工具的第一部分展示在下面的 Go 代码中:
package main
import (
"fmt"
"net"
"os"
)
func main() {
arguments := os.Args
if len(arguments) == 1 {
fmt.Println("Need a domain name!")
return
}MXrecords.go 的第二部分包含如下 Go 代码:
domain := arguments[1]
MXs, err := net.LookupMX(domain)
if err != nil {
fmt.Println(err)
return
}
for _, MX := range MXs {
fmt.Println(MX.Host)
}
}MXrecords.go 的工作方式与上节的NXrecords.go类似。唯一的不同是使用 net.LookupMX() 函数替代 net.LookupNS() 函数。
执行 MXrecords.go 将产生如下输出:
再次,您可以在 host(1) 工具的帮助下验证前面输出的有效性:
Last updated