【Ubuntu / CHIP】Bluetoothテザリング接続をコマンドラインから。

Linuxマシンから、Bluetoothテザリング対応のモバイルルータだとか Android 端末に接続する設定。

GUI な環境だったら Bluetoothマネージャーを利用して、機器のスキャン → ペアリング → 接続 … とサクサクいけるのですが、この設定をターミナルからコマンドラインでやってみる。

ターミナルを立ち上げたら、まずはコマンド・bluetoothctl 。

bluetoothctl

コマンド受け入れモードになるので、Bluetooth のパワーをオンに(既にパワーがオンならば省略)。

[bluetooth]# power on

自分を相手から検出可能になるように設定。

[bluetooth]# discoverable on

後々、機器とペアリングをするときにパスコードのやり取りができるように設定。

[bluetooth]# agent on

近くにある機器をスキャン。

[bluetooth]# scan on

機器のリスト(MACアドレスと機器名)が続々と表示されます。例えば以下のような感じ。

Discovery started
[NEW] Device AB:F9:xx:xx:xx:xx Fly12
[NEW] Device 10:66:xx:xx:xx:xx Aterm

スキャンを終了するには…

[bluetooth]# scan off

接続したい機器とペアリング。接続先のMACアドレスが必要です。先ほどゲットしたリストでMACアドレスを確認しつつ…

[bluetooth]# pair 10:66:xx:xx:xx:xx

パスコードのやり取りがあって、問題がなければペアリングが完了する筈。

次回から作業が簡単になるように、この接続を信頼しときましょ。

[bluetooth]# trust 10:66:xx:xx:xx:xx

ひとまず終了。

[bluetooth]# quit

bluetoothctl で help コマンドを打つと、bluetoothctl で利用可能なコマンドのリストが表示されます。

さて次に、ネットワークマネージャのコマンドラインツール nmcli で、ネットワークデバイスの状態を確認。

nmcli dev status

すると、先ほどペアリングした機器のMACアドレスが、デバイスリストに表示されている筈。こいつとネットワーク接続を確立させてやれば良いので…

nmcli dev connect 10:66:xx:xx:xx:xx

「管理者権限が必要だ」と言われたら sudo 〜 で。

ちなみに切断するときは nmcli dev disconnect 10:66:xx:xx:xx:xx です。

…と、これで如何か。

nmcli でステイタスを確認してみると、デバイス・10:66:xx:xx:xx:xx の状態が "接続済み" になっていますね。コマンド ip addr とかで確認してみると、きちんと IP アドレスも引けているようです。

試しに外部のサーバに ping を打ってみたり、ウェブページを閲覧したりしてみましょ。Bluetoothテザリングで外の世界と繋がったでしょうか?

カテゴリ: