Использует ли Ubuntu 18.04 dhclient?

Я пытаюсь выяснить, как настроить мой DHCP-клиент на сервере Ubuntu 18.04.

У меня есть следующая конфигурация netplan, пришедшая из cloud-init:

network:
    version: 2
    ethernets:
        ens160:
            dhcp4: true
            match:
                macaddress: 02:dc:01:00:38:4c
            set-name: ens160

Это, кажется, правильно настраивает мой сетевой интерфейс с IP-адресом, DNS, шлюзом по умолчанию и доменом поиска. Однако мне интересно, как получить имя хоста из DHCP. Я искал dhclient, который предоставляет несколько удобных хуков, которые я могу использовать, однако не похоже, что вызываются хуки dhclient. Я заметил, что cloud-init вызывает dhclient в соответствии с журналами, но как своего рода "песочница", которая, похоже, игнорирует хуки.

Я также заметил, что systemd-networkd сообщает о некоторой активности DHCP в отношении аренды DHCP.

Может ли кто-то пролить свет на этот процесс?

1 ответ

Я стал больше копаться в этом, поэтому оставил некоторую информацию другим.

Похоже, что Ubuntu 18.04 больше не использует dhclient, который вызывался в режиме демона ifupdown, Вместо, systemd-networkd заботится обо всех вещах DHCP. Чтобы создать DHCP-хуки, мы должны теперь использовать systemd (Вы можете увидеть пример того, как это делается, посмотрев на ntpфайлы: /lib/systemd/system/ntp-systemd-netif.{path|service}).

Как уже упоминалось в этом вопросе, cloud-init вызывает dhclient больше в изолированной программной среде, но только для некоторых конкретных облаков.

С точки зрения установки имени хоста, могут быть конфликты между systemd-networkd а также cloud-init, Посмотрите, как Cloud-init nocloud динамически устанавливает имя хоста из dhcp.

Другие вопросы по тегам