Мне нужно заблокировать все динамические службы DNS Обновить запросы из моей сети, чтобы ни один клиент dyndns не мог обновить свой IP.
Используют ли основные поставщики dyndns стандартный протокол или каждый использует свой собственный?
Можно ли сопоставить запросы на обновление глобально или мне нужно узнать IP-адреса каждого провайдера, чтобы заблокировать их вручную?
Вы можете подойти к этому тремя способами: а) с прозрачным прокси, блокирующим хосты, б) с брандмауэром, который блокирует подключения к узлам обновления или в) во внутреннем DNS и разрешите известные узлы обновления на localhost или какой-либо другой узел.
Используя a), вы можете просто занести в черный список (в squid с кальмар или даже iptables) хосты обновления
Используя b), вам нужно будет отслеживать изменения в IP-адресах хостов обновления и блокировать исходящие запросы к этим хостам - с помощью сценария для регулярного опроса DNS-записи хоста обновления и получения IP-адресов для блокировки.
используя c) - мой личный фаворит - получить список хостов обновлений и перенаправить на внутренний хост, которым вы управляете. вы даже можете кормить своих пользователей фальшивой информацией в качестве бонуса.
Вот удобный список известных провайдеров DDNS и их узлов обновления.
Поскольку любой может запустить свою собственную службу DDNS, и обычно эти службы работают поверх HTTP (ов), вам необходимо либо заблокировать хост обновления каждого поставщика, либо в конечном итоге сопоставить URL-адреса в вашем прокси-сервере и перенаправить их на хост, управляемый вами.