Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2017.11.12;
Скачать: CL | DM;

Вниз

Модуль Whois, определение города и оператора связи по ip-ку.   Найти похожие ветки 

 
YurikGL ©   (2010-05-11 10:44) [0]

Может кто делал? Что бы можно было для набора ip-в вычислить город и оператора связи. Ну или хотя бы просто вернуть текст аналогичный возвращаемому службой http://www.ripe.net/perl/whois


 
Anatoly Podgoretsky ©   (2010-05-11 11:52) [1]

> YurikGL  (11.05.2010 10:44:00)  [0]

Оставь надежду. Во первых там там написано то, что захотел регистрант,
например я одно время находился в Калифорнии, а потом в Таллине, что не
соответствует действительности и так же по другим полям. Во вторых можно
ничего не найти, например мой домен не находит. Ну а в третьих WHOIS
компонент много написано, попробуй поискать на Торри.


 
Anatoly Podgoretsky ©   (2010-05-11 11:54) [2]

> Anatoly Podgoretsky  (11.05.2010 11:52:01)  [1]

Ну и ты наверно догадываешься, что я вхожу в The RIPE NCC Service Region


 
YurikGL ©   (2010-05-11 12:09) [3]


> Ну а в третьих WHOIS
> компонент много написано, попробуй поискать на Торри.

Там из три.
Одно с первого же пинка не запустилось, одно платное, а еще одно показывает географическое расположение.
Будут копать.

Но если есть готовые решения - буду рад


 
YurikGL ©   (2010-05-11 12:11) [4]


> Оставь надежду. Во первых там там написано то, что захотел
> регистрант,
> например я одно время находился в Калифорнии, а потом в
> Таллине, что не
> соответствует действительности и так же по другим полям.
>  Во вторых можно
> ничего не найти, например мой домен не находит.

Мне нужно исключительно по Ip-м. Домены меня не интересуют.  А у ip-в достоверность выше.
Цель - анализ адекватности голосов на сайте. Не точный, не идеальный, но хоть какой-то.


 
Anatoly Podgoretsky ©   (2010-05-11 12:28) [5]

> YurikGL  (11.05.2010 12:11:04)  [4]

WhoIS работает исключительно с доменами, это всего лишь регистрационная
база.
А как ты запрашиваешь по имени или по ИП не важно.
Тебе нужна другая база, ИП географическая, но обычно это тайна, ее ведут
провайдеры и шареварщики, для себя. Я же говорил, что я был в Калифорнии,
что доказывает бессмысленность базы(баз) Whois - это все обман. Касательно
моей записи в Whois, то сейчас там все правильно, никаких Калифорний и
Таллинов.


 
YurikGL ©   (2010-05-11 12:35) [6]


> WhoIS работает исключительно с доменами, это всего лишь
> регистрационная
> база.
> А как ты запрашиваешь по имени или по ИП не важно.

Может я что то не своими именами называю...
http://www.ripe.net/perl/whois
ввожу ip-к. Например 81.30.200.38 Этому ip-ку не соответствуют никакие доменные имена (по крайней мере, не должны)
Он выдает (в т.ч.)
% Information related to "81.30.192.0 - 81.30.201.255"
....
person:          Nikolay Triakin
address:         ZAO "Delovaja set"
address:         902,17 Curupa str.
address:         Ufa Russia
phone:           +7 3472 900400 begin_of_the_skype_highlighting              +7 3472 900400      end_of_the_skype_highlighting
fax-no:          +7 3472 900400
nic-hdl:         NT206-RIPE
source:          RIPE # Filtered


Вот мне и нужно такие запросы составлять автоматизированно в больших количествах. А в идеале еще и "правильно" вытаскивать город и оператора связи (если это технически возможно).


 
Anatoly Podgoretsky ©   (2010-05-11 12:55) [7]

> YurikGL  (11.05.2010 12:35:06)  [6]

RIPE NCC содержит информацию по сетям и делает поиск по NETNAME и по ИП
Во всяком случае он не смог сделать поиск по моей сети и выдал неверную
информации.
А точную информацию об моей сети/домене можно получить с NIC


 
Anatoly Podgoretsky ©   (2010-05-11 13:06) [8]

> Anatoly Podgoretsky  (11.05.2010 12:55:07)  [7]

Вот whois по мне, у моего регистратора
http://www.networksolutions.com/whois-search/podgoretsky.com
Попробуй определить город и оператора
То же по RIPE NCC, там вообще чушь


 
YurikGL ©   (2010-05-12 06:33) [9]

Еще раз повторяю. Мне не нужны доменные имена. Мне нужно "где находится вот этот вот Ip-к" доменных имен у меня вообще нет.
Для ip-ка 83.166.49.48 (резолвится на podgoretsky.com) получаем информацию. Есть основания утверждать, что ip-к 83.166.49.48 находится не в Эстонии?

inetnum:         83.166.49.0 - 83.166.51.255
netname:         VIRUNET
descr:           Narva-2 XDSL
country:         EE
admin-c:         VNET1-RIPE
tech-c:          VNET1-RIPE
status:          ASSIGNED PA
mnt-by:          MNT-VNET
mnt-lower:       MNT-VNET
mnt-routes:      MNT-VNET
source:          RIPE # Filtered

role:            VNET NOC
address:         Uus tn. 2
address:        41533 Jo"hvi
address:         Estonia
phone:           +372 33 70146 begin_of_the_skype_highlighting              +372 33 70146      end_of_the_skype_highlighting
phone:           +372 53 411 511 begin_of_the_skype_highlighting              +372 53 411 511      end_of_the_skype_highlighting
fax-no:          +372 33 71908
admin-c:         TL435-RIPE
tech-c:          AN1246-RIPE
nic-hdl:         VNET1-RIPE
mnt-by:          MNT-VNET
abuse-mailbox:   abuse@vnet.ee
source:          RIPE # Filtered

% Information related to "83.166.32.0/19AS3249"

route:           83.166.32.0/19
descr:           EE-VIRUNET-20040525
origin:          AS3249
mnt-by:          ESTPAK-MNT
source:          RIPE # Filtered


 
Anatoly Podgoretsky ©   (2010-05-12 09:28) [10]

> YurikGL  (12.05.2010 06:33:09)  [9]

Сейчас в Эстонии. но это не моя запись, эта запись относится к netname:
VIRUNET
И живу я по другому адресу (а вопрос про Город), в whois networksolution
совсем другие данные, только их посмотреть вам нельзя, у меня приватная
регистрация. То есть RIPE своей роли не смог выполнить.


 
Anatoly Podgoretsky ©   (2010-05-12 09:32) [11]

> YurikGL  (12.05.2010 06:33:09)  [9]

Кстати по поводу "не в Эстонии", это сейчас, а я писал, что находился в
Калифорнии, в городе Санта Фе, не покидая Эстонию.
Но если это устраивает, да ради бога. Тогда ICS в руки + RFC + RIPE Whois
Documentation


 
Anatoly Podgoretsky ©   (2010-05-12 10:11) [12]

Кстати и та приведеная в RIPE информация, тоже уже не верная, просто ее не исправляют в WHOIS, на самом деле netname уже Elion и местонахождения уже Таллин


 
YurikGL ©   (2010-05-13 20:09) [13]

Информации Ripe-а мне вполне хватает....
Покурив http://labs.ripe.net/content/ripe-database-api-documentation#QueryAPI-search  выяснил, что запросы типа http://lab.db.ripe.net/whois/search?source=ripe&query-string=94.41.9.69 возвращают достаточно внятную xml-ку
ip-к можно подставлять любой (из зоны ripe-а).

Осталась сущая малось.... научиться загружать xml-ку и парсить.

з.ы. пост ответа не требует... так, если вдруг кому понадобиться.


 
Gu   (2010-09-03 19:20) [14]

примерная реализация

кидаем на форму edit1,button,memo,компоненты XMLDocument (с вкладки Internet) и JvHttpUrlGrabber (из набора jedi), в свойствах JvHttpUrlGrabber1 меняем OutputMode на omStream

в обработчике кнопки пишем

memo1.clear;
JvHttpUrlGrabber1.Url:="http://lab.db.ripe.net/whois/search?source=ripe&query-string="+edit1.text;
memo1.lines.add("IP: "+edit1.text);
JvHttpUrlGrabber1.Start;

в обработчике JvHttpUrlGrabber1DoneStream

var s:string;c:ixmlnodelist;x:ixmlnode;
begin
Try
XMLDocument1.LoadFromStream(stream);
XMLDocument1.Active:=true;s:="";
c:=XMLDocument1.DocumentElement.ChildNodes; // получаем структуру
x:=c.Get(2); // спускаемся по веткам
c:=x.ChildNodes;x:=c.Get(0);
c:=x.ChildNodes;x:=c.Get(3);
c:=x.ChildNodes;x:=c.Get(0);
if x.Attributes["value"]<>null then s:=" (диапазон: "+x.Attributes["value"]+", имя сети: " else s:=s+"?";
x:=c.Get(1);
if x.Attributes["value"]<>null then s:=s+x.Attributes["value"]+", пояснение: " else s:=s+"?";
x:=c.Get(2);
if x.Attributes["value"]<>null then s:=s+x.Attributes["value"]+", страна: " else s:=s+"?";
x:=c.Get(3);
if x.Attributes["value"]<>null then s:=s+x.Attributes["value"]+")" else s:=s+"?";
memo1.Lines.Add(s);
XMLDocument1.Active:=false;
except
memo1.lines.add("error");
end;
JvHttpUrlGrabber1.Stop;


 
Gu   (2010-09-03 19:29) [15]

похожая проблема: http://delphimaster.net/view/6-1283385235/


 
YurikGL ©   (2010-09-06 12:18) [16]

В итоге получилось как-то так.

dst: TADODataSet;
dsc: TADOCommand;

...
в dst лежит список ip-в

заполнение поля st данными, возвращаемыми ripe-м

dst.First;
dsc.CommandText:="update t set st=:st where id=:id";
try
while not dst.Eof do begin
 st:=IdHTTP1.Get("http://lab.db.ripe.net/whois/search?source=ripe&query-string="+dst.fieldbyname("ip").AsString);
 dsc.Parameters.ParamByName("st").Value:=st;
 dsc.Parameters.ParamByName("id").Value:=dst.fieldbyname("id").value;
 dsc.Execute;
 dst.Next;
 Application.ProcessMessages;
 Memo1.Lines.Add(dst.fieldbyname("id").AsString)
                   end;
except
  on e:Exception do begin
     ShowMessage(dst.fieldbyname("id").AsString+"|");
                    end
end;


определение провайдера (для моих нужд сошло и так)

dst.First;
dsc.CommandText:="update t1 set prov=:prov where id=:id";
try
while not dst.Eof do begin
 prov:="";

 if pos("Ufanet",dst.fieldbyname("st").asstring)>0 then prov:=Prov+" Уфанет";

 if pos("Golden Telecom",dst.fieldbyname("st").asstring)>0 then prov:=Prov+" ГолденТелеком";
//много строчек с провайдерами
....

 if prov="" then prov:="неизвестен.";

 dsc.Parameters.ParamByName("prov").Value:=prov;
 dsc.Parameters.ParamByName("id").Value:=dst.fieldbyname("id").value;
 dsc.Execute;
 dst.Next;
 Application.ProcessMessages;
 Memo1.Lines.Add(dst.fieldbyname("id").AsString)
                   end;
except
  on e:Exception do begin
     ShowMessage(dst.fieldbyname("id").AsString+"|");
                    end
end;



Страницы: 1 вся ветка

Текущий архив: 2017.11.12;
Скачать: CL | DM;

Наверх




Память: 0.52 MB
Время: 0.008 c
2-1450085380
gedevan
2015-12-14 12:29
2017.11.12
Как экспортировать или импортировать таблицу из базы Access


2-1449667867
lewka
2015-12-09 16:31
2017.11.12
Очистка Twebbrowser


15-1465507801
Юрий
2016-06-10 00:30
2017.11.12
С днем рождения ! 10 июня 2016 пятница


15-1464643802
Юрий
2016-05-31 00:30
2017.11.12
С днем рождения ! 31 мая 2016 вторник


6-1273560246
YurikGL
2010-05-11 10:44
2017.11.12
Модуль Whois, определение города и оператора связи по ip-ку.