lua-resty-ipcidr

一个简单且快速的功能,用于检查 CIDR。

$ opm get lifeblood/lua-resty-ipcidr

lua-resty-ipcidr

一个简单且快速的功能,用于检查 CIDR

概述

    access_by_lua_block {
        local ipcidr = require("resty.ipcidr")
        local whitelist_ips = {
          "127.0.0.1",
          "10.10.10.0/24",
          "192.168.0.0/16",
      }
        if not ipcidr.ip_in_cidrs(ngx.var.remote_addr, whitelist_ips) then
          return ngx.exit(ngx.HTTP_FORBIDDEN)
        end
    }

方法

ip_in_cidrs

语法: bool, err = ipcidr.ip_in_cidrs(ip, cidrs)

接收一个字符串类型的 IPv4 地址和一个解析后的 CIDR 表格。

如果 IP 存在于任何指定的网络中,则返回true,否则返回false

返回nil和一个包含无效 IP 的错误消息

作者

danny

许可证

mit

依赖

luajit

版本