Comitup
Bootstrap Wifi using Wifi
The comitup service establishes wifi connectivity for a headless Linux system, using wifi as the only access mechanism to the system.
If the computer cannot automatically connect to a local wifi access point, comitup will create a custom hotspot, and establish a comitup-web web service on that network. The web service can be used to remotely select and authenticate a visible wifi connection.
The hotspot is named comitup-<nnn>, where <nnn> is a persistent number. The website is accessible on that hotspot as ht​tp://comitup-<nnn>.local from any device which supports Bonjour/ZeroConf/Avahi. For other devices, use a Zeroconf browser (Android, Windows) to determine the IP address of the "Comitup Service", and browse to http://<ipaddress>. This address will be http://10.41.0.1/
The comitup service implements a captive portal while in HOTSPOT mode. On supported systems (IOS, Android, MacOS, Linux, or anything running Firefox), the connection web page will come up automatically when connecting to the access point.
Comitup can remember multiple upstream connections, and will search among them in the connection attempt, making it easier to move your device to different locations.
If two wifi interfaces are available, the first can persistently remain the hotspot, and the second can manage the external connection. When both are connected, forwarding and masquerading are enabled so that hotspot-connected devices can access external networks.
On the Raspberry Pi, the comitup-web service, running in the hotspot mode, supports a "Locate" feature that blinks the green led on the front of the unit.
The comitup-cli utility is available to interact with comitup from a local terminal session.
comitup requires NetworkManager and systemd.
See the Home Page for installation information.