Сколько символов может быть IP-адрес?


12

Я должен создать поле в таблице MySQL для хранения IP-адресов. Мне нужно знать максимальное количество символов, которое может быть IP-адрес. Будь то ipv4, ipv6 или другой тип, который может сделать действительный IP-адрес необычно длинным. Так что я должен установить ограничение на количество символов?

Я прошу длину в том смысле, что слово «foo» имеет 3 символа, а не в байтах или что-то в этом роде.


Пожалуйста, перейдите на stackoverflow.com: это вопрос программирования
usr-local-ΕΨΗΕΛΩΝ

Вот ответ, показывающий, что адрес IPv6 может быть длиной до 45 символов: stackoverflow.com/questions/1076714/…
still_dreaming_1

Ответы:


20

Самый длинный адрес IPv6 - это 8 наборов из 4 символов (всего 32), каждый из которых разделен двоеточием. Это составляет 39 символов.

Адрес IPv4 - это не более 4 наборов из 3 цифр (12 символов), каждый из которых отделен точкой (.). Это составляет 15 символов.

Все это предполагает, что IP-адреса должны храниться в удобочитаемой форме. Я предпочитаю хранить IP-адреса в десятичной форме, так как вы никогда не знаете, как они будут использоваться. Ваш пробег может варьироваться.


Большое спасибо, удобочитаемая форма подходит для моего случая использования, так как я никогда не собираюсь использовать их вообще. Я храню ips людей, которые регистрируются на моем сайте, только в том случае, если они когда-либо загружают что-либо серьезно оскорбительное, и я должен передать их информацию властям.
Lonand

Извините за некропост, но на самом деле IPv6 может иметь длину до 45 символов в некоторых случаях IPv4-сопоставленных адресов IPv6, так как к нему :<ipv4 original address>
добавляется
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.