public static function expandIPv6($ip)
    {
        $addr = inet_pton($ip);
        if ($addr === false) {
            return false;
        }

        $hex = unpack('H*hex', $addr);
        return substr(preg_replace('/([a-f0-9]{4})/i', '$1:', $hex['hex']), 0, -1);
    }