Clients require instance name to connect to clustered instance We have a clustered instance, say Instance1, assigned its own virtual network name and IP, via Failover Cluster Manager. This instance is configured to listen on port 1433 in SQL Server network configuration (verified in the logs).

Within our intranet, we can connect to this instance by using just the IP address, say 172.0.1.2 (as well as the FQDN) using SSMS. However, some external clients cannot connect unless they specify 172.0.1.2\Instance1 explicitly.

I don't understand why this is the case. From what I understand, it doesn't make sense that the instance name needs to be specified given that the IP is assigned to the instance itself.

I noted in SQL Server network configuration that the IP address assigned via Failover Cluster Manager is not explicitly listed as an active enabled address. Should that be added?
From further research, it appears the issue may be a result of older SQL clients performing an "InstanceValidity" check when connecting to SQL Server (specifically sqlsvr32.dll driver). The driver passes "MSSQLServer" as the instance to verify for the InstanceValidity check.  In this case, since the instance name listening on the Default port (1433) is named "Instance1", the check fails because the Instance names do not match the InstanceValidity check.

Specifying the port number or instance name explicitly in the connection string works.