如何从互联网访问本地 mysql 服务器

如何从互联网访问本地 mysql 服务器

我配置了路由器 R1 作为中继器,并将 ISP 的互联网路由器 R2 连接到它 (R1)。ISP 为互联网路由器 R2 分配了一个静态 IP (41.58.163.84)。

我运行一个从 R1 连接到的内部网应用程序,我为作为内部网应用程序服务器的主机(PC)分配了一个静态 IP(192.168.1.5),以便 R1 网络上的其他 PC 可以使用静态 IP 访问它。

现在,我希望能够从互联网访问内联网应用程序。我在互联网路由器 R2 上配置了端口转发,并将充当internal host内联网应用程序服务器的 PC 的 IP 设置为静态 IP。

当我尝试使用 ISP 的静态 IP(41.58.163.84)作为主机从互联网连接到 MySQL 时,出现错误

cannot connect to MySQL server at '41.58.163.84' (10061) 

我做错了什么,以及如何连接 MySQL 服务器?

答案1

您可以检查以下几件事:

  1. 您能从自己的 LAN 内连接到 R1 上的“服务器”吗?(从连接到 R1 的其他计算机或直接连接到 R2 的计算机)
  2. 尝试 Thomas 的建议并暂时关闭服务器上的防火墙,然后再次尝试 #1。
  3. 设置从 R1 到服务器 IP:端口的端口转发 - 你确实提到过你已经完成了,但只是为了完整
  4. 从 LAN 内部:您可以使用外部 IP 地址连接到 MySQL 服务器(因此,从连接到 R1 或 R2 的 PC,使用地址 41.58.163.84:port 连接到 MySQL)并查看是否有效)
  5. 从 LAN 外部:按照 #4 操作
  6. 你的 MySQL 是否只允许从特定 IP 地址访问?(MySQL 可以有自己的规则,允许特定用户从特定 IP 地址/范围进行连接)

另外,由于您没有提到 R1 和 R2 的设置/ IP 范围(是的,您确实提到它只是重复,但您的想法和它实际做的事情可能不同)。

让我们假设一些 IP 号码 - R1 和 R2 位于同一子网 (192.168.1.x/255.255.255.0):
R1 - 192.168.1.2
R2 - 192.168.1.1 - 充当互联网
服务器的网关 - 192.168.1.5(在端口 3306 上运行 MySQL)

在 R2 上进行简单的端口转发至 192.168.1.5:port 即可(这与我自己的家庭设置类似,但我有一个 NAS 服务器)

如果您的 R1 和 R2 位于不同的子网,例如
R1 在 192.168.1.x 上,
R2 在 192.168.2.x 上
,则需要双路由器端口转发。您需要设置双端口转发。一个从 R2 到 R1。然后另一个从 R1 到服务器。完整说明在此处讨论: http://portforward.com/help/doublerouterportforwarding.htm

...如果我能想到任何其他需要检查的事情,我会添加编辑..但现在,尝试一下这些并希望它有所帮助。

答案2

防火墙?我首先想到的就是这个。另外,你的调制解调器/路由器可能阻碍了连接。

相关内容