Issue: Recently I had to install an Oracle Client on a machine that was going to run Siebel Tools along with OBIEE, the machine was on network A and the Database was on network B. I was skeptical that the connectivity was there to allow the two to talk to each other.
I have listed the steps carried out during installation and listed a number of handy tools that can be used to identify if there are any network issues.
Actions Carried Out:
- Installed Oracle Client 11.1.0.7.0 on Windows 7 Enterprise Machine
- Ensured that Host File (C:\WINDOWS\system32\drivers\etc\hosts) was updated with the Database Server Names and IP Addresses (e.g SERVER IP SERVER NAME / 11.191.2.111 DBSERVERNAME)
- Updated the TNSNAMES.ORA with the relevant entries for the Database.
- Opened up SQL Developer to connect to the Database to verify connectivity, the TNS entries were picked up find from the TNSNAMES.ORA file.
Error Given:
When trying to connect from the SQL Developer to the Database I got the following Error Message: "Status - Failure - The Network Adapter could not establish the connection"
I suspected that as the Source and the Destination were on separate networks there would be a firewall in between, this firewall would actually consist of a Firewall on Network A to talk to Network B AND a Firewall on Network B to talk to Network A.
Thus both these firewalls would need to have to be updated, the update would take the form of allowing traffic through from specified IP Source on a specific port identified in the TNSNAMES. ORA.
STEST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = MANTESTNPSRAA01-vip)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = MANTESTNPSRAA02-vip)(PORT = 1521))
(LOAD_BALANCE = TRUE)
(FAILOVER = TRUE)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = STEST.WORLD)
(FAILOVER_MODE =
(TYPE = SELECT)
(METHOD = BASIC)
)
)
)
Tests Carried Out
Test 1: TNSPING
TNSPING is a utility that determines whether or not a service (for example, an Oracle database, an Oracle Names Server or any other Oracle service) on a Net8 network can be successfully reached. This concludes that the Destination identified in the TNSNAMES.ORA file is up and running on the network, it does not conclude that the Source can communicate to the destination via a specific Port. |
Test 2: TELNET
The Telnet command is a conclusive way to confirm that Machine A can communicate with Machine B over a networks/s or Domains. The command must be repeated successfully from Machine B to Machine A to comfirm that both machines can communicate with each other (i.e traffic can be passed both ways).
If we want to connect set to say STEST (IP Address is 10.199.2.100) and Port used to connect to it is 1521, the client should be able to telnet to the IP Address via the Port.
This would conclude that the Source and Destination can definitely communicate with each other:
Unfortunately in my case I got:
Telnet failed to connect.
Test 3: Using Microsoft Port Query
I found this utility on the Microsoft website which allows you to PING to a machine via a specific port, so I thought I'd run it to see if it could give me a bit of granularity not provided by either the TELNET nor TNSPING tools.
Download:
Information:
I down loaded this and it's a fantastic UI Tool that consist of a Batch file/UI Component that you can run, this is the result given:
The result tells me that the Port 1521 is FILTERED ( I was hoping for LISTENING).
The response indicates that the target port is being filtered. PortQry did not receive a response from the target port. A process may or may not be listening on the target port. If the Source Machine had been added to the rules on that Port on the Destination it would show LISTENING.
Test 4: NETSTAT
The netstat command is used to display very detailed information about how your computer is communicating with other computers or network devices.
Specifically, the netstat command can show details about individual network connections, overall and protocol-specific networking statistics, and much more, all of which could help troubleshoot certain kinds of networking issues.
Test 5: Using Trace Route Command
Tracert is a command which can show you the path a packet of information takes from your computer to one you specify. It will list all the routers it passes through until it reaches its destination, or fails to and is discarded. In addition to this, it will tell you how long each 'hop' from router to router takes.
NSLOOKUP/NBTSTAT Commands
Useful command that convert the IP Address of a machine into it's Name/Hostname on the network. NSLOOKUP uses the DNS Server to look up the IP Address whereas NBTSTAT does not.
Enabling Telnet on a Windows 7 Machine
GROUP POLICY
How to generate a HTML files of all the Group Policies that apply to a user on that machine:
Navigate through to C:\Windows\System32 and you should find a generated file called: report.html - This will hold all the Groups Policy Rules that have been applied for that user on that machine.
How to list Local Group Policy on a Machine
This will open the following console:
Useful Resources:
Handy resource that explain the principles behind Networks and Firewalls.
http://www.remotelan.net/tutorials/ms-dos/top_10.php
https://kb.wisc.edu/page.php?id=903
No comments:
Post a Comment