
NetworkManager にバグを見つけたと思いますが、確信はありません。私は Ubuntu 14.04 を使用しており (Ubuntu のバージョンはここではあまり重要ではないと思います)、network-manager=0.9.8.8-0ubuntu7.3 がインストールされており、ネットワーク構成は確かに NetworkManager によって管理されています。
接続が確立された後にカスタム コマンドをいくつか実行したかったのですが、post-up (NM が呼び出す) 段階で実行するカスタム スクリプトを配置できるこの dispatcher.d フォルダーがあることが分かりました。接続が確立された後にルーティング テーブルを変更する必要があるため、これらのスクリプトを post-up で実行することが重要です。ソース アドレスが指定された新しい IPv6 ルートを追加したかったのですが、Network-Manager 設定では、指定されたソース アドレスでルートを提供するオプションがないため、実行できませんでした (NM だけのことだと思います)。
残念ながら、スクリプトは IPv4 構成がコミットされて完了した後、IPv6 構成が完了する前に実行されます。 IPv6 構成がまだない場合は IPv6 ルートを追加できないことが判明したため、ポストアップ段階で接続に IPv6 の変更を加えることはできません。これはバグのようです。
その証拠として、私の syslog には、IPv4 設定がコミットされていることを示す行と、それに続くスクリプトのカスタム出力があり、さらにその後ろに IPv6 の変更がスケジュールされていることを示す行 (直後から開始) が続きます。
NetworkManager 接続が確立された後に、ルーティング テーブルにカスタム IPv6 ルートを追加する方法を提案してもらえますか?
スクリプトに子プロセスを発生させ、ルートを適用する前に数秒間スリープさせ、親プロセスを終了させて NetworkManager が処理を続行し、子プロセスがスリープ状態を終了してルートを追加する前に IPv6 アドレスを設定するといった面倒な解決策も考えられます。それが唯一の方法である場合、NM ソフトウェアは本質的に欠陥があり、IPv6 ユーザーを差別していることになります。