如何更改 libvirt DHCP 租用时间

How to change libvirt DHCP lease time

我在 Ubuntu 16.04 服务器上使用 QEMU KVM 来管理通过网桥和 NAT 连接的虚拟机。 我发现通过 NAT 连接的虚拟机大约每 20~25 分钟请求一次 DHCP 请求,我想更改 DHCP 租约(或请求?)时间更长。

宿主机的系统日志是这样的:

Oct 28 20:35:33 ubuntu dnsmasq-dhcp[1921]: DHCPREQUEST(virbr0) 192.168.122.174 52:54:00:8e:4d:a2
Oct 28 20:35:33 ubuntu dnsmasq-dhcp[1921]: DHCPACK(virbr0) 192.168.122.174 52:54:00:8e:4d:a2 cdsn-ns3-1
Oct 28 21:02:20 ubuntu dnsmasq-dhcp[1921]: DHCPREQUEST(virbr0) 192.168.122.174 52:54:00:8e:4d:a2
Oct 28 21:02:20 ubuntu dnsmasq-dhcp[1921]: DHCPACK(virbr0) 192.168.122.174 52:54:00:8e:4d:a2 cdsn-ns3-1
Oct 28 21:26:11 ubuntu dnsmasq-dhcp[1921]: DHCPREQUEST(virbr0) 192.168.122.174 52:54:00:8e:4d:a2
Oct 28 21:26:11 ubuntu dnsmasq-dhcp[1921]: DHCPACK(virbr0) 192.168.122.174 52:54:00:8e:4d:a2 cdsn-ns3-1
Oct 28 21:51:40 ubuntu dnsmasq-dhcp[1921]: DHCPREQUEST(virbr0) 192.168.122.174 52:54:00:8e:4d:a2
Oct 28 21:51:40 ubuntu dnsmasq-dhcp[1921]: DHCPACK(virbr0) 192.168.122.174 52:54:00:8e:4d:a2 cdsn-ns3-1
Oct 28 22:13:01 ubuntu dnsmasq-dhcp[1921]: DHCPREQUEST(virbr0) 192.168.122.174 52:54:00:8e:4d:a2
Oct 28 22:13:01 ubuntu dnsmasq-dhcp[1921]: DHCPACK(virbr0) 192.168.122.174 52:54:00:8e:4d:a2 cdsn-ns3-1
Oct 28 22:37:49 ubuntu dnsmasq-dhcp[1921]: DHCPREQUEST(virbr0) 192.168.122.174 52:54:00:8e:4d:a2
Oct 28 22:37:49 ubuntu dnsmasq-dhcp[1921]: DHCPACK(virbr0) 192.168.122.174 52:54:00:8e:4d:a2 cdsn-ns3-1

如果 libvirt 使用 isc-dhcp-server 之类的东西,我可以手动设置租用时间,但我不知道在何处以及如何为 libvirt 更改它。奇怪的是,状态文件“/var/lib/libvirt/dnsmasqvirbr0.status”有一个 "expiry-time" 字段,其时间戳距离当前时间超过 1 小时。

为什么主机显示DHCPREQUEST和DHCPACK这么频繁?如何更改如此频繁的请求间隔?

目前无法为 libvirt 管理的 dnsmasq 配置 DHCP 租用时间。

虽然有正在进行的补丁来添加此功能

https://www.redhat.com/archives/libvir-list/2016-October/msg00561.html

有望很快发布。