“停止工作”可能有点夸张,但部分内容确实如此,而且我对正在发生的事情了解不够多,无法用更短的措辞作为标题。
基本上,我有
- 一台带有 2 个网卡的机器运行一个虚拟机和一堆 Docker 容器。NIC#1 有 IP
10.0.30.21
,NIC#2 是最近设置和分配的10.0.30.22
。- 一个运行 Home Assistant OS 的虚拟机(IP:
10.0.30.61:8123
,由 NGINX 提供服务,网址为hass.my_domain.tld
) - 一组 Docker 容器,包括(潜在)感兴趣的内容:
- NGINX (linuxserver/swag)(使用端口
80
和443
) - deCONZ(使用端口
8080
和8443
) - Z-WaveJS2MQTT 服务器(使用端口
8091
和3000
)
- NGINX (linuxserver/swag)(使用端口
- 一个运行 Home Assistant OS 的虚拟机(IP:
所有感兴趣的 Docker 容器都会公开端口10.0.30.21
。
到目前为止,我只使用了一个网卡,但出于不相关的原因,我想将我的 unifi 控制器移至 docker 容器。由于它使用 IP 上已在使用的一些端口10.0.30.21
(例如 deCONZ 使用的端口),我想设置第二个网卡并使用不同的 IP。
因此,我添加了第二个接口到我的/etc/netplan/00-installer-config.yaml
:
network:
ethernets:
eno1:
dhcp4: true
eno2: # <-- These two lines are what I added
dhcp4: true # <-- These two lines are what I added
version: 2
bridges:
br0:
dhcp4: yes
interfaces:
- eno1
parameters:
stp: true
一开始它似乎工作正常,新的 Mac 出现了,我可以在 dhcp 服务器中分配 IP 和所有内容。
对于 unifi 控制器,我使用了将所有内容绑定到“新” IP 的端口绑定10.0.30.22
(来自我的 unifi-controller 部分docker-compose
):
ports:
- 10.0.30.22:8443:8443
- 10.0.30.22:3478:3478/udp
- 10.0.30.22:10001:10001/udp
- 10.0.30.22:8080:8080
- 10.0.30.22:1900:1900/udp #optional
- 10.0.30.22:8843:8843 #optional
- 10.0.30.22:8880:8880 #optional
- 10.0.30.22:6789:6789 #optional
- 10.0.30.22:5514:5514/udp #optional
但是当我启动 unifi-controller docker 容器(linuxserver/unifi-controller)时,发生了一些事情:
- Home Assistant VM 无法再访问 deCONZ 或 Z-waveJS2MQTT 服务
- 错误日志只是说他们无法在其 IP 上使用(
10.0.30.21
) - 我仍然可以通过本地 IP:port (
10.0.30.21:8080
和10.0.30.21:8091
)访问它们的 Web UI,并且可以通过此 Web UI 控制设备(因此它似乎功能齐全)
- 错误日志只是说他们无法在其 IP 上使用(
- Home Assistant VM 网页用户界面不再可访问
hass.my_domain.tld
尽管:- Web UI 可在本地 IP 上访问且正常运行 (
10.0.30.61:8123
) - NGINX 日志中没有错误或警告
- Home Assistant 日志中没有错误或警告
- 可能有错误
docker logs deconz
,我不确定是否相关。- 缺点:
Unbind response failed with status 0x88 for 0x84fd27fffe70d3ed ep: 0x01 cluster: 0x2000
- 缺点:
- Web UI 可在本地 IP 上访问且正常运行 (
- 我没有失去 FQDN 访问权限任何其他服务由 NGINX 提供服务,其中包括该机器上的服务以及其他机器上的服务,例如:
- Nextcloud (本地 IP
10.0.30.67
) - DokuWiki (本地 IP
10.0.30.21
) - TrueNAS(本地 IP
10.0.30.27
) - PiHole (本地 IP
10.0.30.43
) - ETC。
- Nextcloud (本地 IP
当我关闭unifi-controller时,注意变化,仍然无法访问。当我从 docker-compose 中删除 unifi-controller 部分并完全重启系统时,没变化. 仍然无法访问。
eno2
我唯一能恢复的方法是从netplan 文件中删除这些行,然后重新启动,一切都会恢复如前。
我到底做错了什么?
(Ubuntu 服务器 LTS 22.04)