我有两台服务器,服务器 1 和服务器 2,都是独立的,Windows Server 2016 和 SQL Server 2017 使用默认实例。它们不是域成员,并且通过 VPN 连接(使用 Neorouter)。
我正在尝试使用推送订阅从服务器 1(本地)到服务器 2(远程)设置复制。
我创建了防火墙规则以允许端口 1433 通过,并已将服务器 2 设置为仅在 VPN IP 地址上侦听该端口。服务器 2 是默认实例,因此动态端口应该不是问题;尽管如此,我还是打开了 SQL 浏览器,并允许端口 1434 UDP 通过防火墙。
使用 SSMS 连接到服务器 2 没有任何问题,而且使用创建订阅向导时,我可以连接到服务器 2 来选择目标数据库。但是,当订阅作业运行时,它会失败并出现“无法连接到订阅者”错误。我尝试过模拟和使用 SQL 登录,但两者都存在同样的问题。
这似乎是一个防火墙问题,因为当我暂时关闭服务器 2 上的防火墙时,作业运行正常。
我在防火墙日志中看不到任何内容来告诉我问题是什么,我可以看到来自服务器 1 的端口 1433 的连接,但它只显示操作 ALLOW 和路径为 RECEIVE。
关于我需要在防火墙上做什么,有什么建议吗?
答案1
好的,我最终搞明白了——必须在服务器 2 上启用端口 137 UDP