共计 2409 个字符,预计需要花费 7 分钟才能阅读完成。
由于ipv4地址的稀缺性,目前国内绝大多数人是没有公网ipv4地址的,而且运营商也会封禁常见端口,但是ipv6地址有128位,足以给空气中的每一颗尘埃都分配一个ipv6地址,各大运营商也从2018年开始布局ipv6在家用宽带的应用,现在绝大多数地区宽带都支持ipv6了。
虽然你可能拥有ipv6地址,但是要想公网访问仍然需要克服诸多困难,本篇文章将介绍ipv6用在公网访问的可能性。
IPV6地址的可用性
我们打开群晖的“控制面板”-“信息中心”-“网络”,
可以看到第一个ipv6地址是2408开头的一个地址,因为我办的是联通宽带,电信为240e开头的(240e::/20);移动为2409开头的(2409:8000::/20);联通为2408开头的(2408:8000::/20)。
如果你也有一个以240开头的ipv6地址,那么恭喜你,你有获得了一个公网地址,如果你只有fe80开头的ipv6地址,这是一个内网地址,说明你的路由器没有下发公网ipv6地址,可以在路由器里更改设置,不同的路由器设置方法不同,如果您用的也是软路由可以咨询我如何更改。
但是这还不是我们实现公网访问的充分条件,下一个因素是防火墙,如果防火墙没开放你仍然可能不能从公网访问,这个防火墙可能是你的路由器上的,也可能是你的光猫上的。
复制一下这个ipv6地址,一直复制到“/128 Scope“前面,我的就是2408:820c:8f8a:2b0::7c4,使用这个地址打开群晖试试,注意浏览器地址栏输入ipv6地址时要加中括号,群晖的端口默认是5000,所以我们在地址栏里输入http://[2408:820c:8f8a:2b0::7c4]:5000,全英文状态下输入,特别是冒号,不要搞错。
这里我成功打开了NAS的管理页面,防火墙并不会阻止内网设备使用ipv6打开web服务,所以大多数人是可以打开的。接下来的关键的一步,就是在外网环境下能不能打开这个地址,把手机切换到数据流量,不要使用WiFi,如果您仍然能打开这个地址,那么恭喜你没有任何障碍可以借助ipv6访问家里的设备了!
接下来我们讨论一下有公网ipv6但是打不开的情况,第一种情况是路由器的防火墙没开,如果是软路由,这个设置很简单,打开软路由后台,“网络”-“防火墙”
把“入站数据”-“出战数据”-“转发”全部设置成接受。如果是其他路由器,需要您自行探索一下设置在哪里开启了。
如果路由器的防火墙放开了以后,仍然在外网打不开群晖后台的话,那可能是光猫的防火墙问题了。在条件允许的情况下,请使用光猫桥接,在路由器上拨号。这个可以咨询当地的宽带运营商,要求改成光猫桥接。部分地区也可以自行动手改成桥接,我的联通宽带就是自行改成功的,没要装机师傅上门,参考教程:联通宽带开启 IPV6 的方法
群晖DDNS
接下来的过程比较简单,做一下ddns,ddns的作用的是ipv6地址是变化的,今天你是这个地址,明天可能就换了一个了,所以把域名绑定到这个地址上,不管地址怎么变化,我们都只输绑定的域名就行了。
群晖可以安装DDNS-GO这个套件
安装以后打开,这里有几个参数需要我们填上
accessKey ID和accessKey Secret可以去你购买域名的地方申请,如果是阿里云,登录阿里云控制台,然后右上角点击你的头像,“AccessKey 管理”
如果你原先没有创建过accessKey的话,可以点击“开始使用子用户AccessKey“创建一个新的,如果原先已有AccessKey也可以使用之前的,点击你的AccessKeyID就可以拿到AccessKey Secret了。
然后就是IPV4和IPV6下面的Domains,这个你可以随便填,域名前缀你可以自定义,成功以后会看到你的域名解析里自动添加了两条解析记录,一个是ipv4的另一个是ipv6的。
都添加完了保存,然后右上角查看日志。没有问题的话你就可以用域名访问群晖了,譬如这里我绑定到了域名ugreen.huchaoshuma.cn,那么使用ugreen.huchaoshuma.cn:5000就可以从外网访问我的群晖了。
访问内网其他设备
我们已经实现了群晖的公网访问,那么怎么访问内网的其他设备呢,这里可以借助群晖的反向代理功能。
打开群晖的“控制面板”-“登录门户”-“高级”-“反向代理服务器”
添加一条反向代理规则
192.168.100.238是我的华硕路由器内网ip,端口默认是80,它的外网端口我设置成了8080,这样我就可以使用ugreen.huchaoshuma.cn:8080在外网打开我家里的华硕路由器了。这里还有一个技巧是免输端口直接用域名访问,参考文章:https://zhuanlan.zhihu.com/p/626478402,最后一段关于“四: 禁用群晖默认重定向“的说明,如果您完全不懂可以忽略这部分。
反向代理规则可以添加很多条,可以给内网里每个具有web服务设备的添加一条规则,如果你的群晖安装了wordpress,那么你就可以自己建网站了。
最后要提醒的是,虽然我们在DDNS-GO里面添加了ipv4和ipv6的域名,但是正常来说ipv4地址是不能访问的,你的域名总是会解析到你的ipv6地址。所以你在外网打开一个ipv6的网页,需要你自己的设备同样有ipv6地址,或者你使用的是手机数据流量,移动网络也都是支持ipv6的。也就是说,如果你的设备连接了WiFi,但是你没有获得ipv6地址,仅有ipv4地址,那么你是打不开你的内网设备的。这是ipv6穿透相比我们之前说的frp内网穿透的最大缺点!
淘宝选购群晖NAS,您可以获得详细技术支持,链接:https://item.taobao.com/item.htm?spm=a1z10.1-c.w4004-24715076529.8.4734189e2pT1Sr&id=740375220244