主机名如何在无需添加其他名称的情况下发生变化?

主机名如何在无需添加其他名称的情况下发生变化?

我想访问所有子域名而不需要手动添加

我尝试过但不起作用

127.0.0.6 *.azka.dev

127.0.0.1   localhost
127.0.1.1   noob-Modern-14-B5M

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

# custom domain

127.0.0.6 azka.dev
127.0.0.6 azka.azka.dev
127.0.0.6 api.azka.dev
127.0.0.6 heroku.azka.dev
127.0.0.6 *.azka.dev

答案1

/etc/hosts仅将固定 IPv4/v6 地址映射到固定名称,反之亦然。其语法中没有可用的通配符。

如果相当简单的方法/etc/hosts不足以满足您的要求,您基本上有两种选择:

  • 安装并配置为本地容器​​/虚拟机提供名称的替代主机名解析插件(查看您的发行版是否有libnss-*可用的软件包)。nss-*例如,Debian 有libnss-docker对于 Docker 容器libnss-mymachines对于由以下人员管理的容器systemd-machined。如果您选择的发行版中有一个预先存在的插件可以满足您的要求,这可能是最简单的方法:只需安装一个包并编辑hosts:文件行/etc/nsswitch.conf,然后就完成了。

  • 安装本地 DNS 服务器(例如dnsmasqBIND)并将其配置为对您的私有域具有权威性,并将任何其他请求转发到您用作真正 DNS 解析器服务器的任何服务器。这需要更多的工作,并且需要对 DNS 服务器管理有基本的了解 - 但随后您将拥有可用的 DNS 的所有功能。

相关内容