I have Oracle through a firewall running Network Address Translation (NAT) and port hopping. I've been using a network sniffer to troubleshoot an Oracle connection problem. When the client first connects, it uses port 1521 to NATed IP address of x.x.5.54. The server sends a packet that tells the client to connect to the UNNATed IP address of y.y.209.5 port 1934 (this port number does not stay the same, but I've read that if I add the USE_SHARED_SOCKET=TRUE value in the registry of the server the ports shouldn't change). I guess my question is: How do I configure the server to not send the IP address when it trys to renegotiate the ports to use?
In short, you can't. Like you've said, you can use the USER_SHARED_SOCKET=TRUE in your registry to force all communications to use the Listener port. But you can't force the IP addresses. About the best you can do is to implement Oracle's Connection Manager so that all communications go through one IP address. More information can be found in the Oracle 9i Net Services Administrator's Guide.
For More Information
- Dozens more answers to tough Oracle questions from Brian Peasland are available.
- The Best Oracle Web Links: tips, tutorials, scripts, and more.
- Have an Oracle or SQL tip to offer your fellow DBAs and developers? The best tips submitted will receive a cool prize. Submit your tip today!
- Ask your technical Oracle and SQL questions -- or help out your peers by answering them -- in our live discussion forums.
- Ask the Experts yourself: Our PL/SQL, database administration and data warehousing gurus are waiting to answer your toughest questions.
Dig Deeper on Oracle database design and architecture
Have a question for an expert?
Please add a title for your question
Get answers from a TechTarget expert on whatever's puzzling you.