Назад | Перейти на главную страницу

Попросите bind9 дождаться, пока интерфейс openvpn не установится

У меня OpenVPN AS запущен как сценарий rc.d. Я хочу, чтобы Bind9 привязывался к виртуальному сетевому интерфейсу, который настраивает OpenVPN.

Однако только после того, как скрипт завершит работу, имена некоторых виртуальных устройств as0t0 и as0t1. Между тем, запущен Bind9 (DNS-сервер), и он не может связываться с этими интерфейсами, поскольку они не существуют в настоящее время.

Изменение зависимостей LSB и номеров Sxx с помощью update-rc.d не помогло, поскольку скрипт openvpn завершается до фактического вызова интерфейсов.

Кажется, что /etc/if-up.d/bind9 существует именно для этой цели, но, видимо, он не запускается при запуске виртуальных сетевых интерфейсов.

Сценарий /etc/if-up.d/bind9 просто выполняет команду rndc reconfig >/dev/null 2>&1 || true.

Кажется, что вы можете настроить конфигурацию сервера OpenVPN, чтобы просто запустить эту команду после запуска демона. Вы, вероятно, захотите сделать это, указав --up сценарий. Вы можете добавить это в свою конфигурацию OpenVPN вот так.

up /etc/network/if-up.d/bind9
script-security 2              # permit a script to called

На сервере доступа OpenVPN эти строки можно добавить через веб-интерфейс. Перейдите в Configuration -> Advanced VPN -> Server Config Directives.