All of the sudden SQL port 1433 connections are failing to establish but on only some servers. All servers (dozens) used to work just fine so this is like that game whac-a-mole. I control all corp infrastructure including firewalls and no changes have been made. Only changes to front end application servers are critical Windows OS updates. Here is scenario:
Front End: Server 2012R2 Hyper-V VM on 2012R2 physical host in HQ location. "HQ" network zone on 10.0.x.x subnet.
Back end: Sever 2012R2 VM on different 2012R2 physical host in datacenter. Inside network zone 192.168.x.x SQL 2016 SP2 13.0.5081
All of this infrastructure did not have an issue until last 3 months or so. I found in one case that after posting the critical Windows OS security patches, an IIS connection from a DMZ perimeter network application server to a back end SQL server "inside" broke the website and returned the basic http 500 error. After uninstalling the updates, it worked. The fix for this particular server was to update the ODBC SQL driver to 17.3.1. Windows patches no longer broke this connection afterwards and the datasource connection string in the website code was updated.
Uninstalling Windows patches or updating the ODBC driver isn't fixing this server in question. I can use powershell TNC cmdlet to connect to other ports on the back end SQL server like SSL 443 but not SQL port 1433. Other VM's in same subnet and zone can connect without issue. Other VM's on the same VM host can connect. I am confident it is isolated to this one VM and this critical port.
I have verified the local OS firewall is still off. I toggled it on/off again. I used powershell to create an inbound and outbound firewall rule. As I mentioned, updating the SQL ODBC driver did not fix this one. I think possibly Windows update changed something that even after uninstalling it, the change remained? I don't know... this is very elusive and hope a new set of Super User eyes will help.
Thanks!
SQL Server Configuration Manager
>SQL Server Network Configuration
>Protocols for $Servername
>TCP/IP
-- is this enabled? Click into it - are the interfaces with the locally bound IP enabled for port 1433? Also, is your dmz server using a reverse proxy?