ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

配置防火墙允许从外网访问内网oracle

2021-04-10 10:05:10  阅读:179  来源: 互联网

标签:socket 内网 TCP server listener 外网 client oracle 进程


客户端连接oracle的过程:

client进程首先与listener建立TCP连接,然后listener产生一个server进程并将server进程地址返回给client进程,之后client进程与该server进程建立TCP连接,由server进程完成数据库操作,并将结果返回给client端。对于UNIX系统,由于server进程是由listener创建的(fork),server进程将继承listener进程的资源,即使用相同的file handle和tcp socket。对于windows socket1.1而言,server线程与listener无法共享TCP socket。server线程会随机地选择一个TCP端口与client进行连接。而windows socket2支持shared socket,可以实现一个进程共享另一个进程的TCP socket。

如果需要从外网访问oracle,需做如下设置:

UNIX系统:

只需要在防火墙上开放监听端口。

WINDOWS系统:

1、在防火墙上开放监听端口。

2、设置Shared Socket (Windows Socket2支持)。设置方法:

在注册表:HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOME0上新建一个字符串值:USE_SHARED_SOCKET=TRUE。如果安装了多个目录,则每个类似的目录都要设置:HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOMEx (x目录编号).

设置后要重启实例.

如果windows不支持shared socket,则要在防火墙上开放所有端口。


标签:socket,内网,TCP,server,listener,外网,client,oracle,进程
来源: https://blog.51cto.com/lhrbest/2696542

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有