#ip #ipv4
#ip — адрес #ipv4
Вопрос:
Я использую пакет npm с открытым IP-адресом, чтобы получить IP-адрес на стороне клиента, затем я сохраняю его для целей аутентификации, на данный момент я сохраняю его как число, а не как строку, например: «123.123.12.123» хранится как «12312312123». если формат адреса IPv4 постоянно, проблем не будет, но я заметил, что, например, если я использую сеть 4G для доступа к своему веб-сайту, это даст мне другие форматы IP, такие как: xxx.xx.xx.xx или xxx.xxx.xx.xx. Есть ли какой-нибудь способ узнать исходный формат IP-адреса после преобразования его в число?
Ответ №1:
Вы можете хранить адреса IPv4 и IPv6 в виде чисел, но не так, как вы описываете. Технически IP-адрес — это число, и оно преобразуется в удобочитаемую форму для нас, людей.
Вы можете использовать такие функции, как inet_pton и inet_ntop (для печати в number и number для печати соответственно), чтобы получить фактическое 32 или 128-битное число, которое вы ищете.
Комментарии:
1. Спасибо, я также нашел пакет npm под названием ip-to-int, который преобразуется двумя способами.