『瀚思彼岸』» 智能家居技术论坛

 找回密码
 立即注册
查看: 6778|回复: 3

[技术探讨] 安装home assistant的树莓派通过手机热点联网时的外网访问

[复制链接]

8

主题

158

帖子

1227

积分

金牌会员

Rank: 6Rank: 6

积分
1227
金钱
1069
HASS币
0
发表于 2021-8-3 09:36:18 | 显示全部楼层 |阅读模式
本帖最后由 bluebaby 于 2021-8-7 11:51 编辑

   由于工作的需要经常外出,没什么机会使用宽带,网络来回切换也不方便,于是一直通过手机热点给树莓派提供网络。有时候需要通过外网访问树莓派,于是查找了各种资料,其中ipv4的duck ddns之类的没法使用,因为手机的ipv4是没有公网ip的。后来看到网上说现在手机可以提供ipv6,可以通过ipv6直接访问。期间一直查找跟home assistant ipv6有关的资料,结果连内网访问[ipv6]:8123都没能搞定。直到昨天群友发了个ipv6查询的网址,说是登陆网站有没有获取到ipv6地址一看就知道了。手机上打开之后提示没有获取ipv6地址,看到这个结果我有点懵,因为明明手机网络设置里面设置的走ipv6,信息里面也看到获取了ipv6地址。重启了一下手机,再试下ipv6测试网址,发现这次网站终于显示到获取ipv6地址了,以前一直搞不定,可能是没重启手机的原因。在电脑上也打开了ipv6测试网站,也是提示没获取到ipv6地址,修改了下网卡的tcp/ip为手动,搞定。再次进入home assistant的terminal,复制里面的ipv6地址,在浏览器输入[ipv]:8123,终于可以内网通过ipv6进行访问了。然后打开腾讯云,进行dns解析,搞定远程访问。方法:
1、手机设置ipv6,开启热点,热点需要设置成2.4g,不能设置成5g。
2、装有home assistant的树莓派连接上手机热点,terminal里面查看IPv6 addresses for wlan0:,复制第一个地址,我这里是2408开头的,2408:8xxxxxxxx:1908/64。(/64不要)
3、浏览器里输入[2408:8xxxxxxxx:1908]:8123,看能否访问。
4、如果可以访问,到阿里云或者腾讯云设置域名解析。有那种一两块钱一年的域名,可以买一个。
5、解析好后直接输入域名:8123就可以进行访问了,比如我现在设置的这个https://ha.5imake.xyz:8123

个人总结了一下2个需要注意的地方:
1、手机上打开https://test-ipv6.com,看是否获取到ipv6,如果没能获取,重启手机,还是不行的话查找相关ipv6设置资料。
2、电脑上打开https://test-ipv6.com,查看是否获取到ipv6,如果没能获取,查找相关网卡设置资料,设置好后重启。


   未解决的地方:当手机ip有变化的时候,需要重新查看树莓派获取到的ipv6地址,需要重新解析。8月4日更新:已经解决了自动更新ipv6地址的问题。docker里面安装[backcolor=rgba(255, 255, 255, 0.95)][size=15.008px]jeessy/ddns-go,网络方式要设置为host,我一开始用的默认的bridge,无法获取ipv6地址,改成host就可以了。
截屏2021-08-03 上午9.12.33.png
截屏2021-08-03 上午9.13.01.png
截屏2021-08-03 上午9.13.39.png
截屏2021-08-03 上午9.29.56.png





回复

使用道具 举报

8

主题

158

帖子

1227

积分

金牌会员

Rank: 6Rank: 6

积分
1227
金钱
1069
HASS币
0
 楼主| 发表于 2021-8-3 10:12:19 | 显示全部楼层
  ipv6真方便,拿来做远距离遥控车
回复

使用道具 举报

8

主题

158

帖子

1227

积分

金牌会员

Rank: 6Rank: 6

积分
1227
金钱
1069
HASS币
0
 楼主| 发表于 2021-8-4 16:48:23 | 显示全部楼层
已经解决了jeessy/ddns-go不能获取ipv6地址的问题。
回复

使用道具 举报

8

主题

158

帖子

1227

积分

金牌会员

Rank: 6Rank: 6

积分
1227
金钱
1069
HASS币
0
 楼主| 发表于 2021-8-7 11:56:11 | 显示全部楼层
现在又发现个问题,ipv6访问倒是正常了,ipv4没法访问了,有点头疼。
这是yaml的配置文件,应该没什么问题。又或者是jeessy/ddns-go的hostname问题,网络模式改成了host,hosename我是默认设置,是否要改成跟homeassistant的hostname一样。

# Configure a default setup of Home Assistant (frontend, api, etc)
default_config:

# Text to speech
tts:
  - platform: google_translate

group: !include groups.yaml
automation: !include automations.yaml
script: !include scripts.yaml
scene: !include scenes.yaml
http:
  server_port: 8123  #可以不要
  ssl_certificate: /config/ssl/fullchain.pem
  ssl_key: /config/ssl/privkey.pem
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2024-11-27 10:31 , Processed in 0.118695 second(s), 28 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表