isc-dhcp-server 没有将域名推送到客户端

isc-dhcp-server 没有将域名推送到客户端

我已经安装了 DHCP 服务器(isc-dhcp 服务器) 在我的 Ubuntu 20.04 上。客户端计算机(也是一台 Ubuntu 20.04 台式机)获得了分配的 IP 地址,但 id 没有获得分配的域名(通过 定义option domain-name "example.local";

我的 dhcpd.conf 文件如下所示:

default-lease-time 600;
max-lease-time 7200;

# If this DHCP server is the official DHCP server for the local
# network, the authoritative directive should be uncommented.
authoritative;


# DHCP configuration for dynamic IP assignment:
subnet 192.168.5.0 netmask 255.255.255.0 {
        option routers                  192.168.5.3;
        option subnet-mask              255.255.255.0;
        option domain-search            "example.local";
        option domain-name-servers      8.8.8.8, 4.4.4.4;
        option domain-name              "example.local";
        range   192.168.5.10   192.168.5.15;
}

# Static IP assignment
host moj-klient-so-statickou-ipeckou {
  hardware ethernet 08:00:27:29:09:9F;
  fixed-address 192.168.5.240;
  server-name "myclient.example.local";
}

ddns-update-style none;

我曾尝试注释掉静态 IP 分配,以尝试动态 IP 分配是否可以解决问题,但结果总是一样的,具体来说,导致客户端计算机上出现此输出(这证明客户端机器没有分配域名):

client@client-VirtualBox:~$ hostname
client-VirtualBox
client@client-VirtualBox:~$ hostname -f
client-VirtualBox
client@client-VirtualBox:~$ hostname -A

client@client-VirtualBox:~$ domainname
(none)
client@client-VirtualBox:~$ dnsdomainname
client@client-VirtualBox:~$ ypdomainname
ypdomainname: Local domain name not set
client@client-VirtualBox:~$ 

有人知道为什么会发生这种情况吗?

谢谢

答案1

ISC domain-nameDHCP 用于 DNS 配置(也是domain-name-servers选项),而不是用于配置本地主机名。此选项导致客户端的 DNS 查找可以忽略域,因此

host mywebsite

被解释为

host mywebsite.example.local

据我所知,没有简单的远程机制来更改主机的内部主机名(对于 Linux/Unices,存储在 中/etc/hostname并由管理员在安装期间配置)。无论如何,即使我们在主机名文件中添加了域,它也不会用于内部处理。在操作系统配置中指定主机名的另一个位置是在文件中/etc/hosts,该文件用于对主机进行静态 DNS 解析,并将主机的 IP 本地地址与主机名关联。

在某些情况下,主机会将自己的名称报告给 DNS 服务器,以便于从其他主机进行解析/访问,但由于这是一种外部的、不安全的操作,并且容易出现名称重复,因此不鼓励这样做(我认为在 Windows AD 中不是这样),并且也不会更改本地配置。

相关内容