Linux
設置沒有地址的乙太網介面 systemd-networkd
我試圖找出一種方法來告訴 systemd-networkd 調出一個沒有 IP 地址的介面並在 networkctl 中強制一個操作狀態。
這就是我的
networkctl
命令輸出的樣子。到目前為止,似乎一切都在執行。IDX LINK TYPE OPERATIONAL SETUP 1 lo loopback carrier unmanaged 2 eno1 ether degraded configured 3 eno2 ether degraded configured 4 eno3 ether no-carrier configuring 5 eno4 ether no-carrier configuring 6 ovs-system ether off unmanaged 7 vmk0 ether routable configured
連結實際上
eno1
並eno2
沒有降級。它們是 Open vSwitch 綁定的一部分,systemd-networkd 不會根據我閱讀的內容管理 Open vSwitch,這對我來說很好。我現在試圖完成的是將乙太網介面的操作狀態強制為其他東西。有沒有辦法在我的網路配置中強制執行狀態?從我在這裡做的閱讀看來,最好的選擇是將它們標記為
enslaved
我嘗試將其添加到我的配置中;
[Match] Name=eno* [Link] RequiredForOnline=enslaved
它似乎沒有對狀態進行任何更改。知道如何強制執行此設置,或者就此而言這是否可能?
我知道這已經有幾年了,您可能不再需要答案了,但是我偶然發現了這篇文章,要求搜尋相同的內容,並希望將我的解決方案貢獻給未來的可憐人。
我也在使用 Open vSwitch,我所有的物理網路介面都用作 vSwitch 埠,只需要啟動。以下適用於所有乙太網適配器,如果您只需要特定介面
$$ Match $$根據需要滿足您的需求。
[Match] Name=en* [Network] DHCP=no LinkLocalAddressing=no KeepConfiguration=yes
這導致埠出現並在 OvS 和 networkctl 中工作,顯示:
eno1 ether carrier configured enp2s0 ether carrier configured
測試機器是 Fedora 35 工作站,配備 I210 和 I219-LM 英特爾 NIC 以及 Open vSwitch 2.15.0 和 Systemd 249.9