リアルタイムでネットワーク設定を可能な限り最適に制御する最善の方法を模索しています。
私の現在の計画は次のとおりです:
- systemdを起動し
ip -s -d -o monitor
、その出力を生成されたファイルに書き込むmkfifo
か、tcpソケットに出力する小さなスクリプトを作成します。127.0.0.1:<some port>
- ファイル/ソケットを読み取り、変更があった場合に systemd ネットワーク構成ファイルをオンザフライで生成するシェル スクリプトを作成し、もちろん変更に応じて他のコマンドを使用して systemd 構成の追加データを読み取ります。
この方法では、ip <cmd>
コマンドを使用してネットワーク設定をリアルタイムで変更したり、systemd 構成ファイルを手動で記述して再起動したりすることができnetworkd
、その後、起動後も と の両方ip
のsystemd
ネットワーク設定が同期されたままになります。
そこで疑問が湧きます。あるいは、もっと良い方法はあるのでしょうか?
たとえば、次のようなコマンドがあります:
systemd-networkd --add-vlan 123 --name lan
systemd-networkd --attach-vlan lan --device interface0
systemd-networkd --monitor --script /etc/network_changes_script.sh