homeassistant内网穿透
作者:热点 来源:焦点 浏览: 【大 中 小】 发布时间:2026-10-17 06:22:25 评论数:
家里那台树莓派4B,网穿跑着Home Assistant已经一年多了。网穿智能家居这玩意儿,网穿局域网内用着挺爽,网穿一出门就抓瞎——手机上的网穿控制界面直接变白板,那种感觉就像把车钥匙锁在家里,网穿人站在车库外头。网穿 内网穿透这事儿,网穿说白了就是网穿给Home Assistant开个后门。我用的网穿是frp方案,没选那些花里胡哨的网穿云服务,原因很简单:免费的网穿不稳定,稳定的网穿要收费,不如自己手里握着个服务器来得踏实。网穿我有一台腾讯云轻量应用服务器,网穿带宽1Mbps,一年下来也就几十块钱,比那些穿透服务商的年费便宜多了。 具体配置不复杂,但坑也不少。服务器端下载frp的Linux版本,解压后配置frps.ini,bindPort设成7000,这是frp的控制端口。vhost_http_port设成8080,因为我的服务器上还挂着别的服务,80端口没法让给HA用。客户端那边,树莓派上装frpc,配置文件里serverAddr填服务器公网IP,serverPort填7000。最关键的是那行custom_domains,我填的是home.你的域名.com,这个得提前把DNS解析到服务器IP上。 第一次配完,重启服务,手机切到4G网络,输入地址,转了两圈,页面出来了。那种感觉,跟考试蒙对最后一道大题差不多。但高兴没持续多久,第二天就发现连接老断。查日志,发现是frpc的心跳超时设置太短,默认的10秒在移动网络下经常误判。把heartbeatInterval改成30,heartbeatTimeout改成90,问题就解决了。 还有个细节容易被忽视——HA的配置里要设置trusted_proxies。不然你从外网访问,HA会认为是代理转发,登录状态存不住,每次打开都要重新输账号密码。在configuration.yaml里加上: ```yaml http: trusted_proxies: - 127.0.0.1 - 你的frp服务器IP ``` 这行配置让我折腾了一下午,最后在HA官方论坛翻到一条2019年的帖子才解决。 用下来几个月的感受:1Mbps的带宽跑HA的界面绰绰有余,但别指望通过它传视频流。摄像头画面卡成PPT,那是带宽的锅,不是frp的问题。另外,建议在HA里开两步验证,毕竟暴露在公网上,安全不能靠自觉。 最后说个实在的——别用那些免费的内网穿透服务跑HA。我试过,高峰期延迟能到5秒以上,控制个灯跟远程开机似的。自己搭frp,虽然前期要折腾半小时,但胜在稳定可控,数据也经过自己的服务器,心里踏实。
