我在我的家庭局域网内使用 SQL Server 2008。我已将其配置为接受远程连接,现在我可以从局域网内的其他电脑连接到服务器。
当我尝试从家庭局域网之外的计算机连接到服务器时,问题就出现了。我禁用了路由器的防火墙,并在端口 1433 上配置了一个虚拟服务器,转发到正确的局域网 IP。怎么了?为什么它不工作?
非常感谢您的帮助~!
编辑:
这是我不断收到的错误:
与 SQL Server 建立连接时发生网络相关或特定于实例的错误。服务器未找到或无法访问。验证实例名称是否正确以及 SQL SERVER 是否配置为允许远程连接。(提供者:Sql 网络接口,错误:25- 连接字符串无效)
好的,这些是我的路由器的详细信息:edimax br-6204wg 我不确定我应该如何浏览 google.com。你能更具体一点吗?
当您在家庭 LAN 之外时,首先确保您可以 ping 您尝试连接的地址。例如,如果您的家庭互联网连接的 IP 地址是 XXXX,则打开命令提示符并键入:
平 XXXX
X 将替换为 50.60.70.80 等数字。如果数字以 192 开头,那么它不是您家庭互联网连接的真实外部 IP 地址。
如果您可以成功 ping IP 地址并获得回复,那么接下来尝试远程登录到 SQL Server。打开命令提示符并键入:
远程网络 XXXX 1433
如果它没有超时,那么您应该能够连接到 SSMS,但我打赌它会超时。一些互联网提供商会过滤 1433,因为它是一些病毒的来源。
这是另一个很好的连接故障排除链接——它适用于 SQL 2000,但同样的基本问题也适用:
http://support.microsoft.com/kb/827422
只是一个想法,您当前所在的位置可能会阻止出站端口。例如,在您的办公室,办公室的 FW 正在阻止传出流量的端口。
两个可能的问题:
将 SQL 服务器暴露在整个 Internet 上?嗯,如果我存储信用卡或个人身份信息,我不会这样做。
有很多事情可以导致这种情况。为了缩小范围,我们需要更多关于您的环境的信息。
这是一个你可以阅读的线程,它为这个问题提供了各种解决方案。
如果启用了防火墙,您可能还需要允许通过服务器连接到 SQL:
确保 SQL Server 正在侦听正确的接口。
可能是它正在侦听您的路由无法访问的 IP。您可以通过打开 SQL Server 配置管理器并在“协议”下查找 TCP/IP 来找到这些设置,然后查看“IP 地址”选项卡。
例如,它可能正在侦听 IP6 地址,但您的路由器只允许 IP4 连接。
如果失败了,我建议您使用NMAP并查看某些位置的可用端口。从 LAN 内部针对服务器运行它以确保端口是您所期望的,然后从远程位置针对路由器运行它以查看该端口是否可用。
错误消息说您的连接字符串不正确,请发布,以便我们仔细检查
谢谢你的回复。
稍后我将更彻底地检查 abigblackman 的答案,目前我已经安装了 Hamachi 来破坏我的局域网和我的朋友之间的连接,这样我就可以轻松地连接到 sql 服务器。它工作正常(实际上非常快)。
再次感谢您的支持。冯迪普