So I wanted to have a local database on my Windows XP machine. To make the installation as much as possible server alike, I created the MS loopback adapter to be sure of a certain IP address:
Ethernet adapter loopback (oracle):
Connection-specific DNS Suffix . :
Description . . . . . . . . . . . : Microsoft Loopback Adapter
Dhcp Enabled. . . . . . . . . . . : No
IP Address. . . . . . . . . . . . : 10.1.2.3
Subnet Mask . . . . . . . . . . . : 255.0.0.0
Well, it seems that the listener daemon binds to the most recent IP address. Typical Windows behaviour, as it seems. In order to be sure I have the correct IP address I start my listener and instance after I established my last connection (e.g. Dial up networking to a 3G network Ethernet).
One is able to change the binding order when, for example, you do create another new network connection;
Start –> Run –> ncpa.cpl
Choose Advanced, Advanced Settings and choose under Connections your desired order.
Instead of some ugly ISP given network which will make your listener connections ugly:
* (CONNECT_DATA=(CID=(PROGRAM=)(HOST=__jdbc__)(USER=))(SERVICE_NAME=orcl)) * (ADDRESS=(PROTOCOL=tcp)(HOST=192.4.5.6)(PORT=2019)) * establish * orcl * 0
* service_update * orcl * 0
You get your clean (loopback adapter):
* (CONNECT_DATA=(CID=(PROGRAM=)(HOST=__jdbc__)(USER=))(SERVICE_NAME=orcl)) * (ADDRESS=(PROTOCOL=tcp)(HOST=10.1.2.3)(PORT=2019)) * establish * orcl * 0
* service_update * orcl * 0
NOTE!
To prevent from any (local) connection errors, please be aware that the %SystemRoot%\System32\drivers\etc\hosts file should be something like this:
127.0.0.1 localhost
10.1.2.3 your_host_name
Similar, on RAC environments, when you enter your hostname after the local loopback address, you might get one of the following errors:
ORA-00603: ORACLE server session terminated by fatal error
or
ORA-29702: error occurred in Cluster Group Service operation
(RAC info from http://www.puschitz.com/InstallingOracle10gRAC.shtml)