APP下载

IP地址和端口号的修改方法

2020-12-30陕西王金国孙健

网络安全和信息化 2020年4期
关键词:监听IP地址端口

■ 陕西 王金国 孙健

在日常生产以及网络安全管理过程中,我们有时会遇到数据库集群系统搬迁、主备切换等情况以及修改数据库服务端口的情况,要求修改集群IP地址以及数据库服务端口号,当Oracle数据库运行在单机模式下时,这些操作并不需要特别的技术准备即可完成。但当数据库运行在多机并行集群(RAC)模式下时,修改数据库的基础配置过程就具有很强的技术性。

Oracle12c集群IP地址的修改

1.更改公共地址(public IP)为当前同网段其它IP方法

如果在Oracle 12c集群环境中,网络端口号、子网和掩码不变,只更改公共地址(Public IP),那就很容易了,Oracle集群不需要做任何修改,只需要在操作系统级别上做修改即可。用户可以直接使用grid用户执行命令“crsctl stop cluster –all”关闭Oracle集群。使用操作系统命令修改所有主机节点上的重新定义的公共主机IP地址并修改/etc/hosts文件中主机名对应的IP行,直到该集群的所有公共主机IP地址修改完为止。之后使用grid用户执行命令“crsctl start cluster –all”重启Oracle集群。

2.更改公共地址(Public IP)为其它网段IP方法

当Oracle 12c集群环境更改子网、掩码、操作系统网络接口时,需要从集群配置信息(OCR)中删除原端口等网络定义信息,并将新的配置写入。为了更好的说明这一过程,笔者以实际实例将子网从10.2.156.0更改为10.2.166.0,用户需要首先按照规划的相应地址以及网段在操作系统层进行地址修改,之后以grid用户执行命令“$CRS_HOME/bin/oifcfg delif-global en4/10.2.156.0”“$CRS_HOME/bin/oifcfg setif -global en4/10.2.166.0:public”,确认更改已生效后,重启ORACLE集群即可。

3.VIP地址以及SCAN地址修改方法

Oracle并行集群环境中,当集群服务激活后,VIP地址以及SCAN地址才会激活并提供给外部用户访问。对这些内容的修改,属于集群系统管理的高级内容之一。

(1)更改集群节点VIP地址方法:

当对集群VIP地址进行修改时,需要用grid用户身份执行命令“srvctl config nodeapps–a”查看VIP地址信息,执行命令“crsctl status res–t”校验VIP状态,之后使用命令停止资源,例如:用户使用命令“srvctl stop instance -d RACDB -n racnode1”停止racnode1节点上的RACDB数据库实例,使用命令“srvctl stop vip -n racnode1–f”停止racnode1节点上的vip服务,注意:要加上-f参数,否则将出现如下错误:

PRCR-1014 :Failed to stop resource ora.racnode1.vip

PRCR-1065 :Failed to stop resource ora.racnode1.vip

CRS-2529:Unable to act on 'ora.racnode1.vip' because that would require stopping or relocating 'ora.LISTENER.lsnr',but the force option was not specified

之后用户更改定义的新的VIP地址、子网、掩码和VIP主机名,确认/etc/hosts文件已经修改为新的地址,以root用户执行“srvctl modify nodeapps-n racnode1 -A racnode1-nvip/255.255.255.0/en4”“crsctl stat res ora.racnode1.vip -p”修改VIP地址,使用命令“srvctl config nodeapps–a”校验改变,以grid用户身份执行$“srvctl start vip -n racnode1 ”“srvctl start instance -d RACDB -n racnode1”启动资源,使用命令“crsctl stat res -t”校验新的VIP地址已启用(online);在集群的其它节点上执行以上修改过程。如果需要的话,修改listener.ora,tnsnames.ora和LOCAL_LISTENER/REMOTE_LISTENER参数。

(2)更改集群SCAN 地址

当用户由于业务需要进行集群SCAN地址的修改或者添加时,需要满足如下要求:

①当使用GNS时,本方法不适用。

②scan地址要求和公网、VIP处在同一子网内。

③本方法是基于使用/etc/hosts解析scan。

以下具体实例是将原scan地址192.168.2.50改为192.168.2.44的具体操作过程:

①修改集群系统各主机节点/etc/hosts文件,将原scan地址10.106.2.50改为10.106.2.44。

②执行命令“srvctl config scan”查看当前vip设置,系统回显如下:

SCAN name:p570ddbfscan,Network:1/192.168.2.0/255.255.255.0/en5

SCAN VIP name:scan1,IP:/p570-scan/192.168.2.50

③用root用户停止scan_listener和sacn vip,依次执行如下命令:

$GRID_HOME/bin/srvctl stop scan_listener

$GRID_HOME/bin/srvctl stop scan

$GRID_HOME/bin/srvctl status scan

$GRID_HOME/bin/srvctl status scan_listener

④用root用户修改scan vip,执行命令如下:

$GRID_HOME/bin/srvctl modify scan -n p750-scan

⑤执行命令“srvctl config scan”检查是否修改成功,系统回显如下:

SCAN name:p570-scan,Network:1/192.168.2.0/2 55.255.255.0/en5

SCAN VIP name:scan1,IP:/p570-scan/192.168.2.44

⑥启动scan和scan_listener:

$GRID_HOME/bin/srvctl start scan

$GRID_HOME/bin/srvctl start scan_listener

至此集群系统的相关IP地址修改完成。

Oracle 12c集群本地监听(listener)端口修改

随着近年来网络犯罪形式的不断升级,Oracle数据库定义的默认服务端口“1521”已经成为了网络犯罪者日常进行试探和攻击的端口之一,这给网络安全带来不少压力。用户修改Oracle数据库服务端口是网络安全防范的基本技术措施之一。集群环境下修改服务端口同样要比单机环境技术能力要求稍高一些,笔者同样以将RAC 默认本地监听端口号“1521”修改为“9999”为例,详细进行讲解。

当进行端口修改时,用户需要使用“grid”用户执行“crsctl status res-t”“lsnrctl status”检查集群服务以及监听服务状态,使用命令“srvctl stop listener”停止本地监听,通过执行命令“srvctl config listener”确认当前监听配置,使用命令“srvctl modify listener -p 9999”将缺省1521端口修改为9999端口,完成后重起监听服务。

此时监听虽然已经进行了修改,如果在单实例数据库系统中,到此应该就已经完成了更改。但对于集群系统这只是完成了端口修改的前半部分,外部用户此时依然无法对集群数据库进行连接和访问。还需要对数据库初始化参数文件(Spfile)的本地监听端口号进行修改,用户需要使用“oracle”用户使用“sqlplus/as sysdba”登录数据库的相应节点并使用“alter system set local_lis tener='(ADDRESS=(PR OTOCOL=TCP)(HOST=IPVIP1)(PORT=9999))'sid=;”进行修改,其中“sid”选项为实例名,“host”选项为集群环境定义的相应VIP地址,用户可根据实际进行修改。

使用命令“srvctl stop scan_listener”“srvctl config scan_listener”“srvctl modify scan_listener -p 9999”“srvctl start scan_listener”完成对集群数据库scan监听(listener)端口的修改,以“oracle”用户登录通过“sqlplus/ as sysdba”执行命令“alter system set remote_listener='SCAN_NAME:9999' ;”完成Oracle集群数据库初始化参数文件(SPFILE)的scan端口修改。

后记

很多年前当我们使用单机愉快玩耍的时候,很难理解为什么那么工程师维护着网络、小型机、数据库会变成一种职业。

随着我们有幸进入这个领域,原来小时候我们的想法是那么天真,系统的复杂度是随着规模不断扩大的,企业线上业务,在应用不能终止访问的要求下,保证数据流的持续越来越成为一个重要课题,然而为此提出的技术解决方案本身又增加了更高的复杂度,了解和掌握这些复杂度,并将这些复杂度通过技术能力变成一项简单的操作流程,这是工程师团队存在的意义。

猜你喜欢

监听IP地址端口
一种有源二端口网络参数计算方法
英国风真无线监听耳机新贵 Cambridge Audio(剑桥)Melomania Touch
一种端口故障的解决方案
千元监听风格Hi-Fi箱新选择 Summer audio A-401
多按键情况下,单片机端口不足的解决方法
现有网络架构及迁移方案
网络监听的防范措施
公安网络中IP地址智能管理的研究与思考
《IP地址及其管理》教学设计
计算机的网络身份IP地址