Verizon FIOS hangs with Excel via ODBC


Verizon FIOS hangs with Excel via ODBC

Looking to see if someone out there has seen this issue.

We have an excel application accessing Teradata via ODBC.

We are seeing connection issue using FIOS network with Excel via ODBC. FIOS hangs and no error message is given. The interesting thing is that SQL-A works fine with the same ODBC setup with FIOS.

Excel application seems to work fine with Comcast and any other ISP that is NOT FIOS using ODBC. The excel application works fine within the customer's network. This issue comes up with clients connecting from home using FIOS.

We have made inquiries to Verizon support and they suggested changing some of the firewall settings; unfortunately this did not resolve the issue.

Has anyone seen this or have any insight to a solution?


Re: Verizon FIOS hangs with Excel via ODBC

If anyone is curious, the solution we came up with that works with FIOS is to use the IP address instead of the DNS name. We wrote a routine to randomly pick an IP address out of the pool to connect.

Teradata Employee

Re: Verizon FIOS hangs with Excel via ODBC

This is likely due to "DNS hijacking" where the ISP's DNS server responds with a substitute IP address rather than a proper NXDOMAIN response when the name cannot be resolved. Port 80 on that substitute server typically will supply some advertising and supposedly helpful text, so for web browsing this tends to be a minor annoyance. But this incorrect behavior breaks some applications, including Teradata drivers' "COP discovery". (And Verizon is far from the only ISP to do this, unfortunately.) Some ISPs allow customers to "opt out", or you may be able to configure the client to use other public DNS servers that respond properly. But especially if you have a large number of users, it's simpler to address it in the application.

One workaround is to set DataSourceDnsEntries in the ODBC or .NET driver options to the actual number of COPs; for CLIv2 use an environment variable matching the "TDPID" set to the number of COPs. As an alternative, for ODBC, you can also supply multiple IP addresses and the driver will pick one. These options are not available for JDBC connections; you would need to supply one IP, or set COP=OFF option and use a full hostname instead of TDPID prefix.