exec
не создает новый процесс. Он заменяет текущий процесс новой командой. Если вы сделали это в командной строке, то это фактически завершит вашу сессию shell (и, возможно, выведет вас из системы или закроет окно терминала!)
например
ksh% bash
bash-4.2$ exec /bin/echo hello
hello
ksh%
Здесь я нахожусь в ksh
(моя обычная оболочка). Я запускаю bash
, а затем внутри bash я exec /bin/echo
. Мы видим, что после этого я был сброшен обратно в ksh
, потому что процесс bash
был заменен на /bin/echo
.
сначала исправьте запись A с:
bad.com A filter.wsi.org
на:
bad.com A 192.168.1.1
или измените, как показано ниже:
bad.com CNAME filter.wsi.org
и проверьте конфигурацию, указав ниже:
response-policy {zone "filter";};
Я обнаружил еще одну проблему - вы не определяете запись ns в файле зоны rpz.
@ NS 127.0.0.1.
и используйте инструменты bind для устранения неполадок в конфигурации. Для проверки синтаксиса конфигурации:
named-checkconf
и для проверки синтаксиса файла зоны:
named-checkzone filter /etc/bind/filter.zone
и для проверки bind работает без ошибок:
netstat -lntup | grep 53