Network-Managerを使用して、コマンドラインでWiFiアクセスポイントに接続します


26

コマンドラインからワイヤレスアクセスポイントに接続したいのですが。理想的には、APの名前だけが必要です。ただし、ハードウェアアドレスも同様に機能します。

nmcli管理されたネットワーク接続への接続に使用できることは知っていますが、私の場合、アクセスポイントはまだNetwork-Manager用に設定されていない可能性があります(nm-toolとの出力の違いを参照nmcli con)。

の出力例nmcli

Auto pwln       3a3d62b1-bbdf-4f76-b4d2-c211fd5cfb03   802-11-wireless [...]  
Wired Network   aa586921-accf-4932-98c4-c873c310f08e   802-3-ethernet [...]  
Cisco-UDP Uni   7f94847b-04dc-40b7-9955-5246fb77cc65   vpn [...]  
T-mobile (D1)   867f345a-cbbf-4bd4-b883-a5e5ae0932f0   gsm  [...]

の出力例nm-tool

State: connected
- Device: eth1  [Auto pwln] ----------------------------------------------------
[...]
  Wireless Access Points (* = current AP)
    *pwln: Infra, [...], Freq 2472 MHz, Rate 54 Mb/s, Strength 80 WPA WPA2
    WLAN:  Infra, [...], Freq 2422 MHz, Rate 54 Mb/s, Strength 20 WPA WPA2

[...]

NMに認識されているかどうかわからないアクセスポイントに接続するにはどうすればよいですか?

追加:接続にパスフレーズが必要かどうかを確認し、コマンドラインでも送信するのは素晴らしいことです(つまり、ネットワークマネージャーがキーリングダイアログを開かないか、 GUIのエラー)

回答:


6

cnetworkmanagerこれに使用できます。

編集:

いくつかの調査の後、2つの「ユーザー構成プロバイダー」(特定のdbusアドレスでリッスンするアプリケーション)を同時に実行することは不可能であることが明らかになり、cnetworkmanagerはそのような「構成プロバイダー」として動作する必要があります(少なくとも接続が設定されます)。

ここで、できることは、/system/networking/connectionsキーの下にgconfへの接続に関する情報を追加し(コマンドラインまたはスクリプトから実行できます)、dbusまたはcnetworkmanagerやnmcliなどのコマンドラインツールを使用して接続します。また、最初にユーザーのキーリングにキーを追加する必要があります(パスワードのポップアップを避けるため)。

ただし、もちろんnm-applet(KDEなど)とは別のNMクライアントを使用するデスクトップでは機能しません。あなたもそれらの設定を提供する方法を理解する必要があります...

編集2:

org.freedesktop.NetworkManagerUserSettingsシステムDBus 経由で可能かもしれませんが、これはすべて文書化されていないIMO ...

構成設定DBusインターフェース仕様について読んでください。

そして、ここに関連する例あります(ただし、システム接続の代わりにユーザー接続をセットアップすることもできます)


まだ何もありません。残念ながら、cnetworkmanagerはnetworkmanager-applet(「別のアプレットが実行されています」)以外では正常に動作しません
Stefano Palazzo

私はNMとnm-appletがどのように動作するかを読み、答えを編集しました。
JanC

11

nmcliNetwork Managerで接続がまだ構成されていない場合でも、を使用してこれを直接行うことができます。

nmcli dev wifi con "myssid" password "myssidpassword"

ワイヤレスパスワードを最近のバージョン(以下で説明するよりも新しい場合があります)の履歴に保存したくない場合は、--asknmcliに必要な情報の不足を促すプロンプトを追加できます。

nmcli --ask device wifi connnect "myssid"

この機能はNetwork Manager 0.9.6で追加されたため、Ubuntu 12.10以降でのみ機能します。

また、使用可能なアクセスポイントのリストを取得することもできます。

nmcli dev wifi list

con認識されないnmcli dev wifi
カイザー

どのバージョンを使用していますか?それは私のために働いており、マンページの例として文書化されています。
ロビーバサック

nmcli -vis0.9.4.0
kaiser 14

あなたは12.04を使用していますか?私の答えで言ったように、これはUbuntu 12.10以降でのみ動作します。
ロビーバサック14

これがケースかもしれません。できたのかしらsudo apt-get update
カイザー14

2

wep暗号化にはiwconfig(wifitools)を使用できます。wpaとwepにはwpa_supplicantを使用できます。また、もっと簡単に、幸運を探している場合はwicd-cursesを使用できます=)


おそらくdbus経由でnetwork-managerを使用したいと思います。私が書いているプログラムは自分のマシン上で実行されるだけではないので、オペレーティングシステムをいじりすぎることはできません。可能な場合、すべての構成は変更しないでください。
ステファノパラッツォ

1

iwconfigとiwlistをチェックアウトできます。

  • iwconfigは基本的なワイヤレスパラメータを操作します
  • iwlistでは、スキャンを開始し、周波数、ビットレート、暗号化キーを一覧表示できます...

多くのオプションがあります。詳細については、Linux用のワイヤレスツールをご覧ください。


2
私が言ったように、私はそれを置き換えるのではなく、ネットワークマネージャーと統合したいと思います。
ステファノパラッツォ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.