Named, bind стартует раньше pppoe. ОС FreeBSD
Сам столкнулся с данной проблемой буквально на днях. К сожалению, в моем доме есть только одна возможность выхода в интернет для сервера - ADSL-соединение. Соответственно, модем настроен в режиме bridge, после загрузки компьютера поднимается PPPoE соединение... но проблема в том, что named (bind) стартует раньше и не видит внешнего интерфейса. Решение проблемы ниже.
Сначала была предпринята попытка использовать interval-interface и listen-on в named.conf, но она успеха не принесла. В итоге, все решилось проще. В /etc/rc.local дописываем следующие строки:
/usr/sbin/ppp -ddial имя_вашего_pppoe_соединения
sleep 20
/etc/rc.d/named restart
Получается, что через 20 секунд после старта named перезагружается. Возможно, решение не самое оптимальное. Буду рад в комментах увидеть то, как это выглядит прямее. Но и с данным вариантом у меня все поднимается.
3 комментария
Ох Егорка. Любишь велосипеды изобретать!? =) Вот тебе мега полезняцкая ссылка http://forum.lissyara.su/viewtopic.php?p=27269 :D
Ну а суть в следующем:
Каждый скрипт из /etc/rc.d для утилиты rcorder должен содержать специальные строчки, особенно строчку с словом "PROVIDE:" обязательную строчку "# KEYWORD: FreeBSD" и если необходимо, то строчки со словами "REQUIRE:" и "BEFORE:". Строчки должны располагаться в виде блока (одна за другой). Формат строчек строго заданный. Каждая специальная строчка должна начинаться с символа '#' за которым следует один символ 'пробел' далее одно из слов PROVIDE:, REQUIRE:, BEFORE:, KEYWORD:, затем снова символ 'пробел' и заканчивается все "обстоятельствами" (conditions).
# PROVIDE: Задает имя сервиса (демона), которое обслуживает этот скрипт.
# REQUIRE: Список сервисов (демонов|обстоятельств), необходимых этому скрипту для запуска своего демона (сервиса).
# BEFORE: Список сервисов (демонов|обстоятельств), зависящих от демона запускаемого этим скриптом.
# KEYWORD: FreeBSD или NetBSD, также в этой строчке можно написать волшебное слово "nostart" тогда rcorder исключит этот скрипт из своего списка.
Не работает, Алексей. Изначально пробовал
Хотя, может неверно с синтаксисом где.
В качестве pppoe клиента нужно использовать mpd 5 вот линк на мануал http://mpd.sourceforge.net/doc5/mpd.html