Как запустить скрипт, как только сетевой интерфейс создается?

Я использую VirtualBox 5.1 на Ubuntu 16.04, Гостеприимной с некоторым VMs в сети "Host-Only", которая появляется как vboxnet0 сетевой интерфейс в хосте. Я хочу запустить dnsmasq с пользовательской конфигурацией для обслуживания DNS и DHCP на этом vboxnet0 сеть, как только интерфейс создается, который является, когда приложение VirtualBox запущено.

Может инициировать это dnsmasq запуск так или иначе? Через NetworkManager или udev или systemd?

BTW я не хочу использовать VirtualBox встроенный сервер DNS/DHCP по причинам вне объема этого вопроса (чрезвычайно пользовательские опции DHCP, и перенаправил некоторые запросы DNS для VMs).

Также я не могу запустить dnsmasq прежде vboxnet0 создается becuase, с которым это должно быть выполнено --bind-interfaces из-за NetworkManager, уже выполняющего один экземпляр dnsmasq поскольку это владеет целями.

0
задан 17 January 2017 в 23:22

1 ответ

Функциональность запуска определенных команд, когда интерфейс идет вверх / вниз, предоставляется из коробки большинства * nix систем. Однако выполнение команды при создании интерфейса может потребовать некоторых пользовательских сценариев.

Один из способов сделать это (не уверен, что это лучший способ) - написать собственный скрипт, который периодически сканирует выходные данные команды ifconfig и проверяет, содержит ли он запись для vboxnet0, и выполняет вашу собственную команду. если найдена запись для интерфейса vboxnet0.

0
ответ дан 7 November 2019 в 03:39

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

Похожие вопросы: