可以在$OREACLE_HOME/network/admin下直接修改sqlnet.ora文件,增加如下内容:
tcp.validnode_checking=yes
#允许访问的ip
tcp.invited_nodes=(192.169.0.1,10.143.4.17,10.143.4.13)
#不允许访问的ip
tcp.excluded_nodes=(ip1,ip2,……)
修改sqlnet.ora后,重新启动listener服务,改动就可以生效了。
如果有人从不允许的IP客户端连接过来,会出现以下错误:
ERROR: ORA-12537: TNS: 连接已关闭

这种在Oracle网络层实现客户端IP访问限制的方法在防火墙后面的局域网内部可以采用。