应用程序没有连接到防火墙外的sqlserver

时间:2010-07-15 22:37:07

标签: asp.net sql-server asp.net-mvc

所以我有一个连接到我们的SQLServer的应用程序。 这适用于防火墙后面的任何服务器。

当我把它放在我们的实时服务器上时,在防火墙之外,与sqlserver的连接因此错误而失败

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)

我知道这是由于防火墙虽然网络管理员声称防火墙允许它通过(甚至已经说到“你做错了”)

我能做些什么才能确定它是否真的失败,看看它是否真的是防火墙并证明它是真的。 我正在使用机器的IP,因此它不是DNS问题。 还有其他想法吗?

2 个答案:

答案 0 :(得分:1)

在充分尊重的情况下,您的管理员会告诉您自己做错了,假设“防火墙外”的含义是指您公司网络之外的意思。像数据库服务器这样的东西永远不应该暴露给外部连接。

编辑:没关系,这是来自DMZ的连接。

所以我唯一能想到的是尝试通过端口1433 telnet到该机器(登录到Web服务器时),看看是否出现连接错误。你没有使用SSPI,所以我不认为安全性会成为问题。

如果telnet失败,那么您可以将其作为网络管理员的证据,证明问题是防火墙。

答案 1 :(得分:0)

您使用的是命名实例吗?确保SQL浏览服务正在运行。

通常当您连接到本地服务器上的默认实例时,使用“(本地)”。当它是命名实例时,您将使用'(local)\ InstanceName'。或者(本地)被主机名或ipaddress替换。

使用命名实例时,尝试从远程服务器连接时可能会遇到连接问题。