从 postgres db 接收 IP 地址的所有匹配网络
receive all matching networks for IP address from postgres db
我有一个带有 table networks
的 postgres 数据库,其中包括一列 network
类型的 cidr。我想对包含我提供的 IP 地址的所有网络进行排队。我找不到如何执行此操作。
目前我拉所有网络,然后使用include?
方法IPAddr class提供:
Network.all.each{|row| pp row if row.network.include?("10.176.0.5")}
您可以使用为 cidr 类型定义的 postgres 的 >>=
运算符(包括或等于)或 >>
(包括):
Network.where(['network >> ?', "10.176.0.5"])
我有一个带有 table networks
的 postgres 数据库,其中包括一列 network
类型的 cidr。我想对包含我提供的 IP 地址的所有网络进行排队。我找不到如何执行此操作。
目前我拉所有网络,然后使用include?
方法IPAddr class提供:
Network.all.each{|row| pp row if row.network.include?("10.176.0.5")}
您可以使用为 cidr 类型定义的 postgres 的 >>=
运算符(包括或等于)或 >>
(包括):
Network.where(['network >> ?', "10.176.0.5"])