本帖最后由 t1ngyu 于 2019-5-30 15:32 编辑
外网访问
通过域名访问家中的homeassistant,这里只说一下思路
- 确保可以分配到公网ip
确认是否是公网ip的方法: 百度“ip地址”,可以看到自己的外部地址,如果和路由器中的外网地址一样,说明当前是公网ip。
电信宽带打客服电话可以申请分配公网ip,其他家的没用过不了解。
- 申请dnspod帐号
- 申请域名
去http://www.dot.tk/申请一个域名(免费,不用备案),有效期1年,到期前登陆续订一下即可。
设置使用自己的nameserver进行解析,填入dnspod的提供的nameserver;
- dnspod设置
登陆dnspod,绑定步骤3申请的域名,和自己的公网ip;
- 端口转发
在路由器上给自己运行homeassistant的机器分配一个固定ip;
设置8123端口转发到homeassistant所在机器的8123端口。
此时通过http://域名:8123/ 就可以访问家中的homeassistant了。
- 更新ip
虽然宽带分配了公网ip,但是ip地址还是会变的;
dnspod有提供api可更新域名绑定的ip地址,写个脚本检测到公网ip发生了变化,就调用dnspod api更新一下;
启用https
- 申请证书
去Let's Encrypt给域名申请一个证书;
- Apache反向代理
在homeassistant机器上通过apache添加一个虚拟主机,并启用ssl,然后将请求反向代理到本机的8123端口;
- 端口转发
路由器上转发443端口到homeassistant机器即可;
|