众所周知,我们可以在/ etc / hosts中添加'ip host'项来模拟DNS的名称解析,现在问题是,我可以使用/ etc / hosts进行反分辨率,从ip到主机名吗?或者还有其他方便的方法吗?谢谢!
答案 0 :(得分:26)
也许。它取决于您用于执行查找的工具以及在计算机上解析的配置。
例如,如果“etc”位于/etc/nsswitch.conf的hosts部分中,gethostbyaddr()将检查/ etc / hosts
但请注意,并非所有工具都会执行本地解析,例如“host”命令,因此它完全取决于您尝试执行查找的方式。
答案 1 :(得分:4)
没有。这只能在DNS服务器上完成。
答案 2 :(得分:0)
是的,你可以。如果使用dnsmasq,则可以通过多种方式干预前向查找到127.0.0.1,从127.0.0.1反向查找到主机。例如,如果您的主机名是host1.mydomain.com,其真实IP地址为192.168.1.12,那么您可以通过在dnsmasq配置文件中执行以下操作来获取127.0.0.1以解析它: 主机记录= host1.mydomain.com,127.0.0.1
前向干扰可以通过多种方式完成,这里有一个: 别名= 192.168.1.12,127.0.0.1
显然你需要正确设置其余的dnsmasq才能转发到真正的DNS服务器......但这很简单
答案 3 :(得分:0)
是的。如果应用程序使用名称服务交换库(大多数应用程序都使用),并且将/etc/nsswitch.conf
配置为使用以下行来解析/etc/hosts
中的IP,它将自动执行此操作:
hosts: files dns
您可以使用以下任一选项测试反向名称解析:
getent hosts 127.0.0.1
或
resolveip 127.0.0.1