工作と競馬2

電子工作、プログラミング、木工といった工作の記録記事、競馬に関する考察記事を掲載するブログ

nmcliで、複数の無線ネットワーク設定のうち、システム起動時に特定のネットワーク設定を接続させる

概要

nmcliで、複数の無線ネットワーク設定のうち、システム起動時に特定のネットワーク設定を接続させることができた。


背景と目的

あるシステムで、複数の無線ネットワークが利用可能な環境で、起動時には特定のネットワークに接続し、その後アプリケーション側で他のネットワークへ切り替えたかったのでその方法を調べて試す。


詳細

1.実施環境

nmcliでネットワーク設定を複数定義している。ここでは2つあるとしてそれぞれ設定A、設定Bとし、起動時にAを、そのあとアプリケーション側の任意のタイミングでBに切り替えたいとする。


2. 調査

nmcliで設定できる項目として、起動時の自動接続に関係ありそうなものを見てみると、

$ nmcli c show 設定A
:
connection.autoconnect:                 yes
connection.autoconnect-priority:        0
:

というものがあった。こちらを参考にすると、

  • connection.autoconnectは、まさに自動接続の可否
  • connection.autoconnect-priorityは、複数接続可能なものがあった場合の優先度

ということなので、設定Aのconnection.autoconnectを yes、設定Bのconnection.autoconnectをnoに設定してやればよいということになる。


3.試す

現状は両方autoconnectがyesであり、いつも設定Bにつながってしまう状態。で、以下を実行。

nmcli c mod 設定A connection.autoconnect yes
nmcli c mod 設定B connection.autoconnect no

システムを再起動したところ、設定Aのネットワークにつながった。ということで、目的は達成。

なお、両方yesのままconnection.autoconnect-priorityを変えてみた。数値が大きいほうが優先ということなので、設定Aの数値を大きくしたが、設定Bにつながってしまい、うまくいかなかった。なぜ???


まとめと今後の課題

nmcliで、複数の無線ネットワーク設定のうち、システム起動時に特定のネットワーク設定を接続させることができた。