我使用NetAddr和ipaddr-py在 Python 中计算子网包含,但我希望开始使用客户端逻辑来确定包含。我可能会弄清楚如何实现基本的基于位掩码的逻辑,但我宁愿使用更通用且得到良好支持/优化的东西。
我想做的基本上是这样的:
function filter_by_containment(candidate_subnets, ipaddr_or_cidr) {
accepted = [];
for (i = 0; i < candidate_subnets.length; i++) {
if (candidate_subnets[i].contains(ipaddr_or_cidr)) {
accepted.append(candidate_subnets[i]);
}
}
return accepted;
}
(注意;我不是 Javascript 专家,所以这可能是垃圾语法。我也在使用 JQuery 和其他一些东西,但为了尽量减少示例的规模,我使用了一个简单的、糟糕的循环)