Oracle 10g R2 RAC – vip on wrong interface

May 29, 2006 / By Christo Kutrovsky

Tags: , ,

I was installing RAC, and during the clusterware install I picked up the wrong interfaces for public and private. I had 10.x.x.x for the public IP on eth0 and 192.x.x.x for the private IP (interconnect) on eth1. I also had 10.x.x.x for the VIP. During the install I choose eth1 to be the public interface. Right after the install I lost connection to the machine via the 10.x.x.x IP.

What had happened was I had a 10.x.x.x IP on both eth0 and eth1, which was messing up the routing.

The solution? Simply modify the VIP in the cluster configuration. There’s actually a metalink article about this. Here are the essential commands:

srvctl stop nodeapps -n NODE1
srvctl stop nodeapps -n NODE2

srvctl modify nodeapps -n NODE1 -A 10.5.5.101/255.255.255.0/eth0 srvctl modify nodeapps -n NODE2 -A 10.5.5.102/255.255.255.0/eth0 srvctl start nodeapps -n NODE1 srvctl start nodeapps -n NODE2

They worked just fine. So if you ever mess up the interfaces, this is how you fix it.

If you need to change the private interface, then you need to use oifcfg. To verify your current settings use:

oifcfg getif     
eth0  10.5.5.0  global  public
eth1  192.168.0.0  global  cluster_interconnect

And use delif/addif to remove and re-create your private interface.

References:
Changing VIP
Changing interconnect

11 Responses to “Oracle 10g R2 RAC – vip on wrong interface”

  • Hi Christo,
    As far as I can recall I always had problem with VIP configuration in the end of CRS 10.2 installation on Linux. At first I thought it might be that I was running private interconnect on sub-NIC on top of pulic NIC but the same issue surfaced when I had separate NICs for private and public LANs. I didn’t go into indepth investigations and originally resolved it manually adding nodeapps interfaces but I found that it can be easilly fixed by running $ORA_CRS_HOME/bin/vipca.
    Regards,
    Alex

  • Christo Kutrovsky says:

    The problem you are refering to is different. Note:316583.1 describes it. I hope that’s the one you are refering to. Extract:

    During CRS install while running root.sh, The following messages are displayed

    Oracle CRS stack installed and running under init(1M)
    Running vipca(silent) for configuring nodeapps
    The given interface(s), “eth0″ is not public. Public interfaces should be used to configure virtual IPs.

    Someone at Oracle decided that your public interfaces should be Internet routable IPs and your databases will not be running on internal networks only, thus this error message.

    The solution is to simply run vipca manually.

    The problem I am describing is when you have successfully configured the virtual IPs (either automatic or manual), but you later discover you had the wrong interfaces.

  • Thanks for the Note number Christo. I’ve been following this note without knowing it. :) That explains it. And I have just checked – couldn’t use vipca again to _reconfigure_ nodeapps.

  • jones says:

    I found another use for this command. I found a bug in Oracle that asks you to use this command if you encounter this error while starting vipca for the first time…

    The given interface(s), “eth0″ is not public. Public interfaces should be used to configure virtual IPs.

    When you get that error, Oracle says to use this command to manually add the VIP:

    srvctl add nodeapps -n NODE1 -o $ORACLE_HOME -A 10.200.20.60/255.255.255.0

    However, your post notes that you add the interface to the end. I could not get my vip’s started until I added the interface to the end…

    srvctl add nodeapps -n NODE1 -o $ORACLE_HOME -A 10.200.20.60/255.255.255.0/eth0

    After that, the vip’s came up like a charm…

  • Arnold says:

    Thanks, it worked for me, too.
    I logged in as root,
    $export ORACLE_HOME=/home/oracle/app/oracle/product/10.1.0/db_1
    $cd $ORACLE_HOME
    $./srvctl add nodeapps -n aprac2 -o $ORACLE_HOME -A 192.168.18.0/255.255.255.0
    $./srvctl add nodeapps -n aprac1 -o $ORACLE_HOME -A 192.168.18.0/255.255.255.0
    and then user ‘retry’ in the install GUI, and all finished.

  • Kevin says:

    Thank you very much. 2 years later and it is still helping.

  • Manju says:

    It helped me too
    VIPCA was wrongly showing e1000g1 instead of e1000g0 while installing in vmware-solaris.
    Your note helped in simple steps.
    Thanks for the info

  • onnee says:

    I am faceing problem on private,public and virtual names during ma installation of Rac 10g on window 2003 server. plz help

  • Nery says:

    Hi Pythian, I need your help, could you tell me,(step by step) how Change IP address for oracle RAC public and VIP interfaces. I have Rac Oracle10g witch two nodes, S.O AIX 6.1

    We are in the process of changing IP address in our company.

    Thaks for your help.!!!!

  • john says:

    Hi,

    This was my exam question, still not sure about the answer.
    Any help is much appreciated

    You have a four node cluster with four node VIPS and three scan VIPS already in use after Grid infrastructure installation
    You plan to manage a customer-developed, web based application with the Oracle Grid Infrastructure to provide high availability.
    Which two statements are true about the vip application resource that must be created ?

    a-)The vip application must be active on the same subnet and ethernet adaptor as the interconnect
    b-)The vip application must be active on the same subnet and ethernet adaptor as the public ip address
    c-)The vip application must not be online on the same node as any of the scan vips.
    d-)The vip application must be active on a different node than the application depending on Che
    by using the dispersion start dependecy in the resource definition
    e-) The vip application must be enabled to run as the root user

  • Scan adress not accessible by client computer - Bizzteams says:

    [...] 0 Times in 0 Posts Please look at the following Docs: Oracle 10g R2 RAC – vip on wrong interface | The Pythian Blog The command should look similar to this (please keep in mind that I have not tested this and have [...]

Leave a Reply

  • (will not be published)

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>