Appendix C. Simple Scheme Management

Appendix C. Simple Scheme Management

This is a simple method for managing your network schemes on Linux. You will need sudo installed. Use sudo privileges to run /sbin/cardctl, then create the following shell script called scheme:

#!/bin/sh

SCHEME=`/usr/bin/basename $0`

if [ "$SCHEME" == "scheme" ]; then
  unset SCHEME
fi

/usr/bin/sudo /sbin/cardctl scheme $SCHEME

Install the script somewhere in your PATH (I put mine in ~/bin). Then make symlinks to the script with the names of schemes you want to access quickly, in the same directory:

rob@entropy:~/bin$ ln -s scheme home
rob@entropy:~/bin$ ln -s scheme oreilly
rob@entropy:~/bin$ ln -s scheme nocat
rob@entropy:~/bin$ ln -s scheme any

Now make matching entries in your /etc/pcmcia/wireless.opts:

home,*,*,*)
	INFO="IBSS net at Home"
	ESSID="HomeNet"
	MODE="Ad-Hoc"
	KEY="1234-5678-90"
	RATE="11M"
	;;

oreilly,*,*,*)
	INFO="Work"
	ESSID="OReillyNet"
	MODE="Managed"
	KEY="s:sHHHH"
	IWCONFIG="power unicast"
	;;

nocat,*,*,*)
	INFO="NoCat Community net"
	ESSID="NoCat"
	MODE="Managed"
	;;

any,*,*,*)
	INFO="Default configuration"
	ESSID="ANY"
	MODE="Managed"
	;;

When you want to change schemes quickly, just type home or any to instantly change all of your wireless and network settings. As an added bonus, typing scheme shows the current scheme. Keep in mind that sudo will prompt you for your password?you need to be root to change the scheme.