Я использую Linux (Void linux, я думаю, это не имеет значения) в качестве бездискового хоста:
dhcp -> PXE -> iPXE -> iscsi -> grub -> kernel / initramfs -> dhcp -> iscsi -> init
Система успешно загружается и работает нормально.
Но есть проблема с dhclient. Это не может продлить срок аренды IP. И хост останавливается, когда время аренды истекло.
Настройки IP-адреса (br0 строится на этапе initramfs):
2: enp4s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master br0 state UP group default qlen 1000
link/ether xx:xx:xx:xx:xx:xx brd ff:ff:ff:ff:ff:ff
3: br0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
link/ether xx:xx:xx:xx:xx:xx brd ff:ff:ff:ff:ff:ff
inet 192.168.0.11/24 brd 192.168.0.255 scope global dynamic br0
valid_lft 5317sec preferred_lft 5317sec
inet6 fe80::xxxx:xxxx:xxxx:xxxx/64 scope link
valid_lft forever preferred_lft forever
Я запускаю dhclient, но он не обновляет время аренды.
[root@void-iscsi ~]# dhclient -d br0
Internet Systems Consortium DHCP Client 4.4.1
Copyright 2004-2018 Internet Systems Consortium.
All rights reserved.
For info, please visit https://www.isc.org/software/dhcp/
Listening on LPF/br0/xx:xx:xx:xx:xx:xx
Sending on LPF/br0/xx:xx:xx:xx:xx:xx
Sending on Socket/fallback
DHCPREQUEST for 192.168.0.11 on br0 to 255.255.255.255 port 67
DHCPACK of 192.168.0.11 from 192.168.0.1
RTNETLINK answers: File exists
bound to 192.168.0.11 -- renewal in 2704 seconds.
Думаю, из-за этого
RTNETLINK answers: File exists
Это, вероятно, означает, что IP уже используется.
Звучит немного странно, конечно, он используется. И единственный хост использует этот IP именно этот хост (где запускается dhclient).
Возможно ли как-то просто заставить dhclient продлить срок аренды? Несмотря на то, что IP уже назначен на интерфейсе, где выполняется dhclient.
Я пытался удалить файл dhclient.lease, это не помогло.