I am not a DB or even Oracle expert, but I wanted to understand when and why Oracle returns a different non-VIP address to the client, assuming this is correct behaviour?
listener.ora
LISTENER_DB-A =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = DB-A-VIP)(PORT = 1521)(IP = FIRST))
# this is the VIP 10.0.0.15
)
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.0.0.10)(PORT = 1521)(IP = FIRST))
)
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))
)
)
)
Here, after connecting to the IP address 10.0.0.15, the Oracle server returns the 10.0.0.10 address to the client. This is my network sniff of the said behaviour:
Client to Oracle
(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=10.0.0.15)(PORT=1521)))
(CONNECT_DATA=(CID=(PROGRAM=)(HOST=__jdbc__)(USER=))(SERVER=DEDICATED)
(SERVICE_NAME=kdtest_db)(FAILOVER_MODE=(TYPE=SELECT)(METHOD=BASIC)(RETRIES=5)(DELAY=5))))
Oracle to Client
(DESCRIPTION=(CONNECT_DATA=(SERVICE_NAME=DB-A))(ADDRESS=(PROTOCOL=TCP)(HOST=10.0.0.10)(PORT=1521)))
I know that this behaviour is not mandatory, as I've seen Oracle server respond without said redirection. What is the reason the server is acting this way? Thanks in advance!
Aucun commentaire:
Enregistrer un commentaire