During my daily work, I need to use the customer’s Database. for this connection, first of all, I need to connect the VPN to customer’s network, and then make the DB connection.
Normally, if this connection can be established using TCP protocol. But sometimes I cannot connect to the DB. Then I track the network package, I found the connection is attempting connect to customer’s DB using UDP protocol.
And now my network environment is using ‘172.16’, if I change my network to ‘10.12’, do the same connection, then change back to the ‘172.16’ network, the connection can be established successfully.
Because the DB is in customer’s side, I cannot check it.
The first couple of things I’d look at:
Firewall
… and …
Firewall
PS:
Yesterday I had a case where the customer’s database could communicate by Windows host name or by “localhost” … but NOT by IP, nor by hostname alias … even though the client and the SQL Server were ON THE SAME PC!!!!
Windows firewall was OFF. There wasn’t any router between SQL server and the client (remember: same PC!).
But they installed a new A/V program … that had it’s own firewall … and wouldn’t allow any SQL Server connections.
PPS:
The correct approach, of course, is to configure firewall exceptions for all services you need (like MSSQL).