Networking

H.J.Bathoorn triade-lists at zeelandnet.nl
Thu Apr 5 21:53:51 UTC 2007


On Thu, 5 Apr 2007 16:28:13 -0500
Howard wrote:

> 
> Now, if you are using the same nic to connect to different locations there are 
> better ways, and if anyone has those figured out I'd like to know as well.  
> Because network manager just doesn't work.  

I don't know if this is "a better way" but works for me when traveling and quickly searching for hot spots (I'm a Fonera) and/or available open networks.
It's on my panel (but an icon on the desktop does the same) which launches: kdesu "xterm ~/wifi-script" .
here's my wifi-script:
-----------------------------------------------
#!/bin/bash
## A script to easily (oh well, tastes differ) find and connect to wifi AP's

## First get rid of variables unexpectedly left over from prior runs
unset var1
unset var2

## same goes for the txt files
rm -f /tmp/ssid.txt
rm -f /tmp/essid.txt

## re-initialize the card just to be sure. Mine's a ralink PCMCIA card
cardctl eject
sleep 1
cardctl insert
sleep 1

## get rid of retrictive allready joined network for iwlist to work properly
## change ra0 to whatever your card is called, like "wlan0" or "eth1"
iwconfig ra0 essid " " &&

## show all AP's and their encryption state preceded by a line number and write to /tmp/ssid.txt
#iwlist ra0 scanning |grep -i essid |nl > /tmp/ssid.txt    # this is the old command
##this is a better line though still not perfect:
iwlist ra0 scanning |egrep -i -n -A 1 essid > /tmp/ssid.txt 

##remove the -- that grep puts in there as well as the line numbers for encryption
cat /tmp/ssid.txt |cut -d"-" -f2

## Ask the number of the wanted AP
echo -n "which one to try? Please enter number:" ;echo ; read "var1"

##remove all the cruft and write choice to /tmp/essid.txt (delimiter=") 
cat /tmp/ssid.txt |grep $var1 |cut -d"\"" -f2 > /tmp/essid.txt

##declare the variabel and get rid of the quotes in there with sed. Mind the bactick!
declare var2=`cat /tmp/essid.txt|sed 's/"//g'`

##Give some feedback
echo "Setting $var2 as essid and connecting!"

##so let's connect:-)
iwconfig ra0 essid $var2 &&
echo

##and get a DHCP offer from the router
dhclient ra0 &&
echo
echo "Success, have fun ;-)"

##get rid of the /tmp/files -- not really needed!
rm -f /tmp/*id.txt
## And get enough time to read succes ;-)
sleep 4

##Quit the terminal
exit 0


-------------------------------------------------------------------------

There's definitely some stuff that could be done better or cleaner, but it works for me. :-) 

-- 

Good luck,
HarM.




More information about the kubuntu-users mailing list