我正在嘗試找出以最佳方式即時控製網路設定的最佳方法。
我目前的計劃是這樣的:
- 從 systemd開始
ip -s -d -o monitor
並將其輸出寫入使用產生的檔案mkfifo
或編寫輸出到 tcp 套接字的小腳本127.0.0.1:<some port>
- 編寫 shell 腳本來讀取文件/套接字,並在發生更改時動態生成 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