Хакерский (но эффективный) способ отладки dhclient на многих платформах Linux - включить трассировку bash в /sbin/dhclient-script.
dhclient запускает этот скрипт на большинстве вариантов ОС, которые я проверял (RedHat, Debian и т. д.).
Простое добавление -x
к шебангу (первая строка) в этом скрипте должно включить трассировку каждой строки в консоли, например:
#!/bin/bash -x
Тогда вы можете запустить, например,
dhclient -r #release lease
dhclient #re-acquire lease
И вы должны увидеть много выходных данных, не только из dhclient-script, но и из всех включенных .d
скриптов в /etc /dhcp *.
Вывод трассировки должен позволить вам выяснить, что происходит и какие решения принимает код (обращайтесь к самому сценарию, просматривая вывод).
Обычно вы можете вывести входные данные (например, параметры, включая IP, GATEWAY и т.д.), Полученный сценарием из этих выходных данных, но если нет, вы можете временно добавить что-то подобное в сценарий непосредственно перед выходом:
env | logger -t dhclient-debugging
Затем проверьте ваш журнал после запуска dhclient (/var/log/messages или /var/log/syslog)