Fixing Windows RAC listener to listen on IP address of Hostname

Recently, there was an issue after a node was added to an existing Windows RAC cluster. After everything was set up, the local listener was not listening to the IP address (192.168.0.37) corresponding to the node’s hostname. Oracle version was 11.2.0.4.
The listener.ora was configured properly with the following line:
LISTENER=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER)))) # line added by Agent
The above setting works properly in linux, but does not in Windows
The listener.log showed the following error message, when listener started:
TNS-12542: TNS:address already in use
TNS-12560: TNS:protocol adapter error
TNS-00512: Address already in use
64-bit Windows Error: 48: Unknown error
Status of the listener was
lsnrctl status LSNRCTL for 64-bit Windows: Version 11.2.0.4.0 - Production on 29-AUG-2014 04:16:42 Copyright (c) 1991, 2013, Oracle. All rights reserved. Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER))) STATUS of the LISTENER ------------------------ Alias LISTENER Version TNSLSNR for 64-bit Windows: Version 11.2.0.4.0 - Production Start Date 19-AUG-2014 01:47:12 Uptime 10 days 2 hr. 29 min. 33 sec Trace Level off Security ON: Local OS Authentication SNMP OFF Listener Parameter File P:\oracle\app\11.2.0\grid\network\admin\listener.ora Listener Log File P:\oracle\app\11.2.0\grid\log\diag\tnslsnr\DEV-02\listener\alert\log.xml Listening Endpoints Summary... (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\LISTENERipc))) (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.0.38)(PORT=1521))) Services Summary... Service "+ASM" has 1 instance(s). Instance "+asm2", status READY, has 1 handler(s) for this service... Service "DEV.WORLD" has 1 instance(s). Instance "dev2", status READY, has 1 handler(s) for this service... Service "DEVXDB.WORLD" has 1 instance(s). Instance "dev2", status READY, has 1 handler(s) for this service... The command completed successfully
The node’s vip address was 192.168.0.38.
To force the local listener to listen to the ip address corresponding to the hostname of the node,
the listener.ora file was changed to
LISTENER= (DESCRIPTION= (ADDRESS_LIST= (ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER)) (address=(protocol=tcp)(host=192.168.0.37)(port=1521)) ) ) #LISTENER=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER)))) # line added by Agent
After the listener was re-started using
srvctl stop listener -n DEV-02 srvctl start listener -n DEV-02
The listener started listening on 192.168.0.37, which is the IP address for the hostname (DEV-02)
lsnrctl status LSNRCTL for 64-bit Windows: Version 11.2.0.4.0 - Production on 01-SEP-2014 17:52:46 Copyright (c) 1991, 2013, Oracle. All rights reserved. Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER))) STATUS of the LISTENER ------------------------ Alias LISTENER Version TNSLSNR for 64-bit Windows: Version 11.2.0.4.0 - Production Start Date 01-SEP-2014 17:52:46 Uptime 0 days 0 hr. 1 min. 3 sec Trace Level off Security ON: Local OS Authentication SNMP OFF Listener Parameter File P:\oracle\app\11.2.0\grid\network\admin\listener.ora Listener Log File P:\oracle\app\11.2.0\grid\log\diag\tnslsnr\DEV-02\listener\alert\log.xml Listening Endpoints Summary... (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\LISTENERipc))) (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.0.37)(PORT=1521))) (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.0.38)(PORT=1521))) Services Summary... Service "+ASM" has 1 instance(s). Instance "+asm2", status READY, has 1 handler(s) for this service... Service "DEV.WORLD" has 1 instance(s). Instance "dev2", status READY, has 1 handler(s) for this service... Service "DEVXDB.WORLD" has 1 instance(s). Instance "dev2", status READY, has 1 handler(s) for this service... The command completed successfully