Ich mache eine GUI-Anwendung, die meinen Laptop steuert, damit er als WLAN-Hotspot fungiert. Ich kann Verteilungen ändern, um eine Lösung zu finden, die im Allgemeinen für alle Verteilungen funktioniert. Ich mache das gerade auf Fedora 17.
Die Verwendung der Schaltfläche "Als Hotspot verwenden" von NetworkManager eignet sich sehr gut zum Erstellen eines Ad-hoc-Hotspots:

Ich möchte diese Funktionalität mit Terminalbefehlen neu erstellen.
Im Folgenden sind zwei Methoden aufgeführt, mit denen ich versucht habe, dies zu erreichen, aber ich habe noch keine Lösung gefunden.
Methode 1: iwconfig
Unter Verwendung von Recherchen aus dem Internet habe ich den folgenden Befehl ausprobiert:
# 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
Wo saved-hotspot-iptablesist eine Datei, die ich iptables-save > saved-hotspot-iptablesmit den von der Funktion "Als Hotspot verwenden" festgelegten iptables generiert habe ?
Methode 1 Problem
Geräte können die SSID sehen, aber keine Verbindung herstellen. Beim Laufen wird ip aFolgendes über wlan0 angezeigt:
...
3: wlan0: <NO-CARRIER,BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state DORMANT qlen 1000
...
Hinweis NO-CARRIERist vorhanden, und der Zustand ist DORMANTstatt UP.
Laufen ifconfig wlan0zeigt folgendes:
...
wlan0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
...
Beachten Sie, dass RUNNINGals eines der Flags fehlt.
Methode 2: nmcli
Wenn die Schaltfläche "Als Hotspot verwenden" von NetworkManager mindestens einmal auf dem System gedrückt wird, /etc/sysconfig/network-scripts/ifcfg-Hotspotwird sie erstellt und ich kann den folgenden Befehl verwenden, um einen funktionierenden Hotspot zu starten:
# ifconfig wlan0 up
# nmcli con up id Hotspot
# iwconfig wlan0 essid my-lappy key 0123456789
Methode 2 Problem
Wenn der Benutzer im NetworkManager noch nie auf "Als Hotspot verwenden" geklickt hat, nmcli con up id Hotspotfunktioniert dies nicht. Ich habe nachgesehen nm-connection-editor --create, konnte aber nicht viele Informationen finden. Ich habe mich auch mit dem manuellen Erstellen befasst, /etc/sysconfig/network-scripts/ifcfg-Hotspotaber diese Methode scheint nicht elegant oder auf andere Distributionen erweiterbar zu sein.