Oracle RAC 19c Masterclass – Part 5

Oracle RAC Networking Explained: Public Network, Private Interconnect, VIP, SCAN, and Listeners

Network configuration is one of the most important aspects of an Oracle RAC environment. A well-designed network provides reliable client connectivity, fast inter-node communication, and seamless failover. Conversely, many RAC issues—such as node evictions, connection failures, and poor performance—can be traced back to network misconfigurations.

In this article, we’ll explore the networking components of Oracle RAC, explain how they interact, and review the tools and commands used to verify and troubleshoot them.

Why RAC Uses Multiple Networks

Unlike a single-instance database, Oracle RAC separates client traffic from cluster communication.

A typical RAC deployment uses:

  • Public Network – Client connections.
  • Private Interconnect – Communication between RAC nodes.
  • Virtual IP (VIP) – Fast client failover.
  • SCAN – Single client access point.
  • Listeners – Accept and route client connections.

Each network has a specific role and should never be considered interchangeable.

Oracle RAC Network Architecture

A simplified two-node architecture:

                        Clients
                           |
                    +----------------+
                    |   DNS / SCAN   |
                    +-------+--------+
                            |
                     Public Network
                            |
          +-----------------+-----------------+
          |                                   |
     +----------+                       +----------+
     | Node 1   |                       | Node 2   |
     +----------+                       +----------+
     | VIP      |                       | VIP      |
     | Listener |                       | Listener |
     +----------+                       +----------+
          |                                   |
          +---------------+-------------------+
                          |
                Private Interconnect
                          |
          +---------------+-------------------+
          |                                   |
      Cache Fusion                     Cluster Heartbeat

Public Network

The public network is used by:

  • Applications
  • DBAs
  • Oracle Enterprise Manager
  • RMAN clients
  • SQL*Plus
  • JDBC
  • ODP.NET

Every RAC node has its own public IP.

Example:

NodePublic IP
racnode1192.168.100.101
racnode2192.168.100.102

Verify:

ip addr

or

hostname -I

Private Interconnect

The private interconnect is reserved for cluster communication.

It carries:

  • Cache Fusion traffic
  • Global Cache Service (GCS)
  • Global Enqueue Service (GES)
  • Cluster heartbeat
  • Cluster synchronization

Example:

NodePrivate IP
racnode110.10.10.1
racnode210.10.10.2

Verify interface configuration:

oifcfg getif

Example:

eth0 192.168.100.0 global public
eth1 10.10.10.0 global cluster_interconnect

Why the Private Interconnect Matters

Every time one RAC instance needs a data block that is currently in another instance’s cache, Oracle transfers that block through the private network.

Example:

Instance 1

Buffer Cache

      |

Private Interconnect

      |

Instance 2

Buffer Cache

The private interconnect should have:

  • Low latency
  • High bandwidth
  • Redundancy

Oracle commonly recommends 10 GbE or faster for production RAC environments, especially where Cache Fusion traffic is significant.

Virtual IP (VIP)

Each RAC node has:

  • One Public IP
  • One VIP

Example:

NodePublicVIP
racnode1192.168.100.101192.168.100.111
racnode2192.168.100.102192.168.100.112

Why use VIPs?

When a node fails:

Without VIP:

Client

|

Dead Node

(wait TCP timeout)

Clients wait until the TCP timeout expires.

With VIP:

Client

|

VIP moves immediately

|

Connection fails quickly

Reconnect

Applications receive an immediate network error and can reconnect much sooner.

SCAN (Single Client Access Name)

One of the major improvements introduced with Oracle RAC 11g is SCAN.

Before SCAN:

Application

|

Node1 Listener

Node2 Listener

Node3 Listener

Applications needed to know every node.

With SCAN:

Application

|

rac-scan.wadhahdaouehi.tn

|

SCAN Listener

|

Cluster

The application connects using a single hostname, while Oracle routes the session to an appropriate node.

Benefits include:

  • Simpler client configuration.
  • Easier cluster expansion.
  • Improved connection load balancing.

SCAN Listeners

A RAC cluster typically uses three SCAN listeners.

Verify:

srvctl status scan_listener

Example:

SCAN Listener LISTENER_SCAN1 is enabled
SCAN Listener LISTENER_SCAN2 is enabled
SCAN Listener LISTENER_SCAN3 is enabled

Check configuration:

srvctl config scan_listener

Local Listener

Each RAC node also runs a local listener.

Verify:

srvctl status listener

Example:

Listener LISTENER is running on node racnode1
Listener LISTENER is running on node racnode2

Local listeners accept client connections and register local database services.

SCAN Resolution

Oracle recommends that the SCAN name resolve to three IP addresses.

Example:

nslookup rac-scan.wadhahdaouehi.tn

Expected:

192.168.100.120

192.168.100.121

192.168.100.122

These addresses should map to the SCAN listeners managed by Clusterware.

Verify Network Configuration

Display network resources:

srvctl config network

Check VIPs:

srvctl config vip

Check SCAN:

srvctl config scan

Display interfaces:

oifcfg iflist -p -n

These commands provide a quick overview of the RAC network configuration.

Verify Listener Status

Using lsnrctl:

lsnrctl status

Useful information includes:

  • Listening endpoints.
  • Registered services.
  • Database instances.
  • Connection statistics.

Test Client Connectivity

Connect using SCAN:

sqlplus system@rac-scan.wadhahdaouehi.tn:1521/orcl

Check the connected instance:

SELECT instance_name
FROM v$instance;

Run the connection several times to observe how sessions are distributed across instances.

Load Balancing

Oracle RAC provides two forms of load balancing.

Client-side Load Balancing

The client chooses one of the available SCAN listeners.

Server-side Load Balancing

The listener directs the connection to the instance offering the best service based on current workload.

Using services instead of connecting directly to an instance improves both scalability and flexibility.

Common Network Problems

SCAN Does Not Resolve

Symptoms:

  • Connection failures.
  • ORA-12545.
  • ORA-12154.

Verify:

nslookup rac-scan.wadhahdaouehi.tn

VIP Offline

Check:

srvctl status vip

Possible causes:

  • Network configuration.
  • Interface failure.
  • Cluster resource issue.

Listener Not Running

Verify:

srvctl status listener

Start if necessary:

srvctl start listener

Always use srvctl rather than starting the listener manually in a RAC environment.

Slow Cache Fusion

Possible causes:

  • High interconnect latency.
  • Packet loss.
  • Incorrect MTU settings.
  • Network congestion.

Monitor the private interconnect before investigating database-level tuning.

Node Evictions

Many node evictions are related to:

  • Private network interruptions.
  • Storage delays.
  • CPU starvation.

Check Clusterware logs before assuming a database problem.

Useful RAC Networking Commands

Check node names:

olsnodes -n

Display interface configuration:

oifcfg getif

Check VIP status:

srvctl status vip

Check SCAN listeners:

srvctl status scan_listener

Check local listeners:

srvctl status listener

View cluster resources:

crsctl stat res -t

These commands should become part of every RAC administrator’s troubleshooting toolkit.

Best Practices

  • Separate public and private traffic.
  • Use redundant network interfaces for the private interconnect.
  • Configure SCAN through DNS in production environments.
  • Always connect applications using services rather than specific instances.
  • Manage listeners, VIPs, and SCAN resources with srvctl.
  • Monitor interconnect latency and packet loss as part of routine health checks.

DBA Tip

One of the most common mistakes I see is troubleshooting a RAC networking issue from the database layer first.

If users report connection problems, begin with the network:

  • Is the VIP online?
  • Does the SCAN name resolve correctly?
  • Are the SCAN listeners running?
  • Are the local listeners registered?
  • Is the private interconnect healthy?

Only after confirming these components should you investigate database sessions or SQL performance.

In RAC, many “database problems” start as network problems. A systematic check of the networking stack often leads to the root cause much faster.

Conclusion

Oracle RAC networking is more than assigning IP addresses. It combines public networking, private interconnects, VIPs, SCAN listeners, and local listeners into a resilient architecture that supports high availability, efficient workload distribution, and rapid failover.

A solid understanding of these components is essential for both successful deployments and effective troubleshooting.

Bookmark the permalink.
Loading Facebook Comments ...

Leave a Reply