本地子域名问题

本地子域名问题

我正在尝试设置本地子域,到目前为止,我已部分成功。我已经设置了一个本地域 - gob.local - 我可以从我的服务器和网络上的其他计算机访问 gob.local。我正在尝试设置 coupon.gob.local,但不太成功。

以下是我的 /etc/hosts 的样子:

127.0.0.1       gob gob.local coupon.gob.local localhost

# The following lines are desirable for IPv6 capable hosts
::1     localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts

我还为 coupon.gob.local 设置了 VirtualHost。如果我在服务器上的浏览器中访问 c​​oupon.gob.local,它就可以正常工作。如果我在网络上的另一台计算机上访问相同的 URL,它就不起作用。同样,gob.local 可以在任何地方工作,所以我不明白 coupon.gob.local 有什么不同,导致它无法工作。

谢谢,杰森

答案1

除非您将该服务器用作网络的 DNS,否则 /etc/hosts 文件与网络上的其他计算机无关。

如果您可以在网络上的其他计算机上导航到 gob.local,并让其调出相关服务器,这是因为它们的 hosts 文件中有一个条目,或者它们正在使用具有该条目的内部 DNS。如果是这种情况,只需找到该 DNS 并为 coupon.gob.local 添加一个额外条目即可。

答案2

.local 域名比较特殊,由 mDNS 解析,由 Avahi(具体来说,是 libnss-mdns 包)实现。

由于您的主机名是 gob,Avahi 会告诉同一链接上的其他机器 gob.local 是您的 ip。这对于其他随机名称不起作用。

您可以通过将其本地链接 IP 添加到 /etc/avahi/hosts 来要求 avahi 发布 coupon.gob.local。127.0.0.1 是机器本地 IP,但您可以从 获得更公开的 IP getent hosts gob.local。另一种方法是设置 DNS 服务器。dnsmasq 是一种可以很好地缩减规模的服务器。

答案3

我的解决方案是设置一个 DNS 服务器。

相关内容