gpt4 book ai didi

javascript - 验证 IP 地址不是 0.0.0.0 或多播地址

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:56:03 25 4
gpt4 key购买 nike

使用 JavaScript 如何验证 IP 地址“x.x.x.x”是有效的 IPV4 单播地址,例如不是 0.0.0.0 或多播(224.0.0.0 到 224.0.0.255、224.0.1.0 到 238.255.255.255、239.0.0.0 到 239.255.255.255)?

最佳答案

首先你需要把它变成一个数字,使用这个函数:-

function IPToNumber(s)
{
var arr = s.split(".");
var n = 0
for (var i = 0; i < 4; i++)
{
n = n * 256
n += parseInt(arr[i],10)

}
return n;
}

查看您的规范,虽然您似乎列出了一系列范围,但这些范围对我来说似乎是连续的,可以简化为(224.0.0.0 到 239.255.255.255)。因此你可以测试:-

var min = IPToNumber("224.0.0.0");
var max = IPToNumber("239.255.255.255");

var ipNum = IPToNumber(sTestIP);

var isValid = (ipNum != 0 && (ipNum < min || ipNum > max))

当然请注意,在不知道目标子网的情况下,您无法判断该地址是该子网的网络地址还是广播地址。

关于javascript - 验证 IP 地址不是 0.0.0.0 或多播地址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1503893/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com