1

我正在尝试使用 sqlexpress,所以我将它安装在计算机上,当我在网络内(工作)时,我可以成功登录到它,使用 machinename\sqlexpress 然后是用户名和密码。

问题:我无法从网络外部(在家)连接。在工作中,我有一个静态 ip。我去了myipaddress.com并使用该IP地址远程连接:\47.23.xx.xx,2301\sqlexpress,但仍然无法连接。

在研究了这个问题后,我启用了 tcp/ip,尝试使用端口 1433,然后更改为 2301,以防 1433 被阻止,Windows 8 防火墙:为 sqlserver 添加了异常,我正在运行 sqlexpress 和浏览器服务。

我想我的问题是:我是否正确假设使用我从 myipaddress.com 获得的 IP 地址,后跟配置的端口和服务器名称 sqlexpress 应该连接我?我有点困惑,因为如果该静态 ip 是针对整个路由器的,它怎么知道将外部呼叫定向到网络上的那台机器?和上面运行的sqlexpress?这一切都是由端口号完成的吗?

4

2 回答 2

2

你快到了,正如你所说,公共IP地址是整个路由器的,但是你可以配置一个端口转发功能,这将使路由器知道应该将流量转发到哪里。如何做到这一点,登录到你的路由器,寻找端口转发功能在哪里,然后在端口的空间上配置你为sql express分配的端口,前面有ip地址,输入机器的ip地址运行 sql server,这样路由器就能够识别出使用端口号的应用程序是哪台计算机并转发流量。

注意:您必须为运行 sql server 的计算机配置客户端列表或 dhcp 预留,以便每次重新启动计算机时 ip 地址都不会更改。如何做到这一点:登录到你的路由器,去 dhcp 服务器,应该有 dhcp 保留或客户端列表,这取决于你的路由器类型,将运行 sql 服务器的系统的 mac id 和你想要的 ip 地址放在必填字段,保存。

这样,您应该能够远程连接。祝你好运。

于 2013-01-30T16:02:41.470 回答
0

您几乎肯定会遇到不知道如何管理该流量的防火墙,因此拒绝它。此外,您在工作中看到的静态 IP 是网络地址转换 (NAT) 地址,不太可能接受连接。

在这个用例中使用 VPN 要好得多;无需将测试系统暴露在互联网上,这可能是一个重大的安全风险。如果您还没有 VPN 设置,请向您的管理员咨询...

于 2013-01-26T05:13:19.387 回答