我正在开发一个网站,并使用 PHP 函数 dns_get_record 从 DNS 服务器获取一些数据。为了正确展示问题,我将首先使用 CentOS 7 展示一个从域获取 NS 记录的示例
命令:dig php.net NS
结果:
;; 答案部分:
php.net。299 IN NS dns4.easydns.info。php.net。299
IN NS dns3.easydns.org。php.net。299
IN NS dns2.easydns.net。php.net。299
IN NS dns1.easydns.com。
此外,当我尝试获取 A 记录时,它会给我正确的结果
但是当我在我的 vagrant box(Ubuntu Homestead)上使用这个命令时我没有得到任何 NS 记录,没有答案部分...
但是,当我对 A 记录执行相同操作时,出现了一个答案。没有任何 NS 的域名怎么能解析为 IP?
此外,当我在 Google Dig 上执行相同操作时,我得到了预期的结果
任何帮助都将非常感激。
答案1
在安装了带有 Laravel/Homestead 的默认 Vagrant 框并重新启动它之后,我需要更改 /etc/resolv.conf - 其中列出了错误的名称服务器。我已将 127.0.0.53 更改为 8.8.8.8,问题就解决了。