繁体   English   中英

节点-解析AWS IP范围并阻止

[英]Node - Parse AWS IP ranges and block

我看到AWS这里发布了一个具有所有IP范围的json文件(实际JSON HERE

我当时正在考虑使用此json文件来检查节点应用程序中的每个传入连接,但首先我想知道是否会为每个请求循环遍历它的开销太大?

其次,由于许多IP范围的格式不同,例如,我不确定该如何去做。

43.250.192.0/24
46.51.128.0/18
27.0.0.0/22

我不太确定它们的后缀是什么意思。

有人做过类似的事情吗?

您首先要担心的是正确的-对于每个请求,要遍历Amazon的IP都会产生很多开销。 这应该在防火墙处处理。

不过,Amazon提供的ip_prefix字段可用于确保该子网内存在有效IP地址。 node-ip模块可以提供帮助。 它具有cidrSubnet函数,可用于根据用户IP测试前缀。 参见下面的咖啡脚本。

ip = require 'node-ip'
amazonIPs = require 'amazonIPs.json'
someUsersIP = '192.168.1.190'

for prefix in amazonIPs.prefix
  if ip.cidrSubnet(prefix).contains(someUsersIP)
    console.log "#{someUsersIP} is within the #{prefix} range"

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM