Estoy haciendo una aplicación gui que controlará mi computadora portátil para que actúe como un punto de acceso wifi. Puedo cambiar las distribuciones, así que quiero encontrar una solución que funcione en general para todas las distribuciones. Actualmente estoy haciendo esto en Fedora 17.
El uso del botón "Usar como punto de acceso" de NetworkManager funciona muy bien para crear un punto de acceso ad-hoc:

Quiero recrear esta funcionalidad con comandos de terminal.
A continuación hay dos métodos que intenté lograr, pero aún no he encontrado una solución.
Método 1: iwconfig
Utilizando la investigación de toda la web, probé el siguiente comando:
# 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
donde saved-hotspot-iptableses un archivo que generé con iptables-save > saved-hotspot-iptableslas iptables establecidas por la función "Usar como punto de acceso".
Método 1 Problema Los
dispositivos pueden ver el SSID pero no pueden conectarse. Correr ip arevela lo siguiente sobre wlan0:
...
3: wlan0: <NO-CARRIER,BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state DORMANT qlen 1000
...
El aviso NO-CARRIERestá presente y el estado es en DORMANTlugar de UP.
Correr ifconfig wlan0muestra lo siguiente:
...
wlan0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
...
Observe que RUNNINGfalta como una de las banderas.
Método 2: nmcli
Si se presiona el botón "Usar como punto de acceso " de NetworkManager al menos una vez en el sistema, /etc/sysconfig/network-scripts/ifcfg-Hotspotse crea y puedo usar el siguiente comando para iniciar un punto de acceso que funcione:
# ifconfig wlan0 up
# nmcli con up id Hotspot
# iwconfig wlan0 essid my-lappy key 0123456789
Método 2 Problema
Si el usuario nunca ha presionado "Usar como punto de acceso" en NetworkManager antes, nmcli con up id Hotspotno funcionará. Lo miré nm-connection-editor --createpero no pude encontrar mucha información. También he examinado la creación manual, /etc/sysconfig/network-scripts/ifcfg-Hotspotpero este método no parece elegante ni extensible a otras distribuciones.

Respuestas:
Vea mi respuesta a "Crear punto de acceso inalámbrico y compartir conexión a Internet con
nmcli"Creé un punto de acceso con el Administrador de red de GNOME. El problema era que no puedo configurar el SSID y la contraseña en la GUI. Si crea el Hotspot con la GUI de Network-Manager, crea el archivo
/etc/NetworkManager/system-connections/Hotspot. En ese archivo es posible editar el SSID y la contraseña.El contenido del archivo se ve así:
Sólo cambió el
ssidy laspskpropiedades a mis necesidades. Luego reinicié mi computadora porque el comando:sudo systemctl restart NetworkManagerpara reiniciar la red parece no funcionar correctamente, porque en la GUI de Network-Manager ya no tengo configuraciones de red inalámbrica y el siguiente comando no funcionó antes del reinicio. Después de reiniciar, puede usar elnmclicomando para iniciar el punto de acceso.YOUR_WIFI_INTERFACEpuedes averiguarlo con el comandoiwconfig.fuente
Hay una opción dedicada en
nmcli:Más información del manual :
fuente
Se necesitaba un servidor DHCP para asignar direcciones IP a las conexiones wifi. Solía
dnsmasqun servidor DNS y DHCP.Los siguientes son los comandos para iniciar un punto de acceso wifi ad-hoc:
fuente