admin管理员组

文章数量:1794759

外网远程访问SQL Server数据库【无公网IP】

外网远程访问SQL Server数据库【无公网IP】

在本地局域网内的SQL Server数据库,一般只能在局域网内访问,想要在外网/公网也可以远程访问到局域网的SQL Server数据库,可以通过两种方式来实现。

  • 公网IP+端口映射
  • 内网穿透
  • 第一种,公网IP+端口映射,前提是需要有真实的公网IP,但由于IPV4资源不足,无法为每个用户分配到独立的公网IP,也就是说绝大部分的用户被分配到的其实都是局域网IP。

    而要做端口映射的前提是,需要用户有真实的公网IP,并进入到路由器进行映射。所以对于没有被分配到公网IP的用户,可以通过第二种内网穿透,来实现外网远程访问SQL Server数据库。

    第二种,内网穿透,其原理是通过第三方有公网IP的服务器进行数据转发,将本地端口映射到公网上,生成相应的公网地址来进行连接。

    比如cpolar内网穿透,亲测好用,也支持免费套餐,使用简单,只需要在本地安装下载客户端,完成简单的配置后,就可以创建隧道将本地端口映射到公网。

    cpolar 官网:www.cpolar/

    1. 安装cpolar内网穿透 1.1 windows系统下载安装包后解压双击安装包一路默认安装即可 1.2 Linux系统支持一键自动安装脚本 curl -L www.cpolar/static/downloads/install-release-cpolar.sh | sudo bash

    或 cpolar短链接安装方式:(国外使用)

    curl -sL git.io/cpolar | sudo bash
    • 查看版本号,显示3.2.88.22
    cpolar version
    • token认证【登录cpolar后台——验证,可以查看到自己的token,将token贴在命令行】
    cpolar authtoken xxxxxxx
    • 向系统添加服务
    sudo systemctl enable cpolar
    • 启动cpolar服务
    sudo systemctl start cpolar
    • 查看服务状态,如正常显示为active则状态启动正常
    sudo systemctl status cpolar 2. 创建隧道映射SQL Server数据库

    访问本地9200端口【本地IP地址:9200,localhost:9200/】,登录cpolar web ui管理界面。点击左侧的隧道管理——创建隧道

    • 隧道名称:可自定义,注意不要重复即可
    • 协议:选择TCP协议
    • 本地地址:1433
    • 端口类型:免费选择随机
    • 地区:选择China或者China vip

    点击创建

    隧道创建成功,点击左侧的状态——在线隧道列表,可以查看到所生成的随机公网地址,即可通过该地址实现公网远程连接。

    需要注意的是,使用免费的cpolar所生成的公网地址为随机临时地址,24小时内会变化,且带宽较小。我们可以为其配置固定的公网TCP端口地址,并提高带宽。

    3. 配置固定公网TCP端口地址 3.1 保留一个固定TCP端口地址

    登录cpolar官网,进入后台,点击左侧仪表盘的预留。找到保留的TCP地址,为远程sql保留固定的TCP地址:

    • 地区:选择“China VIP”
    • 描述:可自定义备注

    点击保留

    TCP地址保留成功后,会生成相应的地址,将其复制下来。

    3.2 配置固定TCP端口地址

    登录cpolar web ui管理界面【浏览器访问127.0.0.1:9200】,点击左侧仪表盘的隧道管理——隧道列表,找到SQL Server隧道,点击编辑

    修改隧道信

    • 端口类型:改为选择固定TCP端口
    • 预留的TCP地址:填入刚刚为SQL Server预留的TCP地址

    修改完成后,点击更新

    4. 使用固定公网地址远程访问

    在左侧仪表盘的状态——在线隧道列表,可以看到已经更新为固定的公网TCP端口地址。复制该公网地址进行远程连接即可。

    本文标签: 公网远程访问数据库SERVERSQL