Assume we have access to the wifi at work and at home. How can I configure my laptop to automatically connect to the right network without using a graphical network manager ? Welcome guessnet !
Install the guessnet package :
sudo apt-get install guessnet
Edit your /etc/network/interface :
auto wlan0 mapping wlan0 script /usr/sbin/guessnet-ifupdown map home work map timeout: 9 map init-time: 9 map verbose: true map debug: false iface home inet dhcp wpa-ssid "<em>homessid</em>" wpa-psk "<em>homepassword</em>" test wireless essid <em>HOMESSID</em> iface work inet dhcp wpa-ssid "<em>workssid</em>" wpa-psk "<em>workpassword</em>" test wireless essid <em>WORKESSID</em>
(variables to adapt to your configuration in italic)
We define the ‘home’ and ‘work’ networks as usual with the iface command. The 2 differences are :
- we use the virtual interface “work” and “home” instead of the real interface “wlan0”.
- we add a test line that checks the ssid : this is used by guessnet to guess the right network
The mapping block uses an external script (here guessnet) with prudent parameters
- the ‘map home work’ tells guessnet to only check this 2 networks
- the init-time wait a little before configuring, to let the drive enough time
That’s it !