Комментарии 40
Ура! Дождались!
Надеюсь на регулярность обновления.
Надеюсь на регулярность обновления.
Всё хорошо но вот только изо 3G операторов не получается точно определять ip.
А рынок без проводного рынка растет.
А рынок без проводного рынка растет.
Ну с 3G как и просто с крупными провайдерами могут быть проблемы, так как далеко не всегда они указывают информацию о распределении IP.
А некрупные просто вам сообщают домашние адреса своих клиентов по ip?
Зависит от провайдера, зачастую указывают, в каком городе подсеть или районе города для крупных городов.
Мелкие провайдеры, обычно, действуют в рамках одного или нескольких городов в пределах одного региона. Соответственно, все их IP-адреса будут принадлежать к конкретному региону и, с большой долей вероятности, к определенному городу, в котором и работает провайдер.
Для крупных же провайдеров вполне характерна ситуация, когда пользователи одного региона выходят в сеть через шлюз, расположенный в другом регионе. А у мобильных операторов проблема усугубляется использованием NAT, когда вообще всегда все пользователи федерального округа выходят через единый шлюз. Например, Калининградцы, использующие Мегафон, выходят в Интернет через Санкт-Петербург, точно так же, как и сами Питерцы, и еще куча регионов, да еще и одновременно с одного IP-адреса (по крайней мере, я не заметил распределения IP-адресов из их диапазона по регионам). В данном случае определить регион по IP-адресу просто невозможно.
Для крупных же провайдеров вполне характерна ситуация, когда пользователи одного региона выходят в сеть через шлюз, расположенный в другом регионе. А у мобильных операторов проблема усугубляется использованием NAT, когда вообще всегда все пользователи федерального округа выходят через единый шлюз. Например, Калининградцы, использующие Мегафон, выходят в Интернет через Санкт-Петербург, точно так же, как и сами Питерцы, и еще куча регионов, да еще и одновременно с одного IP-адреса (по крайней мере, я не заметил распределения IP-адресов из их диапазона по регионам). В данном случае определить регион по IP-адресу просто невозможно.
По моему для них это не проблема. Они наверно даже и не в курсе про наши проблемы. Так как по видимому с этого не зарабатывают.
Я решил эту проблему для себя так. Не показываю гео зависимую выдачу если клиент зашёл через мобильного оператора. Может показаться что я теряю что то но я терял больше когда людям из одного города показывал другой. Чисто потому что оператор выход в интернет с делал в другом городе.
Я решил эту проблему для себя так. Не показываю гео зависимую выдачу если клиент зашёл через мобильного оператора. Может показаться что я теряю что то но я терял больше когда людям из одного города показывал другой. Чисто потому что оператор выход в интернет с делал в другом городе.
Парни, ОКАТО отменили.
Теперь ОКТМО.
Теперь ОКТМО.
«okato»:"" // ОКАТО код для регионов России, КОАТУУ для Украины и СОАТО для Беларуси
Для каждого варианта будет свое наименование поля? Или будет всегда именоваться okato?
Для каждого варианта будет свое наименование поля? Или будет всегда именоваться okato?
Пока что сходу вижу очевидный недочет — вы не возвращаете диапазон IP провайдера к которому принадлежит запрашиваемый IP, что крайне затрудняет кеширование запросов и существенно увеличивает их число к вашему сервису.
PS Часовой пояс желательно бы для города, а не для страны возвращать. Более практически полезно будет.
PS Часовой пояс желательно бы для города, а не для страны возвращать. Более практически полезно будет.
А почему Вы не храните слепок geoip-базы у себя?
Реальная ситуация с распределением IP меняется постоянно, минимум раз в месяц, зачем мне просроченные данные?
Результаты запросов кешируются для уменьшения их числа, но не дольше чем на 30 дней.
Этим и отличаются недобросовестные GeoIP сервисы, что заливают 1 раз базу к себе и бросают в таком состоянии на N лет. Нужен именно поддерживаемый внешний сервис.
Результаты запросов кешируются для уменьшения их числа, но не дольше чем на 30 дней.
Этим и отличаются недобросовестные GeoIP сервисы, что заливают 1 раз базу к себе и бросают в таком состоянии на N лет. Нужен именно поддерживаемый внешний сервис.
Если вам нужно обрабатывать много адресов, то лучше использовать базу локально. Так как в любом случае ping никуда не денется. И значительно быстрее проверить по локальной базе. API имеет смысл использовать, когда запросы достаточно редкие, ну например, в админке сделать кнопочку посмотреть откуда юзер пришел.
Дополнительные данные получаете с гугла?
А выложите плз скрипт-пример, как загнать свою базу в формат sxgeo.
Было бы полезно в информации о городе иметь данные о часовом поясе, а то эта информация для страны применимо к России не очень поможет.
Не помешало бы:
— рейтинг достоверности источника (ведь наверняка данные не из одного источника);
— диапазон IP к которому принадлежит адрес;
— (возможно) владелец диапазона.
— рейтинг достоверности источника (ведь наверняка данные не из одного источника);
— диапазон IP к которому принадлежит адрес;
— (возможно) владелец диапазона.
Было бы еще хорошо давать возможность делать срезы базы данных. Например, сайт имеет свои страницы для областных центров Уральского ФО, а остальные посетители перенаправляются на страницу по умолчанию. Поэтому, был бы интересен срез по конкретным городам.
Есть проблема с одноименными населенными пунктами, так например адрес 77.106.95.186 принадлежит российскому Северску в Томской области, но определяется как украинский из Донецкой области.
Если бы только. 78.30.215.196 принадлежит Севастополю. (http://api.sypexgeo.net/json/78.30.215.196), который уже не UA и таймзона там не киевская
Данные привязаны к GeoNames, так что, тут разве, что спецверсию базы для России делать.
в ссылке-примере 109.110.95.135 (Севастополь) на карте отобразило возле Брянска где-то…
Поправили. Добавил возможность давать ссылки на демку sypexgeo.net/ru/demo/78.30.215.196
Тут как раз приколы в том, что в России есть еще два Севастополя. Потому бывают такие глюки.
Тут как раз приколы в том, что в России есть еще два Севастополя. Потому бывают такие глюки.
Разработчик из Украины. По конституции Украины, АР Крым находится в составе Украины. Так что все правильно Севастополь — UA.
Так что же, теперь все Geo-базы будут составляться в зависимости от того, кому как захотелось, независимо от реального положения дел?
Тем более, whois IP-адреса говорит сам за себя:
P.S. Вот и автор выше озвучил, почему так вышло. И никакой политики здесь нет.
Тем более, whois IP-адреса говорит сам за себя:
netname: LANCOM-DIR2 descr: Lancom Ltd, Russia, Sevastopol descr: Sevstar TM, broadband country: ru
P.S. Вот и автор выше озвучил, почему так вышло. И никакой политики здесь нет.
Пасиб, да, был такой глюк исправили.
Большое спасибо за внешние ключики из geonames.
А то раньше по несколько часов бедный Левенштайн работал.
А то раньше по несколько часов бедный Левенштайн работал.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Sypex Geo 2.2 — теперь с GeoNames и ОКАТО