O UDP 1434 está aberto no seu firewall? Essa é a porta na qual o navegador SQL fala. Pense no navegador SQL como DNS para nomes de instâncias do SQL. Ele resolve nomes de instâncias para números de porta.
Eu tenho uma máquina Windows Server 2008 R2 com o SQL Server 2008 R2 Enterprise instalado. O SQL Server é configurado como uma instância nomeada, portanto, seu nome completo é "ATLANTA3 \ FOO" ("Atlanta3" é o nome da máquina e "Foo" é o nome da instância).
Eu configurei uma regra do Firewall do Windows com Segurança Avançada para permitir todas as conexões de entrada para o sqlservr.exe, e é isso que está definido no Gerenciador de Configurações:
Shared Memory: Enabled
TCP/IP: Enabled
Protocol:
Enabled: Yes
Keep Alive: 30000
Listen All: Yes
IP Addresses:
(Most of these are IPv6 addresses assigned to tunnel adapters and are ignored)
IP2:
Active: Yes
Enabled: Yes
IP Address 192.168.0.17 // this is the internal LAN adapter
TCP Dynamic Ports: 0
TCP Port: (blank)
IP4:
Active: Yes
Enabled: Yes
IP Address 89.xx.xx.xx // this is the Internet-exposed adapter. I can ping this from home.
TCP Dynamic Ports: 0
TCP Port: (blank)
IPAll:
TCP Dynamic Ports: 49280
Eu uso o TCPView para ver a porta na qual a instância está escutando (49280) e posso abrir uma conexão telnet perfeitamente bem.
No entanto, parece que não consigo me conectar à instância de nenhuma máquina remota, tanto na LAN 192.168.0.x interna quanto na Internet. Eu recebo este erro do SSMS:
TITLE: Connect to Server
Cannot connect to ATLANTA3\FOO.
ADDITIONAL INFORMATION:
A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: SQL Network Interfaces, error: 26 - Error Locating Server/Instance Specified) (Microsoft SQL Server, Error: -1)
For help, click: http://go.microsoft.com/fwlink?ProdName=Microsoft%20SQL%20Server&EvtSrc=MSSQLServer&EvtID=-1&LinkId=20476
Eu segui todas as instruções nos artigos do TechNet e do MSDN para permitir o SQL Server através do firewall. Isso soa como um problema com o SQL Server Browser, mas não consigo encontrar nenhuma informação sobre como fazer com que o SSB funcione bem com o firewall, supondo que seja necessário.
Não consigo desativar o firewall, porque quando eu faço o servidor, ele se desconecta de todas as redes e não é responsivo remotamente, e eu preciso que os caras do datacenter reinicializem a máquina manualmente para mim (não é bom).
Tags bind sql-server