crimea
Зарегистрирован: 05.10.2008 Сообщения: 4
|
Добавлено: Ср Май 13, 2009 10:37 pm Заголовок сообщения: Зависание Asterisk-а при отсутствии интернета |
|
|
Проблема зависания или торможения при отсутствии подключения к глобальной сети связана, как правило, с тем, что Asterisk не получает ответа на запросы к DNS-серверам. Для стабильной работы вовсе не обязательно чтоб DNS-сервер выдал разрешающий ответ на запрос - важен сам факт наличия любого ответа DNS-сервера, то есть важно чтоб сам DNS-сервер был доступен.
Именно поэтому идеальным выходом из ситуации будет установка кеширующего DNS-сервера на самой машине с Asterisk-ом.
В случае с предыдущими версиями AsteriskNOW, построенными на базе RPath-Linux, установка выполняется следующим образом:
conary update bind-chroot caching-nameserver
chkconfig named on
Если Вы используете последние версии дистрибутива, построенные на CentOS, то установка выполняется командами:
yum install bind-chroot caching-nameserver
chkconfig named on
Следующим этапом будет настройка Named. Ниже приведен самый простой из вариантов конфига, который следует прописать в файл /etc/named.conf
// generated by named-bootconf.pl
options { directory "/srv/named";
dump-file "/srv/named/data/cache_dump.db";
statistics-file "/srv/named/data/named_stats.txt";
version "no version info";
allow-transfer { none; };
listen-on { 127.0.0.1; };
allow-query { localhost; 127.0.0.1/8; };
allow-recursion { localhost; 127.0.0.1/8; };
};
//
// a caching only nameserver config
//
controls {
inet 127.0.0.1 allow { localhost; } keys { rndckey; };
};
zone "." IN {
type hint;
file "named.ca";
};
zone "localhost" IN {
type master;
file "localhost.zone";
allow-update { none; };
};
zone "0.0.127.in-addr.arpa" IN {
type master;
file "named.local";
allow-update { none; };
};
include "/etc/rndc.key";
Достаточно простая и в то же время эффективная и безопасная настройка, позволяющая запросы только от локалхоста, что защищает от попытки DoS атаки путём рекурсивных запросов извне.
И самый последний штрих - настройка запросов системы к DNS-серверу. Открываем для редактирования файл /etc/resolv.conf и вписываем в него следующую фразу выше всех остальных директив:
nameserver 127.0.0.1
Вот, собственно, и всё. Теперь при отсутствии интернета ваш Asterisk не будет тормозить и виснуть. |
|