从外网访问群晖主机

原文地址

入手群晖之后,第一件事情当然就是要让我们的主机能够被外网访问到,这样才能随时随地备份我们各种设备上面的资料。

DDNS 原理分析

实际上,我们通过电信光猫上网的时候,电信会分配给光猫 IP 地址,这个 IP 地址很可能会发生变动,是未知的。我们不可能希望每次访问群晖主机上的服务的时候,都去想办法手动查询一遍光猫 IP 地址。DDNS 就是用来解决这个痛点的。

群晖主机中的 DDNS 客户端会监控路由器 IP 变化,然后将变化信息发送给群晖 DDNS 服务器,所以群晖 DDNS 服务器就能准确记录路由器每时每刻的 IP 地址。我们再通过事先在群晖服务器上面配置好的域名(比如 test.synology.me)发出请求的时候,群晖服务器就将该域名直接解析到路由器 IP,如此就将请求成功定位到了我们自己的家庭局域网,然后局域网内部配置一下端口转发就能将请求定位到群晖主机了。

家庭局域网网络拓扑结构设计

通常情况下,我们是通过电信光猫与电信服务器直接连接上网的,中间存在设备认证之类的流程,所以不能使用其他路由器与电信服务器直接相连。

然后电信光猫会具备路由器功能,让我们的家庭设备形成家庭局域网,所以光猫是会拥有两个 IP 地址的:一个是与外网设备通信的 IP 地址,另一个是与家庭局域网设备通信的 IP 地址(通常是 192.168.1.1)。同时,光猫具备 DHCP 服务器功能,能够为家庭局域网上的设备自动分配 IP 地址。

假设光猫对外 IP 地址是 112.80.255.174,光猫对内的地址是 192.168.1.1,然后群晖主机在家庭局域网自动分配的 IP 地址是 192.168.1.2,那么理论上讲,只要在光猫中配置了端口转发(比如将光猫 8000 端口接收到的 TCP 报文转发给 192.168.1.2:8000),就能将外网发送给 112.80.255.174:8000 的请求定位到 192.168.1.2:8000 了,即达到了外网访问群晖主机的目的。

实际上,这里有一些瑕疵:

  • 电信光猫不太好使,可能设置正确了端口转发,但是不生效(也许是做了什么限制);
  • 那个管理界面太难用了;
  • 由于光猫的无线信号强度比较弱,所以一般都会接一个自己单买的路由器(本文以 TP-LINK 叙述),因此群晖主机接到了 TP-LINK 上的话,转发配置就很麻烦;
  • 光猫对 UPnP 支持不是太好,在群晖 DSM 系统中配置路由器端口转发的时候,经常失败。

所以,实际上我们期望能通过光猫桥接上电信服务器,然后 TP-LINK 用网线连接光猫,通过 TP-LINK 拨号上网,同时通过 TP-LINK 形成家庭局域网,TP-LINK 拥有外部 IP 地址和家庭局域网 IP 地址。

开始配置

在配置的时候,可能会遇到一些坑:

  • 电信提供的所谓“外部 IP 地址”可能是“内部的”,也就是说电信还在外部加了一层局域网,导致在真正的外部还是无法访问到光猫;
  • 光猫的有些操作需要超级管理员权限,比如改变光猫接入电信网络的方式,所以此时需要找到光猫的超级管理员账号及密码。

获取电信光猫超级管理员账户

用一台电脑直接连上(有线、无线均可)光猫,访问 http://192.168.1.1/backupsettings.conf,会看到下载了一个 backupsettings.conf 文件。

backupsettings.conf 中搜索 <Password>,找到附近有 Tele 字眼的那个 <Password> 节点,其中内容就是超级管理员密码,超级管理员的账户名是 telecomadmin

电信光猫桥接入网

  1. 使用刚才获取的超级管理员账号登录光猫,进入:网络->宽带设置->Internet连接;
  2. 选择带有 NTERNET_R_VID 字眼的连接名称:
    image.png
  3. 截图保存当前页面信息,后续会用到(注意手里面一定要有宽带用户名、密码信息,不然后面没法拨号上网了);
  4. 点击右下角的“删除”按钮将当前配置删掉;
  5. 新建 WLAN 连接,选择模式:桥模式,VLAN ID 填写第3步截图中保存的 VLAN ID,其他参数使用默认值,点击“创建”按钮,至此光猫配置完成。

配置 TP-LINK 路由器拨号上网

  1. 用网线将 TP-LINK 路由器与光猫连接起来;
  2. 用管理员身份登录 TP-LINK 路由器(一般登录页面地址是 http://192.168.0.1);
  3. 进入:路由设置->上网设置,上网方式选择“宽带拨号上网”,填好之前记录的宽带账号和密码,点击“连接”按钮,即完成配置 TP-LINK 路由器:


    image

向电信申请公网 IP

理论上讲,上述配置就可以了,剩下的只要做好路由器的端口映射配置就行了。但是实际上很多小伙伴可能发现还是无法访问到群晖主机(即便配置好了端口映射),此时就要检查电信分配给我们的外网 IP 地址是不是真的是“外网”的。

检查方法:假设 TP-LINK 路由器“上网设置”页面显示的 IP 地址是 address1,从家庭局域网内部机器访问 http://www.ip138.com/ 查询到的 IP 地址是 address2。如果 address1address2 是一样的,说明电信分配的是真正的外网地址,否则不是。

如果电信分配的不是真正的外网地址,可以打电信的客服电话,要求他们给自己分配外网地址。

推荐阅读更多精彩内容

  • 网络层提供的两种服务 在计算机网络领域,网络层应该向运输层提供怎样的服务(面向连接还是无连接)曾引起了长期的争论,...
    srtianxia阅读 3,173评论 0 12
  • 我们可以把因特网看成由许多主干网络组成,而这些主干网络由一些国际的、国家的和地区的ISP来运营。主干网通过一些连接...
    Zhang21阅读 2,257评论 0 6
  • 作为中国人最重要的传统节日,春节有着历史悠久而且丰富多样的习俗。 然而,生活的变化是如此之快,这些年来,过年的方式...
    凡晨团队阅读 634评论 0 0
  • 风光片的后期调整是大家很熟悉的一种形式了,所以步骤大家都很熟悉,现在的很多软件都为我们图片后期提供了很多方便...
    云兮云兮阅读 418评论 0 3
  • 高中第四年,回忆起那样的生活简直了。但是不得不承认,也值了。 高四教我最多的是一位体育老师。 他身材匀称,上...
    白菜贩阅读 219评论 1 2
  • 今天是她43岁生日,恰逢周末。她早早起床,洗漱也因这个特殊的日子而格外细致和庄重。然后去菜市场给家庭每位成员买了一...
    迟觉阅读 115评论 0 0