systemd-networkd-再起動せずに新しい構成を強制する方法?


12

私のArchボックスには、ネットワークブリッジがありました。目標は、ブリッジを削除し、ブリッジされていないネットワークアダプターのみを使用することでした。これを行うために、以下のすべての* .netdevおよび* .network構成ファイルを削除し/etc/systemd/network、それらを1つの単純なファイルに置き換えました。

/etc/systemd/network/lan.network
--------------------------------
[Match]
eno*

[Network]
DHCP=ipv4

私は、使用してネットワークサービスを再起動しsystemctl restart systemd-networkd、これはただで私を残してと仮定して、loおよびeno*インタフェース。残念ながら、これは効果がありませんでした。をざっと見てみるとip link、ブリッジインターフェースがアクティブでアクティブであることがわかりました。

この特定のケースでの稼働時間は重要ではないため、問題を解決したマシンを再起動しただけです。それでも、このような場合には再起動は必要ないのではないかと思います。私は何を逃したのですか?


v244 networkctl reloadreconfigure @ github.com / systemd
frostschutz

回答:


9

ブリッジマスターインターフェイスがまだ起動している場合、その間にバインドされたスレーブインターフェイスは、その間に新しい構成が検出されてもバインドされたままになります。だから、橋を失うだけです。

ip link set down br0
ip link del dev br0
systemctl restart systemd-networkd

1
その過程でネットワークアクセスを失うことはありませんか?
2016

@vic-ネットワークアクセスが、nicをバインドしたブリッジを経由してルーティングされている場合は、そうです。それ以外の簡単な方法を考えることはできません。考えられる複雑な方法は中途半端なものであり、一時的なホールドオーバー仮想NICとカーネル内のdevfilter上のすべてのパケットのnetfilterの複製を伴います。醜いと愚かな。それかタイムトラベルのどちらかです。たぶん別の方法がありますが、あなたは私についてそれを学ばないでしょう。とにかく、ネットワークは最初のコマンドの後にのみ失われ、その後3番目のコマンドの後に復元されます。おそらく再起動よりも少ないdtです。

1
@vicパーティーに遅れていることはわかっていますが、1つの方法として、コマンドを1行に連結することもできますip link set down br0 && ip link del dev br0 && systemctl restart systemd-networkd。接続は少なくとも一時的には切断される可能性がありますが、ホストのネットワークサービスはオンラインに戻り、再起動後に取得するIPアドレスがわかっている限り、いつでも新しいSSHセッションを作成できます。
code_dredd 2018年

1
&&これらのコマンドをチェーンしないで、セミコロンを使用します。1つが失敗した場合でも、ネットワーク接続を使用可能な方法で再構成するため、立ち上がってサーバーにアクセスする必要はありません...
Josef Kufner
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.