Sometimes you need to attach to multiple networks at the same time, maybe a closed-corporate-no-internet wired network and your smartphone wireless tethering hotspot.
wicd-cursesto manage the wireless card
ifplugdto detect network connectivity change (might not be necessary)
resolvconfto manage the resolv.conf file by aggregating results from each attached networks
dnsmasqto cache DNS queries or add your own config
sudo apt-get install wicd-curses ifplugd resolvconf dnsmasq