Este tutorial podría ayudarte.
La forma más eficiente de guardar direcciones IPv4 es con un campo INT (no VARCHAR como cabría esperar). Los convierte usando PHP ip2long
y viceversa usando INET_NTOA
función o PHP long2ip
función.
Si necesita almacenar IPv6, querrá usar un campo BINARIO en su lugar y inet_pton
función.