我在 postgresql 8.3 数据库上。我试图找出错误在下面的查询中。我正在尝试设计一个查询以仅选择作为私有地址的 source_ips 和 destination_ips。
出于某种原因,在下面的查询中获取的地址之一是地址 208.117.252.39,它不是私有地址。
下面的查询中的逻辑是否有问题会使其也选择公共 IP 地址?
select source_ip, destination_ip
from ip_table
where
(
inet '10/8' >> source_ip
or inet '192.168/16' >> source_ip
or source_ip >= inet '172.16/16' and source_ip < inet '172.32/16'
)
and inet '10/8' >> destination_ip
or inet '192.168/16' >> destination_ip