systemd-networkdを使用してnetwork.targetがDHCPを待つように強制する方法は?

systemd-networkdを使用してnetwork.targetがDHCPを待つように強制する方法は?

私はsystemd-networkdを使ってインターフェイスを設定しています。

[Match]
Name=enp3s0

[Network]
DHCP=v4    

起動時以外はうまく機能し、一部のサービスはDHCPが完了するのを待ちません。たとえば、NFSマウントとnginxはネットワークなしで起動されたため、失敗しました。

network.targetがDHCPを待つように強制する方法はありますか?


編集者注。 ~によると文書:

多くのネットワーク管理ソリューションは、network-online.targetを無条件にプルする方法を提供し、network.targetの効果をnetwork-online.targetの効果にアップグレードします。

systemd-networkdを使用している場合は、systemd-networkd-wait-online.serviceを有効にしてこれを実行できます。

systemctl enable systemd-networkd-wait-online.service

しかし、これを試しました。いいえサービスがnetwork.targetDHCPスタンバイに依存するようにします。これはDHCPスタンバイに明示的に依存するサービスのみを提供し、network-online.target実際にこれが正しく機能するために必要です。

ベストアンサー1

systemd-networkdを使用しているときにすべてのインターフェイスが動作しており、IPアドレスが割り当てられていることを確認するには、次のようにします。

systemctl enable systemd-networkd-wait-online.service

他の人がNetworkManagerを使用している可能性があります。この場合、次のようになります。

systemctl enable NetworkManager-wait-online.service

望むより:http://www.freedesktop.org/wiki/Software/systemd/NetworkTarget/

おすすめ記事