我在 vSphere 集群中主要运行 Ubuntu VM,其中 VLAN 由 Windows DHCP 和 DNS 管理。从 Ubuntu VM 中,我可以更新 Windows DNS 中的 DNS 记录,以将动态 IP 指向其主机名(在 中设置/etc/hostname
),并dhcp-identifier: mac
在 中添加/etc/netplan/00-installer-config.yaml
:
cat /etc/netplan/00-installer-config.yaml
# This is the network config written by 'subiquity'
network:
ethernets:
ens160:
dhcp4: true
dhcp-identifier: mac
version: 2
经过这些修改后,调用还会dhclient -r
更新 DNS 记录以指向新 dhcp 分配的 IP 地址。
但现在我想在 CentOS 7 VM 中实现相同的 DNS 更新功能。首先,我设置/etc/hostname
并myhost.example.tld
重新启动机器。之后,我尝试更改以下几个变量/etc/sysconfig/network-scripts/ifcfg-ens192
:
- 设置
MACADDR
为preserve
或permanent
- 設定
DHCP_HOSTNAME
為myhost
但不是DHCP_FQDN
- 設定
DHCP_FQDN
為myhost.example.tld
但不是DHCP_HOSTNAME
每次对 ifcfg-ens192 进行更改后都会调用dhclient -r ens192; dhclient ens192
并重新启动。
答案1
我刚刚找到了解决方案。需要创建/etc/dhcp/dhclient.conf
并添加send fqdn.fqdn = gethostname();
。之后,adhclient -r; dhclient
在 DHCP* 消息中发送主机名。