Геолокация с IPv6?
Я работаю над библиотекой геолокации IP, которая использует первые три октета адреса IPv4 для определения страны пользователя, города, лат, lon и т.д. Работает как шарм.
Но он не обрабатывает адреса IPv6, и я бы хотел, чтобы он это сделал.
Можно ли каким-либо образом преобразовать адрес IPv6, чтобы получить эквивалент первых трех октетов адреса IPv4, или они находятся на совершенно другой схеме нумерации, требующей совершенно другого отображения ipgeo?
Ответы
Ответ 1
типичное размещение IPv6 - это 32 слова (четыре октета) для Интернета
провайдер (который может быть многонациональной компанией), затем /48 (шесть октетов)
на конечный сайт (обычно это организация-клиент). Вы можете получить
отправной точкой в список делегированных блоков IANA.
Это только для
регистрации в базах данных РИР. Назначение для завершения
пользователи обычно не записываются так, мой текущий адрес,
2a01:e35:8bd9:8bb0:92b:8628:5ca5:5f2b
расскажет вам только, что мой
штаб-квартира провайдера находится в Париже (поскольку это национальная компания,
клиенты могут находиться где угодно во Франции).
Другим исключением являются PI (независимые от поставщика), которые
обычно /48.
Кроме того, существует множество баз данных геолокации для IPv4 и, к моему
знаний, нет для IPv6. Вам придется делать все сами.
К резюме: больше работы, чем вы, по-видимому, верите.
Ответ 2
Дружеская коррекция комментария Ноя (3 июня в 7:57) -
В отделе клиентских служб MaxMind (основное внимание): "IPv6 в настоящее время НЕ поддерживается. В будущем мы планируем его реализовать, но на данный момент у нас нет даты".
Ответ 3
IPv6 использует совершенно другую схему адресации по сравнению с IPv4. Невозможно сопоставить адреса IPv6 с адресами IPv4, за одним исключением. Если вы видите адреса IPv6, которые начинаются с 2002 года: тогда адрес является адресом 6to4. Вероятно, вы не увидите много тех, кто используется, и они устарели, но они могут отображаться на IPv4.
Каждый пользователь открытого IPv4-адреса может использовать /48 (65536 подсети) пространства IPv6. Эти адреса всегда начинаются с 2002 года, а следующие два шестнадцатеричных числа - это адрес IPv4. Итак, 2002: 5389: 1164: соответствует моему собственному веб-серверу IPv4-адрес (83.137.17.100):
0x53 = 83
0x89 = 137
0x11 = 17
0x64 = 100
Но все "нормальные" адреса IPv6 полностью не связаны с любыми адресами IPv4. По крайней мере, стандартным способом. Интернет-провайдер может определить связь между адресами IPv4 и IPv6 при развертывании IPv6 для своих клиентов. Но вы не узнаете об этих отношениях, поэтому вам будет бесполезно...
Ответ 4
maxmind.com службы геолокации и библиотеки обрабатывают IPv6 в порядке. Возможно, их материал для вас вариант. (У меня нет никакой связи с ними.)
Ответ 5
Геолокация плохая, ммкей?
Интернет является локально-агностиком, и я никогда не видел, чтобы геолокация использовалась для чего-то нетривиального-не-зла. то есть единственные хорошие приложения, которые я видел (выбор языка), были тривиальными (так же легко было бы выпадающим списком). существует множество злых приложений (это видео недоступно в вашей стране, ориентированное на мое физическое местоположение для рекламы и отслеживания)
мы не можем отговаривать что-то подобное от существующих, но мы должны настаивать на том, чтобы сделать его незаконным или, по крайней мере, социально неприемлемым для использования.
Ответ 6
Так как, похоже, нет простого способа сделать это, возможно, мы получим возможность сделать что-то, что не было сделано в случае IPv4 (*)
Мы могли бы остановиться и спросить себя, является ли это хорошей идеей.
(*) Или, если это было сделано, это не сработало!
Ответ 7
Если вы прочитали несколько ipv6, адрес и механизм перехода на wiki, вы найдете несколько шаблонов адресов IPv6, которые могут вывести ipv4 (siit, ipv4-отображаемый ipv6, nat64, вещь 2002: *, написанная выше, и т.д..). Один из них, чтобы начать:
http://en.wikipedia.org/wiki/IPv6_transition_mechanisms
Я не стал бы рассчитывать на то, что эти схемы будут достаточно популярны, чтобы делать обычные геоотчеты, защиту от мошенничества или обнаружение инцидентов, но я определенно отдал бы предпочтение поиску ipv4 geo для таких выведенных адресов ipv4 по поиску gep ipv6 ( предполагая, что ipv4 db более полно).
Моя забота о геоинформации ipv6 - невероятно большое количество подсетей. Базы данных будут увеличиваться (больше диапазонов ip), что ожидается, но при том же объеме геоинформации терминала, базы данных будут более редкими, а более глубокое дерево также будет продолжать итерацию (для реализации, которая использует двоичные или основополагающие деревья), что подразумевает некоторые стоимость выполнения. Geo-базы данных, использующие sql-таблицы с диапазонами ip, вероятно, также пострадают, поскольку у нас нет большого количества 128 бит, которые я знаю, для использования арифметики.
Еще одна проблема - мобильные телефоны: ipv6 предназначен для облегчения роуминга, если я не ошибаюсь. Вы можете изменить сотовые башни и сохранить свой IP-адрес. возможно, даже при изменении города, региона или страны. Я несколько сомневаюсь, что с этой точки зрения было связано с тем, что для MAC-адреса была важна сильная адреса. IP-адреса существуют именно для целей маршрутизации, но я считаю, что справедливо отметить, что они могут стать достаточно инвариантными, чтобы, очевидно, калечить точность геопозиции.
Я чувствую, что сотрудничество пользовательских агентов/браузеров на уровне приложений (например, некоторый заголовок геоданных), вероятно, будет в будущем, даже если это может быть подделано озорными людьми.
Ответ 8
Существует протокол под названием Referral Whois, который позволяет провайдерам публиковать информацию о геолокации IP и другие, чтобы получить его.
Например, мой текущий IP 2001: 470: b4ea: babe: d57: 15c8: 97b: 60c9 принадлежит Hurricane Electric в США. Фактический сервер, на котором я использую туннель IPv4-IPv6, который я использую, находится в Швейцарии, но я в Австрии.
Он публикует все это, поэтому, если вы введете IP-адрес в инструмент, поддерживающий RWhois, например this, вы найдете контактные данные HE и somwhere near внизу вы видите
контакт: Имя: Частный клиент - Hurricane Electric
контакт: улица-адрес: частная резиденция
контакт: Страна-код: AT
который является моим местоположением.
Не многие поставщики публикуют это, и не многие из них поддерживают геолокацию, но по крайней мере он существует.
Большинство поставщиков геолокации IP-адресов (тех, кто поддерживает IPv6, некоторые из них по-прежнему не используют), помещают этот IP-адрес в Швейцарию, некоторые даже в США.