前言
上一章的安装完成以后,我们可以在同一个局域网下通过HomeAssistant的IP地址和端口号访问到后台的控制面板,可是在外网下我们就没有办法通过局域网的IP地址和端口号进行访问了。
为了能随时查看家庭里的设备状态,就需要通过DDNS等方式将局域网内的服务映射到公网上,一些网络运营商或地区的限制,公网的IP没办法下发,于是便出现了FRP、NPS、ZeroTier等内网穿透的工具。
因为我个人使用的是ZeroTier的解决方案进行穿透,这篇文章自然也是的用ZeroTier进行演示的。
安装ZeroTier插件
Zerotier已经有社区大神开发了HomeAssistant的Add-ons,所以我们安装起来只要点点鼠标就可以完成,不需要再通过命令行等操作进行。
进入到HomeAssistant后台面板,点击左下角的「Supervisor」
进入Dashboard以后,点击上方的「Add-on Store」,在最下方可以看到ZeroTier One的插件,点击以后可以看到插件的详细信息。
进入详细页后,点击Install进行安装
配置ZeroTier插件
安装完成以后,将下方的「Start on boot」以及「Watchdog」调整为打开状态,并点击下方的Start启动
启动成功以后,顶部的Tab切换至「Configuration」,一些详细的文档配置在隔壁的「Documentation」里获取,如果只是继续的使用,可以直接复制我下面的模板进去。
networks:
- 填入自己的ZeroTier Network ID
api_auth_token: ''
填写完成后,点击右下角的SAVE按钮,然后回到「Info」,点击重启一次ZeroTier One服务
重启完成后,我们刷新ZeroTier的后台页面,可以看到新增加了一台未授权的设备,点击前面的方框将其变为授权状态,可以在(short name)和(description)中填入一些标识(如设备型号)
加入完成后,ZeroTier的Network会分配一个IP地址,这个地址就是HomeAssistant在ZeroTier这个局域网内的IP地址,再接入ZeroTier局域网后可以通过这个地址访问到HomeAssistant主机。
打开ZeroTier客户端成功接入后,访问IP:8123就可以访问到后台服务面板了,我这里的是172.22.60.67:8123
后记
执行完上面的步骤,我们已经成功的可以从外网环境中访问到家中的HomeAssistant主机,因为ZeroTier的服务器在海外的原因,建立的连接的时间和稳定性可能欠佳,你可以通过下一篇的文章自己建立moon的服务器,提升设备间的连接速度。
针针
2020/12/10
针流批
针真棒
针聪明