NetworkManagerの「ホットスポットとして使用」オプションに対応するターミナルコマンド

NetworkManagerの「ホットスポットとして使用」オプションに対応するターミナルコマンド

私はラップトップをWi-Fiホットスポットとして機能させるように制御するGUIアプリケーションを作成しています。ディストリビューションを変更することもできますので、すべてのディストリビューションに適用されるソリューションを探したいと思います。現在Fedora 17でこれを行っています。

NetworkManagerの「ホットスポットとして使用」ボタンを使用して、一時的なホットスポットをすばやく作成できます。 ここに画像の説明を入力してください。

ターミナルコマンドを使用してこの機能を再作成したいと思います。

これを達成するために2つの方法を試しましたが、まだ解決策が見つかりませんでした。


方法 1: iwconfig
Webで調査したところ、次のコマンドを試しました。

# ifconfig wlan0 10.42.0.1 netmask 255.555.255.0 broadcast 10.42.0.255 up
# iwconfig wlan0 essid my-lappy mode ad-hoc key 0123456789
# iptables-restore < saved-hotspot-iptables
# echo 1 > /proc/sys/net/ipv4/ip_forward
# dhclient wlan0

その中には、「ホットスポットとして使用」機能を使用して設定したiptablesによって生成されたファイルがありますsaved-hotspot-iptablesiptables-save > saved-hotspot-iptables

方法1質問
デバイスでSSIDを表示できますが、接続できません。実行すると、ip awlan0に関する次の情報が表示されます。

...
3: wlan0: <NO-CARRIER,BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state DORMANT qlen 1000
...

通知はありますが、ステータスNO-CARRIERDORMANTありませんUP

実行ifconfig wlan0画面は次のとおりです。

...
wlan0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
...

RUNNINGフラグの1つがありません。


方法 2: nmcli
NetworkManagerの「ホットスポットとして使用」ボタンをシステム上で1回以上押すと/etc/sysconfig/network-scripts/ifcfg-Hotspotボタンが作成され、次の操作でホットスポットを起動できます。

# ifconfig wlan0 up
# nmcli con up id Hotspot
# iwconfig wlan0 essid my-lappy key 0123456789

方法2の問題
ユーザーが以前にNetworkManagerで「ホットスポットとして使用」をクリックしたことがない場合は、効果はありませんnmcli con up id Hotspot。探してみましたnm-connection-editor --createが、情報はあまりありませんでした。手動で作成する方法も見てきましたが、/etc/sysconfig/network-scripts/ifcfg-Hotspotこのアプローチはエレガントではないか、他のディストリビューションにスケーラブルに見えません。

ベストアンサー1

専用オプションがありますnmcli

nmcli device wifi hotspot ifname wlan0 ssid toto password toto

詳しくは手動:

wifi hotspot [ifname ifname] [con-name name] [ssid SSID] [ band { a | bg } ] [channel channel] [password password] 

おすすめ記事