|
Модераторы: skyboy, MoLeX, Aliance, ksnk |
|
Elfer |
|
||||
Шустрый Профиль Группа: Участник Сообщений: 76 Регистрация: 31.8.2008 Репутация: -1 Всего: -1 |
Впервые столкнулся с такой проблемой, что ip заказчика возвращается в странном виде: 2001:7d0:838f:f780:d4c5:776d:9929:c5e3
Возвращаю через $_SERVER["REMOTE_ADDR"]. Очень сильно удивился, что такой нестандартный ip и вывел всё содержимое $_SERVER:
Очень удивился и попросил заказчика открыть 2ip.ru сайт дабы посмотреть что там покажет. Показало: 90.190.172.98 Полез в интернет искать объяснения увиденному, нашёл только то, что ip желательно определять по такому алгоритму:
Взял его себе на вооружение, но с моей проблемой этот код не поможет. Подскажите, плиз, как быть с такими странными ip "2001:7d0:838f:f780:d4c5:776d:9929:c5e3", как их привести к нормальному виду? |
||||
|
|||||
a0730 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 0 Регистрация: 1.6.2008 Репутация: нет Всего: нет |
||||
|
||||
a0730 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 0 Регистрация: 1.6.2008 Репутация: нет Всего: нет |
||||
|
||||
Elfer |
|
|||
Шустрый Профиль Группа: Участник Сообщений: 76 Регистрация: 31.8.2008 Репутация: -1 Всего: -1 |
Как отключить IPv6? Я же не скажу каждому юзеру отключить IPv6.
Задача в том, чтобы по ip определять из какой страны пользователь. База ip есть, функционал тоже есть. Нужно чтобы эти ip, с которых заходят пользователи были стандартные: числа и точки. База с ip адресами и странами тоже содержим стандартные ip. Т.е. я не могу ip вида 2001:7d0:838f:f780:d4c5:776d:9929:c5e3 сравнивать с ip в этой базе. Мне нужно эти странные ip приводить к нормальному виду. На 2ip.ru возвращается почему-то нормальный ip. Там же как-то делается это PHP-средствами на автомате. Это сообщение отредактировал(а) Elfer - 8.9.2016, 11:51 |
|||
|
||||
gta4kv |
|
|||
Walking around mad. Профиль Группа: Завсегдатай Сообщений: 1868 Регистрация: 25.7.2006 Репутация: 21 Всего: 91 |
Нельзя привести эти "странные ip" к нормальному виду, потому что это и есть нормальный вид. GeoIP давно поддерживает IPv6, в чем проблема?
|
|||
|
||||
Elfer |
|
|||
Шустрый Профиль Группа: Участник Сообщений: 76 Регистрация: 31.8.2008 Репутация: -1 Всего: -1 |
Хорошо, почему тогда 2ip.ru показал привычный нам ip-адрес из цифр и точек? Попробую также поискать в сети базу ip-адресов и стран расширенную, с нестандартными ip. Очень мало информации в интернете по этому поводу, тяжело найти ответ. Вот рассчитываю на ответы гуру.
|
|||
|
||||
gta4kv |
|
|||
Walking around mad. Профиль Группа: Завсегдатай Сообщений: 1868 Регистрация: 25.7.2006 Репутация: 21 Всего: 91 |
Еще раз, вам надо убрать из головы понятие про "нестандартные".
Тут все предельно просто, адреса в диапазон 1.1.1.1 - 255.255.255.255 (IPv4) заканчиваются, поэтому повсеместно вводится новый формат (IPv6). И это происходит уже достаточно давно.Информации об этом в интернете настолько много, что читать можно минимум месяц. А теперь к проблеме: Полагаю, что для определения географической принадлежности пользователя вы используете базу GeoIP (она, мне кажется, в общем-то одна). Так вот у этой базы давно есть обновленная версия с IPv6. Так что вам надо сделать всего две вещи: 1) Почитать про IPv6 и выкинуть из лексикона понятие про странный/нестандартный IP (Ибо это уже давно стандарт) 2) Обновить базу GeoIP А насчет почему 2ip отображает обычный адрес, так это потому, что коннект в пространстве IPv6 возможен только тогда, когда и хост и клиент поддерживают его. Это сообщение отредактировал(а) gta4kv - 16.9.2016, 08:59 |
|||
|
||||
_zorn_ |
|
|||
Эксперт Профиль Группа: Завсегдатай Сообщений: 1077 Регистрация: 21.8.2007 Репутация: 6 Всего: 12 |
На самом деле 0.0.0.0 - 255.255.255.255. А еще честнее от 00000000 до FFFFFFFF Всякие броадкасты/юникасты/эникасты просто по договоренности придуманы. На самом деле IP адрес обычное 32 битное число и ваш 1.1.1.1 выглядит так - 0x01010101 Ну а 10.1.1.1 (кстати приватный диапазон по договоренности) 0x0A010101 and so on Ну не хватило 32 бит на весь мир Это сообщение отредактировал(а) _zorn_ - 16.9.2016, 16:28 |
|||
|
||||
gta4kv |
|
|||
Walking around mad. Профиль Группа: Завсегдатай Сообщений: 1868 Регистрация: 25.7.2006 Репутация: 21 Всего: 91 |
Точняк. Не знаю откуда вообще придумал 1.1.1.1, даже 1.0.0.0 было бы логичнее
|
|||
|
||||
_zorn_ |
|
|||
Эксперт Профиль Группа: Завсегдатай Сообщений: 1077 Регистрация: 21.8.2007 Репутация: 6 Всего: 12 |
Кстати кому принадлежит эта сеть ? Хотел бы себе такую (как раньше аську шестизнак )
Значит тоже "зарезервировано". Писец, столько A сетей пропадает, а они IPv6 выдумывают Хотя кто мы такие, чтобы стремать придумщиков за организацию и выдачу адресов... 128 бит хватит на каждый кросовок на планете ) Это сообщение отредактировал(а) _zorn_ - 16.9.2016, 18:25 |
|||
|
||||
_zorn_ |
|
|||
Эксперт Профиль Группа: Завсегдатай Сообщений: 1077 Регистрация: 21.8.2007 Репутация: 6 Всего: 12 |
Вообще я сейчас подумал...
Сначала придумал надуманную проблему что их запоминать тяжелее (попробуй зайти на этот абырвалг с двоеточиями). Но потом подумал с другой стороны - нам (технарям в том числе) этого не избежать. А основная проблема в старом оборудовании и САМОЕ ГЛАВНОЕ в старых сетевых специалистах. Одномоментно никто на IPv6 все не переведет. Но этого не избежать. Так что ответ ТС - скоро вы будете говорить про "127.0.0.1" - "странный айпи адрес" ЗЫ. Кстати, знали что вся А сеть 127 - это локалхост ? Т.е. 127.213.12.43 - тот же самый локалхост ) Это про "разумное" использование адресного пространства Добавлено через 14 минут и 36 секунд Хотя кому я вру. Сам же не раз отшивал предложения типа "вставить определенное поведение для определенного объекта при определенных обстоятельствах". А учитывая сколько сетевого оборудования (а там есть прошивки, ага) и т. п. в мире существует... пусть лучьше будут договоренности... Это сообщение отредактировал(а) _zorn_ - 16.9.2016, 18:44 |
|||
|
||||
_zorn_ |
|
|||
Эксперт Профиль Группа: Завсегдатай Сообщений: 1077 Регистрация: 21.8.2007 Репутация: 6 Всего: 12 |
Это я представил себя в качестве производителя сетевой железяки
Сейчас то "договоренности" не особо соблюдаются бывает. IPv6 по идее должно решить эту "проблему". Но как видно проблема не в недостатке... хотя в нем тоже ) Это сообщение отредактировал(а) _zorn_ - 16.9.2016, 19:10 |
|||
|
||||
Elfer |
|
|||
Шустрый Профиль Группа: Участник Сообщений: 76 Регистрация: 31.8.2008 Репутация: -1 Всего: -1 |
Спасибо за толкование, надеюсь оно верное и прислушаюсь к этому. Поищу базу под IPv6 адреса.
|
|||
|
||||
Правила форума "PHP" | |
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |