Tja, er is nooit gezegd dat programmeren even in vijf seconden kan.
Een functie maken met:
- De 3 server variabelen afgaat en de eerste die een ip heeft in een variabel plaatsen
- IP checken of er een : in voor komt (strstr), zo ja? IPv6. Zo nee? IPv4
- Is IP IPv4? Dan een ip2long erover heen gooien (hetzelfde als INET_ATON) of als je direct naar varbinary wilt converten gebruik je ook hier inet_pton en een mysql_real_escape_string
- Is IP IPv6? Dan een mysql_real_escape_string en een inet_pton
- Eruit halen? Checken of IPv4/6 is. Is IPv4? long2ip eroverheen. Is IPv6? inet_ntop eroverheen.
Het is nu alleen een kunst er een geschikte kolom ervoor te vinden. Geen tijd op het te optimaliseren? Varchar is your friend
Je zou ook voor een VARBINARY kunnen gaan. Bij die oplossing moet je alleen nog van de IPv4 adressen een binary maken.