本帖最后由 hijony 于 2022-8-1 11:42 编辑
看看你的home assistant的网络是不是macvlan,如果是,node red是不是也用的macvlan?有可能用的bridge。如果是bridge,需要卸载node red,用macvlan的网络安装一下node red,同一网段下,node red和home assistant能互相通信。我发一下关键的几段代码:
ip link set br-lan promisc on
docker network create -d macvlan --subnet=192.168.0.55/24 --ip-range=192.168.0.55/24 -o macvlan_mode=bridge -o parent=br-lan macvlan
docker run -d --restart=always --network=macvlan --ip=192.168.0.54 --privileged --name=homeassistant -v /opt/docker/homeassistant:/config homeassistant/home-assistant:latest
docker run -d --restart=always --network=macvlan --ip=192.168.0.53 --privileged --name=nodered -v /opt/docker/nodered:/config nodered/node-red:latest
第一条:开启网卡混杂模式
第二条:创建一个macvlan网络模式,这里的ip,根据你自己的情况来,因为我家用的192.168.0网段,所以这么写的。比如你家主路由地址是192.168.8.1,那你就分配一个192.168.8.x就好,x需要是没有其他设备占用的
第三条:创建home assistant容器,这里就是给一个同网段下没用过的地址给ha(以上这三步本身是为了解决docker下ha接入homekit一直转圈的方案,参考此帖:https://www.right.com.cn/forum/thread-8210168-1-1.html)
第四条,创建node red容器,同样给一个同网段下没用过的地址给node red
|