无法远程连接到Firebird 2.5数据库

时间:2017-10-19 15:26:20

标签: database-connection firebird

我目前在客户端有一个Firebird 2.5数据库,安装在Windows 7 Pro计算机(32位)上,在本地网络中有多个可连接到数据库的工作站,本地计算机能够连接到数据库连接我们的应用程序和IBExpert。

但是,对于我们的某些软件包,需要远程连接(在本地网络之外)。以前这个工作但不再有效。

当我从办公室连接FlameRobin时(我位于不同的城市/不同的网络),我收到以下错误消息:

IBPP::SQLException

Context: Database::Connect

Message: isc_attach_database failed

SQL Message: -923

Connection not established

Engine Code : 335544421

Engine Message : 

connection rejected by remote interface.

使用IBExpert执行此连接尝试,无论是来自我的办公室还是来自其他外部网络,都会失败并显示相同的消息。

但是,我正在从我所看到的内容中获得TCP / IP通信。以下是我上周的故障排除步骤的详细信息:

  • 最初,从网络外部连接时收到以下错误:

      

    "未建立连接

         

    远程接口拒绝连接"

从那时起,我们重新启动了路由器,现在远程接口拒绝了当前的连接。"错误信息。

  • 我可以通过我办公室和其他外部网络的端口3050远程登录公共IP。

  • 我在YouGetSignal.com或CanYouSeeMe.org等网站上测试了端口3050,它们显示为开放状态。

  • 我们公开沟通的其他港口是开放式的,并且正在沟通。

  • 该网站安装了卡巴斯基反病毒软件,但卡巴斯基处于睡眠模式时通过IBExpert连接的所有测试都表现相同。

  • 将Firebird 2.5安装到同一本地网络中的另一个工作站,指向端口3051(Firebird.conf和Windows防火墙和路由器中),显示为通过Telnet和CanYouSeeMe.org打开,不能通过3051端口从外部进行通信。

  • IBExpert从网络中的工作站工作到服务器

  • 服务器当前在Firebird.conf中没有RemoteBindAddress条目

  • Wireshark显示,当从外部连接时,会有数据包通过。

  • IBexpert中的通信诊断中的TCP / IP测试,公共IP作为主机,服务显示以下测试结果:

      

    尝试连接XX.YY.ZZ.AAA。

         

    获得连接的套接字。

         

    找到服务' GDS_DB'在港口' 3050'

         

    与主持人建立联系' XX.YY.ZZ.AAA',

         

    在端口3050上。

         

    TCP / IP通信测试通过了!

  • 多次检查数据库路径,用户名和密码。

  • 在服务器本地,我已经改变了database.FDB和security2.FDB的安全性,让Everyone,Full Control

此时,我们很快就会重新启动ISP的调制解调器,尽管我们通过端口进行完整的TCP / IP通信这一事实让我怀疑这是问题所在。

如果有人可以向我推荐任何建议的后续调试步骤或任何可用于此情况的工具,那将非常感激。

1 个答案:

答案 0 :(得分:0)

这结果是一个网络问题。我们进行了以下测试:

  • 我们在ISP的调制解调器上执行了一个电源循环,显示行为没有变化
  • 我们将笔记本电脑直接连接到ISP的调制解调器,但即使机器和防火墙上有适当的端口转发规则,也无法与FB通信。
  • 我们在双方运行wireshark并尝试连接,我们发现很多尝试连接失败的重传。

客户端的技术团队决定安装支持VPN的路由器,现在我们很高兴。从我们发现的情况来看,可能存在某种ISP阻塞,因为许多技术团队的远程服务都无法与类似的行为联系。

希望这篇文章能够帮助未来的人们进行远程连接调试,以及在遇到这个问题时可以看到的所有地方。