Блокировать IP-адрес в файле зоны DNS (вместо домена)

Я использую DNS-серверbind9. Раньше я блокировал веб-сайты, используя их доменное имя в файле зоны RPZ, например:

malicious.example CNAME .

Но мне нужно заблокировать IP, а не домен, например:

Как я могу это сделать? Или приведенный выше пример () правильный?

2 ответа

Вы не можете.

IP-адреса используются непосредственно в пакетах. Они ни на что не переводятся. Чтобы заблокировать IP-адреса, вам придется использовать брандмауэр.

Если вы хотите заблокировать результаты , содержащие набор IP-адресов, ответ Патрика охватывает это .

См. https://www.isc.org/docs/BIND_RPZ.pdf, стр. 11:

Создание триггерного правила для IP-адреса или подсети (v4)

Допустим, мы хотим переписать все DNS-запросы для всех хостов, которые разрешаются в подсети 172.16.3.0/24.

24.0.3.16.172.ns-ip IN CNAME .

Как видите, октеты в подсети необходимо поменять местами (аналогично тому, как работает rbl в-addr.arpa). Первое число представляет маску подсети. Если бы мы хотели заблокировать только один IP-адрес, первое число было бы 32, что соответствует /32, то есть:32.1.3.16.172.ns-ip IN CNAME

См. также https://datatracker.ietf.org/doc/html/draft-ietf-dnsop-dns-rpz-00#section-4.3 , где показано использованиеrpz-ipвместоns-ip(Функция RPZ была впервые изобретена в связке, и есть попытки сделать ее полным стандартом)

Следовательно, это также будет зависеть от того, какую версию привязки вы используете, которую вы не раскрываете. Посмотрите на прилагаемую документацию и уровень поддержки RPZ.

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