使用IPV6做反向代理,如果您的IPV6地址的80端口和443端口未被封禁,可直接使用二级域名访问。如果被封了,局域网内还是可以直接不用端口访问的。
(请勿用于违规建站)
群晖反向代理条件
- 运营商支持IPV6
- 支持IPV6的主路由器
- 动态域名解析(此教程使用阿里云)
- 群晖(有DOCKER最简单,也可以用脚本,自行百度)
1. 设置路由器
- 在路由器中打开IPV6开关,如运营商已支持ipv6,会获得240e开头的ipv6地址(电信为240e,移动2409,联通没用过,fe等开头的类似ipv4的局域网地址,没用)
- 在路由中DHCPv6模式设置为无状态,无状态+有状态均可。
2. 群晖docker设置
- 首先确认群晖是否获得ipv6地址
若没用ipv6,就到此为止了。
ipv6DDNS可以在爱快中解析或者docker中解析,以下以docker解析为例。
- 在docker注册表中搜索janusss/aliyun-ddns,选择最新版本(191M,耐心下载)
- 双击映像创建,按下图设置
(2020.9.28纠正:下图域名只需要解析 * .abc.com就好了。)
阿里云域名解析会自动添加下面的记录
- 点击应用,启动容器,在日志中查看
3.配置反向代理
-
打开群晖控制面板-----应用程序门户-----反向代理
(2020.9.28纠正:ipv6反向代理目前80和443无法使用,所以在来源端口号请自定义,建议所有来源端口号都设置为一样,协议都可以选,装了证书就选https,显示小锁,舒服)
-
配置hass和nodered反向代理时,要多做一步。这一步不做会出现访问hass登陆时出现unable to connect home assistant。nodered会出现失去连接。如遇到其他应用远程时出现异常,也可配置这一步,也许可以解决问题。
-
到此为止就配置好了,在浏览器中直接输入二级域名直接访问
几点说明
- 证书问题
- 地址前想要有证书认证,必须配置证书,关于配置泛域名证书请参考我另一个帖子配置证书部分。
配置证书,在运行脚本后一定要耐心,耐心,耐心等待一会。这里提供查看进程的一个方法。
进入你脚本所在的文件夹中的acme.sh文件夹,找到acme.sh.log,下载下来打开,就是脚本运行的情况,acme.sh.log文件大小会变化,说明脚本还在运行。运行成功会自动替换掉群晖原有的证书。 - 在反向代理中使用https协议时,如果在浏览器中直接输入二级域名如nas.abc.com,有可能是不会自动定向到https上的,需要在域名前加上https://(之前我遇到的是无法自动定向,截止发帖又都会自动定向了,可能是浏览器有记忆了。。。)。
- 外网访问
- 目前80和443端口好像被封了(才发现)。那就在反向代理里加个端口号吧。至少没有ipv4公网地址的同学也可以外网访问了。。。。