Forum Webscript.Ru
Программирование => Perl => Тема начата: SniperDragon от 12 Мая 2007, 11:15:18
-
Здравствуйте
мне для корректной работы с сервисом zz.countries.nerd.dk необходимо получить запись DNS. Мне нужно в ответе получить 127.0.х.х Незнаю уже как это сделать по всякому пробовал. Помогите
-
http://countries.nerd.dk/more.html не помогает?
-
я как раз про это и спрашиваю, я не знаю как запись с ДНС считать или что там они просят на этой странице. Они пишут мол lookup ip4.ip3.ip2.ip1.zz.countries.nerd.dk
а как этот lookup в перле организовать?
-
хм. пора за чтение документации деньги брать.
# host http://www.ru
http://www.ru A 194.87.0.50
# host 50.0.87.194.zz.countries.nerd.dk
50.0.87.194.zz.countries.nerd.dk A 127.0.2.131
#
-
Может меня вы не понимаете. Но как технически на перле получить эту строчку. То что вы пишите это всего лишь ответ сервера, но как технически эту запись получить.
Я умею пинговать, но в ответ я только могу получить что данный хост жив, а мне нужно средствами перла получить именно такой ответ:
50.0.87.194.zz.countries.nerd.dk A 127.0.2.131
-
Там вместо точек вопросы нужно было поставить. Я в последнее время рассеяным стал совсем.
-
perldoc Net::DNS
-
Я использую библиотеку Net:: DNS Но конкретной команды lookup там нет. Я нашел как пинговать сервер - это работает. Но примеры как считать запись с сервера у меня не работают, нет ответа от сервера. Может я что неправильно делаю или не понимаю чего. Вот я и обратился на форум. Здесь таких вопросов, а тем более ответов нет.
Нужен технический ответ, не теоретический. Если можешь выложи несколько строк кода, в котором нужно получить запись
50.0.87.194.zz.countries.nerd.dk A 127.0.2.131
-
use Net::DNS;
use Data::Dumper;
$res = Net::DNS::Resolver->new;
$answer = $res->search(\'www.ru\', \'A\');
print Dumper($answer);
-
Спасибо, работает.
Но работает только под Линуксом. А в Виндовсе нет. Но это уже не в тему.
-
SniperDragon:
Спасибо, работает.
Но работает только под Линуксом. А в Виндовсе нет. Но это уже не в тему.
nslookup или что то в этом роде под виндой есть?
днс настроен?
тогда можно еще так попробовать:
$conent_with_ip=`nslookup $hostname`;
@ips=$content_with_ip=~m{(\\d+\\.\\d+\\.\\d+\\.\\d+)}g;
print join ("|", @ips), "\\n";