Mario: PHP, MySQL und IPv6 Handling

Beitrag lesen

Hallo an alle.

Ich möchte eine bestehende Webapplikation IPv6-"ready" machen.

Im Moment werden alle IPv4 als Long in einer MySQL DB gespeichert.

Für IPv6 gibt es jedoch keine native 2long Funktion. Ich habe im Web zwar eine Alternative gefunden, welche mir jedoch nicht zusagt.

Daher müsste ich die IPv6 entweder als Varchar oder als Varbinary (wenn ich inet_pton nutze) speichern. Ein Vergleich zwischen mehreren IPs oder eine Rangesuche wären auch mit diesen beiden Varianten möglich, jedoch nehmen diese Felder mehr Speicher ein und die Operationen gehen langsamer vonstatten. Aber das kann ich noch verkraften.
Liegt die IPv6 in der Netznotation vor, müsste ich aber eine Range speichern, wenn ich das richtig verstanden habe. Wobei ich mir nicht sicher bin, ob IPv6 Addressen in Netznotation überhaupt im Internet vertreten sind.

Ich bin mir also absolut nicht schlüssig wie ich mit der IPv6 Problematik umgehen soll.

Hat hier schon jemand Erfahrung damit gesammelt und würde mir eine Richtung weisen, wie ich das am besten angehe.

Danke und Grüße
Mario