跳到主要内容

ipv4 和 ipv6

判断一个字符串是否是有效的 IPv4 或 IPv6 格式,首先需要了解这两种 IP 格式的基本结构:

  1. IPv4 地址格式:

    • 由四个十进制数构成,范围是 0 到 255。
    • 这些数由点号分隔,例如192.168.1.1
    • 每个数不可以有前导零,例如192.168.01.1是无效的。
  2. IPv6 地址格式:

    • 由八组十六进制数构成,每组最多包含 4 个十六进制数字。
    • 组之间用冒号分隔,例如2001:0db8:85a3:0000:0000:8a2e:0370:7334
    • 连续的零可以缩写为双冒号::,例如2001:db8::1代表2001:0db8:0000:0000:0000:0000:0000:0001

验证一个字符串是否为有效 IP 地址需要:

  • 对于 IPv4,检查是否有四个数,且每个数在 0 到 255 之间,并且没有前导零。
  • 对于 IPv6,检查是否有八组十六进制数,数字合法且位置缩写合理。

通过这些规则,可以判断一个字符串是否是有效的 IPv4 或 IPv6 格式。