以下 systemd-networkd 配置是否同时用于 DHCP 和回退到静态 IP?

以下 systemd-networkd 配置是否同时用于 DHCP 和回退到静态 IP?

我有一个使用以下命令制作的定制嵌入式 Linux 映像约克托。加载映像的单板计算机默认配置有静态 IP 地址,192.168.3.11/24我可以在主机上设置静态 IP 地址,并通过 SSH 和静态 IP 地址直接连接到单板计算机(目标) IP地址 (192.168.3.11

我找到了一个网络配置文件,systemd如下所示:

# Path /lib/systemd/network/10-eth0.network
[Match]
Name=eth0

[Network]
DHCP=ipv4
Address=192.168.3.11/24

根据systemd-networkd 文档我可以理解,这DHCP=ipv4是在连接到路由器时接受 IPv4 地址。但我不明白Address后面的内容。这是静态 IP 地址的后备方案吗?

除了板的 SSH 之外,我没有任何其他方法可以访问板。如果我将其连接到基础设施 LAN,我无法通过 DHCP 访问路由器来确定 IP 地址,并且希望主板回退到静态 IP 地址。

这是通过上面的脚本实现的吗?

答案1

我刚刚发现 dhcpcd 有这个-S静态分配选项...如果我使用它两次,一次用于 ip_address=,一次用于 routers=,它就会起作用。

我还可以通过 ip link、ip 地址和 ip Route 进行连接。

对于 systemd 我非常小心。您的示例说明了原因:它是一个复杂的配置和规则层。

正如我所见,Address= 表示静态而不是动态,就像上面的 -S 选项一样。但文件名“10-eth0...”也很重要。根据 systemd 与 udev 相关,就像“匹配”规则一样。与其他文件一起,这很可能导致一些“后备”配置......

顺便说一句,你的链接是 arch wiki。 systemd 本身有很好的文档,但对我来说太多了!

systemd 文档在某处解释说简单的“网络已启动”变量或状态太简单了。

相关内容