sql >> Base de Datos >  >> RDS >> Mysql

Tamaño para almacenar direcciones IPv4, IPv6 como una cadena

Suponiendo una representación textual en una cadena:

  • 15 caracteres para IPv4 (xxx.xxx.xxx.xxx formato, 12+3 separadores)
  • 45 caracteres para IPv6

Esas son la longitud máxima de la cadena.

Alternativas al almacenamiento como cadena:

  • IPv4 es de 32 bits, por lo que un tipo de datos MySQL que puede contener 4 bytes servirá, usando INT UNSIGNED es común junto con INET_ATON y INET_NTOA para gestionar la conversión de dirección a número y de número a dirección
  • Para IPv6, desafortunadamente MySQL no tiene un tipo de datos de 16 bytes, sin embargo, uno puede poner el IPv6 en una forma canónica, luego separarlos en 2 BIGINT (8 bytes), esto sin embargo utilizará dos campos.