Здравствуйте!Что делать, если нужен rdns на одной машине, чтобы преобразование работало для целого списка ip-адресов. У меня в bind есть настройка зоны domain.ru, можно ли заставить систему при rdns искать соответствие сначала в этой зоне, а потом уже отправлять запрос владельцу соответствующей подсети?
Или, может быть, есть файл, аналогичный /etc/hosts, но для rdns?
>Здравствуйте!
>
>Что делать, если нужен rdns на одной машине, чтобы преобразование работало для
>целого списка ip-адресов. У меня в bind есть настройка зоны domain.ru,
>можно ли заставить систему при rdns искать соответствие сначала в этой
>зоне, а потом уже отправлять запрос владельцу соответствующей подсети?
>
>Или, может быть, есть файл, аналогичный /etc/hosts, но для rdns?мало исходных данных.
>мало исходных данных.Есть список интернет-узлов, для которых хочется делать rdns при локальных вызовах внутри одной машины. Ведь rdns клиент запрашивает владельца подсети, в которой лежит этот ip-адрес, а я хочу, чтобы сначала был проверен список узлов локально.
Сам себе отвечаю:named.conf:
zone "in-addr.arpa" {
type master;
file "/etc/bind/dir.DOMAIN.reverse";
};Создаем файл из пустого /etc/bind/db.empty (который уже есть в системе) и добавляем там записи вида
4.3.2.1 IN PTR hostname.
точка в конце обязательна.
Перезапускаем.Написал скрипт для обработки файла из основной зоны в обратную.
Скрипт:
#!/bin/sh
BASEDIR=/etc/bind/
PROTO=db.empty
DNS=dir.DOMAIN
RDNS=dir.DOMAIN.reverse
cat $BASEDIR$PROTO > $BASEDIR$RDNS
cat $BASEDIR$DNS | grep -w A | grep ^[a-z] | sed -e 's/\;$//' -e 's/\([0-9]\{1,3\}\)\.\([0-9]\{1,3\}\)\.\([0-9]\{1,3\}\)\.\([0-9]\{1,3\}\)/\4\.\3\.\2\.\1/' | awk '{print $3 "\t\tIN PTR\t" $1 ".DOMAIN."}' >> $BASEDIR$RDNS
exit 0
sed -e 's/\([0-9]\{1,3\}\)\.\([0-9]\{1,3\}\)\.\([0-9]\{1,3\}\)\.\([0-9]\{1,3\}\)/\4\.\3\.\2\.\1/'
--
Можно, конечно, еще и серийный номер увеличивать. Но я посмотрел - и без него работает, кажется, он в данном случае не актуален.
Если кто улучшит скрипт, дайте знать - я впервые пользуюсь sed,awk и, кажется, у скрипта проблемы с обработкой комментариев и лишних символов в строках с A-записями в файле "прямой" зоны.
и какой смысл всего этого?
развлекаться внутри локалки?
>и какой смысл всего этого?
>развлекаться внутри локалки?Чтобы все красиво в лог-файлах было. А договариваться с владельцами зоны на предмет добавления rdns со всеми интересующими провайдерами мне не хочется, к тому же они постоянно забывают про то, что это кому-то нужно, и меняют свои rdns записи как угодно.
И если тебе точно известны какие-то имена узлов, почему не хранить в зоне и rdns, чтобы
1. лишний раз не обращаться к провайдерам (не писать письма на просьбу добавить имя узла) и быть в некоторой степени независимым от них;
2. обратиться к провайдеру не всегда возможно (если ip-адрес не тебе принадлежит, но тебе нужно его особым образом идентифицировать);
3. экономить затраты времени на обращение к внешним dns.
А вообще, дорогой Паханиво, не задавайте на форуме вопросов "зачем это нужно". Форум не для этого.
>А вообще, дорогой Паханиво, не задавайте на форуме вопросов "зачем это нужно".
>Форум не для этого.а реверс то у тебя дилигирован?
>>А вообще, дорогой Паханиво, не задавайте на форуме вопросов "зачем это нужно".
>>Форум не для этого.
>
>а реверс то у тебя дилигирован?А как реверс можно делегировать? Или я чего-то не понимаю?
>>а реверс то у тебя дилигирован?
>
>А как реверс можно делегировать? Или я чего-то не понимаю?ммм кагбэээ это помягче сказать ....
ты вообще нифига не понял в этом вопросе, и а именно в службе ДНСгуглить, гуглить, гуглить ...
>>>а реверс то у тебя дилигирован?
>>
>>А как реверс можно делегировать? Или я чего-то не понимаю?
>
>ммм кагбэээ это помягче сказать ....
>ты вообще нифига не понял в этом вопросе, и а именно в
>службе ДНС
>
>гуглить, гуглить, гуглить ...Уйди с форума. Тебе же нечего сказать, верно?
Как можно делегировать реверс (открой английский словарь)? rDNS - зона ответственности провайдеров (т.е. владельцев подсетей), а не владельцев домена. Или под "делегированием" тобою понимается запись в конфиге, что вот мой bind - это rdns для in-addr.arpa? Я так и сделал - см. выше.И, сделай одолжение, НИКОГДА не посылай людей на форуме в Гугле, если только это не конкретная ссылка.
>Уйди с форума. Тебе же нечего сказать, верно?
>Как можно делегировать реверс (открой английский словарь)? rDNS - зона ответственности провайдеров
>(т.е. владельцев подсетей), а не владельцев домена. Или под "делегированием" тобою
>понимается запись в конфиге, что вот мой bind - это rdns
>для in-addr.arpa? Я так и сделал - см. выше.ты бредишь ...... ))