Comments 84
Город по IP вычислен правильно (Николаев, Украина), но…
Timezone: Europe/Zaporozhye
Это как? Что-то я не слышал про Запорожский часовой пояс :)
Timezone: Europe/Zaporozhye
Это как? Что-то я не слышал про Запорожский часовой пояс :)
Тем не менее, такой есть, к примеру вот в доках по PHP. Вполне возможно, что когда-то запорожское время не совпадало с киевским временем.
У самого был соблазн поубирать к примеру для Украины все, кроме киевского времени, но потом решил оставить так, как пишут в различных справочниках.
У самого был соблазн поубирать к примеру для Украины все, кроме киевского времени, но потом решил оставить так, как пишут в различных справочниках.
Это вы просто Ubuntu не ставили в украинскую временную зону.
Нужно хорошо пощелкать мышкой в районе Украины, что бы Запорожье сменилось на Киев.
Нужно хорошо пощелкать мышкой в районе Украины, что бы Запорожье сменилось на Киев.
Город по IP вычислен неправильно. Это, пожалуй, классика жанра, что Сургут (static ip, через Уралсвязьинформ) в 90% баз определяется как Ханты-Мансийск или как Курган, но ни в коем случае не Сургут :) Встречал базы, где это разделение четкое и особенности УСИ предусмотрены.
Если можно IP скиньте в личку поправим.
Скинул, но мой IP такой не один. Проблема намного глобальнее.
Не знаю, реально ли поправить, но Украинский провайдер 3G интернета Intertelecom выдает динамические IP адреса, и все они определяются как в Одессе, хотя физически я нахожусь в Киевской области. Это можно поправить? Любые сервисы определяют так.
да там таких примеров полно — несколько провайдеров работают по всей Сибири. Я думаю что в европейской части тоже должны быть неверные блоки от федералов
Пока переходил с 2.0.0 на новую версию, обнаружил, что константа SXGEO_FILE не определена, а в документации написано «Второй параметр — режим работы: SXGEO_FILE (работа с файлом базы, режим по умолчанию)». И метода getCountry($ip) не существует, хотя в док. он есть: "$country = $SxGeo->getCountry($ip); (возвращает двухзначный ISO-код страны)". Кстати, я не нашел в классе ни одной функции, определяющей только страну (get_cc() в пред. версии). Документация тут: sypexgeo.net/ru/docs/
Промахнулось, примерно на 2500 км. Туннелей нет, если что.
Зашёл из Томска:
Город определился почти верно, к нему претензий нет: в конце концов, такие записи почти во всех базах RIPE. Но почему на карте Украина? :-)
Город определился почти верно, к нему претензий нет: в конце концов, такие записи почти во всех базах RIPE. Но почему на карте Украина? :-)
Там тоже Северск есть, тут скорее всего вопрос как ищется место на карте и как определяются координаты.
Да, похоже, Вы правы. Тут явно речь идёт о Северске донецкой области, даже координаты совпадают.
Что, однако, не отменяет моего подозрения об ошибке в базе, а наоборот, усиливает.
Что, однако, не отменяет моего подозрения об ошибке в базе, а наоборот, усиливает.
Кстати, к городам из США неплохо было бы прилепить двухбуквенный код штата, в котором они находятся. Иначе город Cambridge, например, в штате Massachusetts ничем не будет отличаться от одноименного города в шт. Maryland или Vermont. Поля lon-lat могут помочь только на карте.
Сейчас в проектах использую MaxMind, платно, но зато базы постоянно обновляются и вообще, находятся в достаточно актуальном состоянии.
Как правило, все открытые проекты грешат низкой скоростью обновления и постоянными огрехами. В свое время именно поэтому в свое время отказался от ipgeobase.
Как будет обстоять с этим вопросом в SypexGeo?
Как правило, все открытые проекты грешат низкой скоростью обновления и постоянными огрехами. В свое время именно поэтому в свое время отказался от ipgeobase.
Как будет обстоять с этим вопросом в SypexGeo?
Все подобные проекты обречены на огрехи. Причина очень проста — БД строится по информации из RIR (RIPE, ARIN и т.д.). Т.е. по сети определяется владелец, по владельцу определяется местоположение. У самого же объекта network нету поля «город». Вот и получается, что если провайдер предоставляет услуги в нескольких городах/регионах, то все его сети числятся за «домашним городом».
Как-то так в первом приближении. Возможно автор меня поправит.
Как-то так в первом приближении. Возможно автор меня поправит.
А бывает такое что в «домашнем городе» провайдер вообще не предоставляет услуги?
Вопрос не в огрехах (понятно, что без этого обойтись не получится), а в скорости их исправления.
В планах как раз обновляться с частотой MaxMind, для начала просто нужно подчистим базу. Ну и учитывая открытость самого формата в него можно будет конвертировать самостоятельно.
А сколько кстати размер бинарной базы у платного GeoIP, и как она обновляется полностью файл качается или только разница?
А сколько кстати размер бинарной базы у платного GeoIP, и как она обновляется полностью файл качается или только разница?
UFO just landed and posted this here
Собственно так и не увидел сравнение с правильно настроенным запросом в базу mysql. В комментах к первой статье несколько раз писали что и сравнение надо делать по одному полю и индекс правильно настроить. Могу лишь добавить что если пошаманить с буферами, то скорость будет в миллионы запросов в секунду
Есть суровое подозрение что самописный поиск при прочих равных не сможет реально дать большую скорость чем поиск по хешированному индексу, весь вопрос в том сколько ему дали памяти
Есть суровое подозрение что самописный поиск при прочих равных не сможет реально дать большую скорость чем поиск по хешированному индексу, весь вопрос в том сколько ему дали памяти
Прежде чем подозревать, проведите тесты сами. Это не так сложно.
Или, в крайнем случае, разберитесь в алгоритмах. Благо они не такие большие.
Или, в крайнем случае, разберитесь в алгоритмах. Благо они не такие большие.
Я как раз собираюсь написать еще одну статью с подробным тестированием, в том числе разных вариантов MySQL запросов. Можете прислать свой вариант правильного запроса к MySQL, я его протестирую.
Может это уже слишком, и я не знаю есть ли это в других базах, но был бы полезным столбец с основными языками, используемыми в стране.
Жаль IPv6 нет.
85.15.175.10 Координаты: 56.8333, 60.6
Город: Екатеринбург,
Регион: Свердловская область,
Из Тюмени зашел через университетский wi-fi (канал предоставлен Екб-м провайдером, правильно)
зы: (через свой инет все правильно определяет)
Город: Екатеринбург,
Регион: Свердловская область,
Из Тюмени зашел через университетский wi-fi (канал предоставлен Екб-м провайдером, правильно)
зы: (через свой инет все правильно определяет)
Как уже сказал MechanisM выше, хотелось бы IPv6, чтобы было инновационнее, чем у других. Правда туннельные брокеры «сломают» правильность определения местоположения.
Если верить местным (омским) представителям провайдера Билайн, то пул IP-адресов для домашнего интернета един на всю страну, поэтому сидя в одном и том же городе, разрывая сессию можно добиться местоположения и Смоленск, и Волгоград.
Если верить местным (омским) представителям провайдера Билайн, то пул IP-адресов для домашнего интернета един на всю страну, поэтому сидя в одном и том же городе, разрывая сессию можно добиться местоположения и Смоленск, и Волгоград.
Город определил правильно — Пенза, но часовой пояс почему-то Самары.
Украинское ОГО! (Укртелеком) похоже определяет как Киев.
Например, 95.135.190.8 — Здолбунов, ровенская область.
Например, 95.135.190.8 — Здолбунов, ровенская область.
И это не удивительно, определяет так же как и все другие подобные сервисы определения города.
Вряд ли это возможно исправить без договорённости с Укртелекомом
(чтобы знать в каком городе из какого диапазона выделяются ip).
Вряд ли это возможно исправить без договорённости с Укртелекомом
(чтобы знать в каком городе из какого диапазона выделяются ip).
Ну с крупными провайдерами, точности добиться сложно, так как они зачастую тасуют IP как угодно.
2.92.139.74 ростов билайн провод
определяет как москва
определяет как москва
Данные по России более свежие и актуальные у ipgeobase, причем делается на базе RIPN и обновляется ежедневно.
Огромное спасибо за проект (и вообще, пользуясь случаем, за все sypex*), очень пригодится.
Одна маленькая идея, родилась после прочтения комментариев к топику — вы бы добавили кнопочку «Город определен неверно, правильный город ...», тогда бы после публикации имели список диапазонов, по которым определение идет неверно.
Одна маленькая идея, родилась после прочтения комментариев к топику — вы бы добавили кнопочку «Город определен неверно, правильный город ...», тогда бы после публикации имели список диапазонов, по которым определение идет неверно.
Нахожусь в Смоленске, но сервис утверждает, что в Перми.
Никто еще в комментариях не запостил картинку «Как вычислить по IP… for dummies»? Я удивлен.
Для американского IP показывает русское название штата и города. Мне кажется это неправильный подход.
Если Вы используете базу Sypex Geo City которая должна быть на русском языке, то вполне логично, что названия иностранных городов в ней будут на русском.
Если Вам нужны названия мест на английском, то используте базу GeoLite City.
Если Вам нужны названия мест на английском, то используте базу GeoLite City.
Это пока в бете идет уточнение базы, нужно чтобы просто параллельно собиралась обратная связь, от потенциальных пользователей. Все данные сейчас собираются на русском и английском, в дальнейшем будут версии Sypex Geo City на двух языках.
> Для системы статистики нашей Sypex CMS…
Нагуглил вот это: sypex.net/ru/cms/, но там нет никакого описания. Не собираетесь ли рассказать об этой системе на хабре или у себя на сайте?
Нагуглил вот это: sypex.net/ru/cms/, но там нет никакого описания. Не собираетесь ли рассказать об этой системе на хабре или у себя на сайте?
Нахожусь в Нью-Йорке, провайдер Time Warner Cable. Определило с точностью до континента)
Документацию бы чуточку подробнее.
Недавно зашел на яндекс-карты, так они не просто мой город определили, а даже дом на карте указали. Вот как так они делают?
IP сотовых операторов определяет часто неверно. Для Восточной Сибири у МТС (да и у других операторов наверняка тоже) часто показывает как Хабаровск.
Еще есть отдельная проблема с Opera mini.
Еще есть отдельная проблема с Opera mini.
Попробовал 2 адреса. Один — Центральный телеграф в Красногорске, определился как Москва, в общем-то ладно, довольно близко. Второй — ТВТ в Набережных Челнах, определился как Казань. Да еще и time zone Europe/Samara. Судя по описанию, Europe/Samara только в Самарской области и Удмуртии, а Казань — Татарстан, там Europe/Moscow.
178.137.20.* пишет Украина \ Киев
я в Украина \ Донецкая обл \ Макеевка
я в Украина \ Донецкая обл \ Макеевка
2.92.91.xx — пишет, что Брянск, хотя на самом деле я из Саратова.
Но пользуюсь домашним интернетом от билайн, их IP очень редко правильно распознаются.
Но пользуюсь домашним интернетом от билайн, их IP очень редко правильно распознаются.
UFO just landed and posted this here
Будут ли обновления базы по адресам?
Внедрен на проекте в 200к+ визитов в сутки. Полет отличный.
а что с модулем для nginx? есть какие-нибудь движения в эту сторону?
В демке json отдается без экранирования апострофов, что приводит к ошибки парсинга.
Увы… но мой город тоже не определился правильно… при том что в самой базе название моего города есть…
Sign up to leave a comment.
Sypex Geo — быстрое определение города по IP