Quantos caracteres pode ter um endereço IP?

12

Eu tenho que criar um campo em uma tabela mysql para armazenar endereços IP. Preciso saber o máximo de caracteres que um endereço IP pode ter. Seja ipv4, ipv6 ou algum outro tipo que possa tornar um endereço IP válido invulgarmente longo. Então, como devo definir o limite de caracteres?

Estou pedindo comprimento, no sentido de que a palavra "foo" tem três caracteres, não em termos de bytes ou algo assim.

Lonand
fonte
Por favor, passar para stackoverflow.com: é uma questão de programação
ΕΨΗΕΛΩΝ usr-local-
Aqui está uma resposta que mostra que o endereço IPv6 pode ter até 45 caracteres: stackoverflow.com/questions/1076714/…
still_dreaming_1

Respostas:

20

Um endereço IPv6, no máximo, seria 8 conjuntos de 4 caracteres (32 no total), cada conjunto separado por dois pontos. Isso faz 39 caracteres.

Um endereço IPv4 tem no máximo 4 conjuntos de 3 números (12 caracteres), cada conjunto separado por um ponto (.). Isso faz 15 caracteres.

Tudo isso pressupõe que os endereços IP devem ser armazenados em formato legível por humanos. Prefiro armazenar endereços IP na forma decimal, pois você nunca sabe como será usado. Sua milhagem pode variar.

Patrick Seymour
fonte
Muito obrigado, a forma legível por humanos é adequada para o meu caso de uso, pois nunca os utilizarei em geral. Só estou armazenando os ips das pessoas que se inscrevem no meu site, caso alguma vez enviem algo que ofenda seriamente e eu precise entregar suas informações às autoridades.
Lonand
Desculpe pela necropost, mas, na verdade, uma IPv6 pode ser de até 45 caracteres em alguns casos de endereços IPv4-IPv6 mapeados, uma vez que é prefixado com:<ipv4 original address>
axelduch