| Управление DNS с помощью сценариев на языке Python |
|
Управление сервером DNS является достаточно простой задачей по сравнению, например, с управлением конфигурационными файлами веб-сервера Apache. Программное внесение крупномасштабных изменений в DNS - вот настоящая проблема, способная сокрушать вычислительные центры и провайдеров веб-хостинга. Оказывается, в составе языка Python имеется модуль dnspython, который может вам пригодиться в решении подобных задач. Следует отметить, что существует еще один модуль, имеющий отношение к DNS, - PyDNS, но мы будем рассматривать только dnspython. Обязательно ознакомьтесь с документацией, которую вы найдете на сайте http:// www. dnspython. org/. Кроме того, существует замечательная статья об использовании модуля dnspython, которую вы найдете по адресу http:// valllsta. idyll. org/~ grig/ articles/. Чтобы начать использовать модуль dnspython, вам необходимо лишь с помощью утилиты easy_install установить одноименный пакет из каталога пакетов Python: ngift@Macintosh-8][H:10048][J:0]# sudo easy_install dnspython Password: Searching for dnspython Reading http://pypi.python.org/simple/dnspython/ [дальнейший вывод обрезан] Теперь попробуем исследовать модуль с помощью оболочки IPython так же, как проверялись многие другие идеи. В следующем примере мы извлекаем записи «А» и «MX» для имени oreilly. com:
В этом примере мы присваиваем значения записей «А» переменной ip, а значения записей «MX» - переменной mail. Результаты, полученные из записей «А», выведены в верхней строке, а результаты, полученные из записей «MX», - в нижней. Теперь, когда мы получили некоторое представление о том, как работает этот модуль, напишем сценарий, который будет получать значения записей «А» для списка хостов. Пример 14.1. Запрос информации для группы хостов
Если запустить этот сценарий, будут получены значения всех записей «А» для указанных хостов, как показано ниже:
Одна очевидная проблема, которую можно решить подобным образом, - программно проверить наличие корректных записей «А» для всех хостов, имена которых присутствуют в файле. Однако модуль dnspython способен на большее: с его помощью можно управлять зонами DNS и вbinолнять более сложные запросы, чем описано здесь. Если вам интересно будет рассмотреть дополнительные примеры использования модуля, обращайтесь по адресу URL, указанному выше.
Related Articles
Set as favorite
Bookmark
Email This
Hits: 335 Комментарии (0)RSS feed CommentsНаписать комментарий |