[Click] Re: MAKING A NODE AS GATEWAY!!

John Bicket jbicket at amsterdam.lcs.mit.edu
Fri Jul 2 17:58:04 EDT 2004


Hi Gaurav,


On the gateway machine, run this to start the nat:

 /sbin/iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
 echo 1 > /proc/sys/net/ipv4/ip_forward

on each other node, add the default route through the srcr interface:

/sbin/route add default srcr


If you want to check the default route, run "route -n" - this won't do
hostname lookups, so it won't hang while the lookup times out.
That should work - to test it, cat /click/srcr_gw/gateway_stats
which should show you the gateway's ip, last packet rx from that gw, and
the metric to the gateway.

Then you should be able to connect to internet hosts through the gateway
from other nodes.


--john

gaurav dawra [openapproject at hotmail.com] wrote:
>
>Hi John
>
>I need ONE of the node in my network to work as Gateway( I think this 
>functionality is required to access network on the OTHER side of WIRELESS 
>Network ).
>
>When i load the "roofnet" configuration using this command:
>
>./conf/gen_config_roofnet.pl --dev "wlan0" --gateway 1 > /click/config
>
>i believe it is the right use of loading the configuration. If not please 
>suggest. I looked into your scripts to find out about the same and also 
>looked into the configuration file of CLICK in /click/config which is 
>loaded using above command.
>
>srcr_gw :: GatewaySelector(ETHTYPE 0x092c,
>                     IP 5.35.253.45,
>                     ETH 00:09:5B:23:FD:2D,
>                     LT srcr_lt,
>                     ARP srcr_arp,
>                     PERIOD 15,
>                     GW false,
>                     LM srcr_ett);
>
>srcr_set_gw :: SetGateway(SEL srcr_gw);
>
># THIS IS ACTUALLY WORKING WHILE I LOOK INTO T HE /click/config FILE: 
>GATWAY IS SET
># AS IT IS LOADING commands IN THE if { }
>   if ($gateway) {
>
>print <<EOF;
> -> gw_outgoing_cl :: IPClassifier(dst host $srcr_ip,
>                          -);
>gw_outgoing_cl[0] -> srcr_host;
>
>gw_outgoing_cl[1]
> -> gw_counter_outgoing :: IPAddressCounter(USE_SRC true)
> -> srcr_ratemon
> -> srcr_host;
> Idle -> [1] srcr_set_gw [1]-> Discard;
>EOF
>} else {
>print <<EOF;
> -> from_gw_cl :: IPClassifier(src net $srcr_net mask $srcr_nm,
>                               -);
>from_gw_cl[0]
> -> srcr_ratemon
> -> srcr_host;
>
>from_gw_cl[1]
>-> [1] srcr_set_gw [1]
>-> srcr_ratemon;
>EOF
>
>--------------------------------------------------------
>But How do i test it? I enable another node with "click configuration " 
>without enabling GATEWAY. And disables eth0 of this NODE ONE.
>
>There is No default route SET when i look into routing tables. When i 
>execute this command to add default route:
>
>route add -net default gw 5.8.11.168 dev srcr
>
>So that all the packets pass thru srcr. but it does not add this entry , 
>again when i type "route" it just displays previous settings and hangs 
>after that.
>
>It will be helpful if you can able to send routing table ENTRY of any 
>gateway node of ROOFNET, what is the default being set, is it SRCR or ETH0.
>
>I spend whole afternoon trying to figure out what exactly can i do to test 
>WHETHER SECOND NODE IS WORKING AS GATEWAY or NOT?
>
>I think setting default gw : as srcr makes sense to me. What do u think? 
>Any Suggestion?
>
>I will draw a picture to explain things better.
>
>   eth0(SHUT DOWN)<-->|| NODE ONE || <--> wlan0(6.8.11.168) 
>srcr(5.8.11.168)
>
>TRYING TO PING ETH0 of SECOND NODE
>
>   wlan0( 6.35.253.45) srcr (5.35.253.45) <---> || NODE TWO || <--> eth0 
>(153.90.196.95) (TRYING TO PING THIS FROM NODE ONE)
>
>I know the obvious problem is the default is not SET in route tables of 
>NODE ONE: "route"
>Destination     Gateway         Genmask         Flags Metric Ref    Use 
>Iface
>5.0.0.0         *               255.0.0.0       U     0      0        0 srcr
>6.0.0.0         *               255.0.0.0       U     0      0        0 
>wlan0
>127.0.0.0       *               255.0.0.0       U     0      0        0 lo
>------------------------------------------------------------------------------------
>Please Suggest? i hope you will reply soon.
>
>--Gaurav
>
>>From: John Bicket <jbicket at amsterdam.lcs.mit.edu>
>>To: gaurav dawra <openapproject at hotmail.com>
>>CC: click at amsterdam.lcs.mit.edu
>>Subject: Re: madwifi.stripped works:CUD not PING WLAN0 from other machine
>>Date: Tue, 29 Jun 2004 21:23:16 -0400
>>
>>
>>I am assuming that you have both machines running their own click
>>configs; Is there anything present in /click/srcr_es/bcast_stats
>>on either machine?
>>That should show nodes within one-hop.
>>
>>What happens when you run "ping -b 6.255.255.255"?
>>
>>
>>--john
>>
>>
>>gaurav dawra [openapproject at hotmail.com] wrote:
>>>Hi John--
>>>
>>>Thanx for the help it is working , i mean to say that the different
>>>interfaces including WLAN0 and srcr are up and i can ping to them FROM 
>>the
>>>same machine(Just to see). But i cannot able to PING the wireless 
>>Interface
>>>from some OTHER machine.
>>>
>>>Machine with madwifiand roofnet configuration :
>>>
>>>wlan0:
>>>[root at localhost root]# ifconfig wlan0
>>>wlan0     Link encap:Ethernet  HWaddr 00:09:5B:23:FD:2D
>>>         inet addr:6.35.253.45  Bcast:6.255.255.255  Mask:255.0.0.0
>>>         UP BROADCAST MULTICAST  MTU:1650  Metric:1
>>>         RX packets:13 errors:0 dropped:0 overruns:0 frame:0
>>>         TX packets:1300 errors:0 dropped:0 overruns:0 carrier:0
>>>         collisions:0 txqueuelen:0
>>>         RX bytes:182 (182.0 b)  TX bytes:1581432 (1.5 Mb)
>>>         Interrupt:3 Base address:0x100
>>>[root at localhost root]# ifconfig srcr
>>>srcr      Link encap:Ethernet  HWaddr 00:01:02:03:04:05
>>>         inet addr:5.35.253.45  Bcast:5.255.255.255  Mask:255.0.0.0
>>>         UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
>>>         RX packets:0 errors:0 dropped:0 overruns:0 frame:0
>>>         TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
>>>         collisions:0 txqueuelen:100
>>>         RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)
>>>
>>>---------------------------------------------------------------------------
>>>
>>>Other NODE has interface :
>>>
>>>wlan0 and eth0:
>>>
>>>wlan0:
>>>inetaddr: 6.35.253.1( i did it statically by modifying ifcfg-wlan0 file),
>>>and netmask: 255.0.0.0
>>>
>>>Same as the above machine. Everything seems to be fine with route tables 
>>on
>>>both machine.
>>>
>>>I reached the same stage earlier also by doing whole roofnet 
>>configuration
>>>NOT by your suggested steps. BUt i am kind of struck here. HOW DO I TEST
>>>THAT MY WLAN0 and SRCR interface is working, please let me know.
>>>
>>>Thanx for help anyways,
>>>
>>>Gaurav
>>>
>>>
>>>>From: John Bicket <jbicket at amsterdam.lcs.mit.edu>
>>>>To: gaurav dawra <openapproject at hotmail.com>
>>>>CC: click at amsterdam.lcs.mit.edu
>>>>Subject: Re: [Click] Simple Authenticator:"Click" element Class
>>>>Date: Tue, 29 Jun 2004 13:52:35 -0400
>>>>
>>>>Hi Gaurav,
>>>>
>>>>There were a few changes that I just checked in.
>>>>Try a cvs up -dP  and recompile and then try again.
>>>>
>>>>--john
>>>>
>>>>
>>>>gaurav dawra [openapproject at hotmail.com] wrote:
>>>>>Thanx for the help John!!
>>>>>
>>>>>Here is one error which i cud not able to understand. FIRST i cud not
>>>>able
>>>>>to find the prism2_param script , SO used being provided with "roofnet
>>>>>distribution" in /home/roofnet/bin/ made  a small change to script in
>>>>line
>>>>>:85
>>>>>
>>>>>if ($dev =~ /wlan/) {
>>>>># JUST GAVE THE PATH TO THE prism2_param directory
>>>>>   system "/home/roofnet/bin/prism2_param $dev pseudo_ibss 1"; # line 
>>85
>>>>>
>>>>>   system "iwconfig $dev essid $ssid";
>>>>>   system "iwconfig $dev rts off";
>>>>>   system "iwconfig $dev retries 8";
>>>>>   #system "iwconfig $dev txpower 23";
>>>>># HOSTAP does not support SET TX POWER MODE
>>>>>}
>>>>>
>>>>>
>>>>>EXECUTED THIS COMMAND:
>>>>>[root at openap conf]# ./gen_config_roofnet.pl --dev "wlan0" > 
>>/click/config
>>>>>[root at openap conf]#
>>>>>DONE but an ERROR
>>>>>
>>>>>[root at openap conf]# more /click/errors
>>>>>line 3: While configuring 'rates :: AvailableRates':
>>>>> error param DEFAULT 2 4 11 22: must start with ethernet address
>>>>>Router could not be initialized!
>>>>>---------------------------------------------------------------------
>>>>>'dmesg' gives me this :
>>>>>wifi0: LinkStatus=2 (Disconnected)
>>>>>wifi0: LinkStatus: BSSID=00:00:00:00:00:00
>>>>>wifi0: LinkStatus=2 (Disconnected)
>>>>>wifi0: LinkStatus: BSSID=00:00:00:00:00:00
>>>>>line 3: While configuring 'rates :: AvailableRates':
>>>>> error param DEFAULT 2 4 11 22: must start with ethernet address
>>>>>Router could not be initialized!
>>>>>chatter: txf :: WifiTXFeedback: couldn't cleanup - 1886544160 !!!
>>>>>----------------------------------------------------------------------
>>>>>
>>>>>Any Ideas? I have never seen this error before. Is your script giving
>>>>this
>>>>>error?
>>>>>
>>>>>Thanx,
>>>>>
>>>>>Gaurav
>>>>>
>>>>>
>>>>>
>>>>>>From: John Bicket <jbicket at amsterdam.lcs.mit.edu>
>>>>>>To: gaurav dawra <openapproject at hotmail.com>
>>>>>>CC: click at amsterdam.lcs.mit.edu
>>>>>>Subject: Re: [Click] Simple Authenticator:"Click" element Class
>>>>>>Date: Tue, 29 Jun 2004 11:34:03 -0400
>>>>>>
>>>>>>
>>>>>>Try "gen_config_roofnet.pl" instead of "get_config_roofnet". There
>>>>>>was a typo in the instructions.
>>>>>>
>>>>>>
>>>>>>--john
>>>>>>
>>>>>>gaurav dawra [openapproject at hotmail.com] wrote:
>>>>>>>Thanx John For the Quick Reply.
>>>>>>>
>>>>>>>Here is the command which i executed, i should have mentioned the
>>>>command
>>>>>>>and error at first place.
>>>>>>>
>>>>>>>/root/click/conf/get_config_roofnet --wlan0 "wlan0" >/click/config
>>>>>>>bash: /root/click/conf/get_config_roofnet: No such file or directory
>>>>>>>
>>>>>>>No i am using hostap_cs : here is output of my lsmod:
>>>>>>>
>>>>>>>hostap_cs              51188   0  (unused)
>>>>>>>hostap                111048   0  [hostap_cs]
>>>>>>>sr_mod                 18136   0  (autoclean)
>>>>>>>input                   5728   0  (autoclean)
>>>>>>>lp                      9092   0  (autoclean)
>>>>>>>parport                37088   0  (autoclean) [lp]
>>>>>>>ds                      8264   1  [hostap_cs]
>>>>>>>i82365                 38016   1
>>>>>>>
>>>>>>>JUST SHOWING One those matters.
>>>>>>>
>>>>>>>I USED command "gmake" to do compile the CLICK MODULES:
>>>>>>>
>>>>>>>Gaurav
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>From: John Bicket <jbicket at amsterdam.lcs.mit.edu>
>>>>>>>>To: gaurav dawra <openapproject at hotmail.com>
>>>>>>>>CC: click at amsterdam.lcs.mit.edu
>>>>>>>>Subject: Re: [Click] Simple Authenticator:"Click" element Class
>>>>>>>>Date: Tue, 29 Jun 2004 11:09:29 -0400
>>>>>>>>
>>>>>>>>Try replacing "dev" with wlan0, if that device is present after you
>>>>>>>>modprobe hostap_cs. (if you are using a pci card, you might need to
>>>>>>>>modprobe hostap_pci instead).
>>>>>>>>
>>>>>>>>--john
>>>>>>>>
>>>>>>>>gaurav dawra [openapproject at hotmail.com] wrote:
>>>>>>>>>Hi john
>>>>>>>>>
>>>>>>>>>Today i am trying to compile the LINUX MODULE. Again the problem in
>>>>the
>>>>>>>>>last step, yes ! there is a perl file. gen_config_roofnet.pl, but
>>>>after
>>>>>>>>>compiling the whole click module with
>>>>>>>>>
>>>>>>>>>./configure --enable-wifi --with-wifi=/home/madwifi.stripped/
>>>>>>>>>--enable-linuxmodule --with-linux=/usr/src/linux-2.4.20roof
>>>>>>>>>--disable-adaptive --disable-userlevel
>>>>>>>>>
>>>>>>>>>modprobe hostap_cs
>>>>>>>>>modprobe ath_pci ( I BELIEVE I DO NOT REQUIRE THIS,  I am NOT using
>>>>>>>>atheros
>>>>>>>>>based cardbus chipset)
>>>>>>>>>/sbin/insmod CLICKDIR/linuxmodule/proclikefs.o
>>>>>>>>>/sbin/insmod CLICKDIR/linuxmodule/click.o
>>>>>>>>>mkdir -p /click
>>>>>>>>>mount -n -t click none /click
>>>>>>>>>*******CLICKDIR/conf/get_config_roofnet --dev "dev" >
>>>>>>/click/config******
>>>>>>>>>
>>>>>>>>>IT DID NOT AUTOMATICALLY GENERATED get_config_roofnet. So again the
>>>>>>LAST
>>>>>>>>>STEP of your instructions is not complete. Am i doing wrong
>>>>somewhere?
>>>>>>>>>
>>>>>>>>>Are we supposed to generate file by running perl script or will it
>>>>>>>>generate
>>>>>>>>>using "gmake" command after ./configure for CLICK MODULES. Please 
>>let
>>>>>>me
>>>>>>>>>know. I will await for your response.
>>>>>>>>>
>>>>>>>>>Thanx,
>>>>>>>>>
>>>>>>>>>Gaurav
>>>>>>>>>
>>>>>>>>>>From: John Bicket <jbicket at amsterdam.lcs.mit.edu>
>>>>>>>>>>To: gaurav dawra <openapproject at hotmail.com>
>>>>>>>>>>Subject: Re: [Click] Simple Authenticator:"Click" element Class
>>>>>>>>>>Date: Mon, 28 Jun 2004 16:26:31 -0400
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>Hi Gaurav,
>>>>>>>>>>
>>>>>>>>>>I have updated instructions at
>>>>>>>>>>http://www.pdos.lcs.mit.edu/~jbicket/madwifi.stripped/
>>>>>>>>>>about building for roofnet - please let me know if you have 
>>trouble
>>>>>>>>>>with them.
>>>>>>>>>>
>>>>>>>>>>--john
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>John Bicket [jbicket at amsterdam.lcs.mit.edu] wrote:
>>>>>>>>>>>Hi Guarav,
>>>>>>>>>>>
>>>>>>>>>>>SimpleAuthenticator is a click element in the elements/wifi/ap
>>>>>>>>>>>directory. You probably don't want to be using it with a wlan
>>>>device,
>>>>>>>>>>>it only really works with Atheros based chipsets.
>>>>>>>>>>>
>>>>>>>>>>>I am currently working on a howto for building a roofnet
>>>>>>configuration,
>>>>>>>>>>>I will be done in a day or two and will post it.
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>--john
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>gaurav dawra [openapproject at hotmail.com] wrote:
>>>>>>>>>>>>Hi
>>>>>>>>>>>>
>>>>>>>>>>>>I am have question regarding the element class
>>>>>>"SimpleAuthenticator",
>>>>>>>>>>what
>>>>>>>>>>>>is the functionality. Is it defined in the click software or is 
>>it
>>>>>>>>some
>>>>>>>>>>>>"user defined". This might be a question which is not very
>>>>>>appropiate
>>>>>>>>>>but i
>>>>>>>>>>>>just need to know is it being defined in the "click software" or
>>>>>>not.
>>>>>>>>>>>>
>>>>>>>>>>>>I am using a "config" file from roofnet group(uses CLICK as
>>>>routing
>>>>>>>>>>>>software) which defines this element class in their 
>>configuration
>>>>>>>>file.
>>>>>>>>>>>>
>>>>>>>>>>>>pr :: ProbeResponder(INTERVAL 1000,
>>>>>>>>>>>>                      SSID "madwifi",
>>>>>>>>>>>>                      BSSID $mac,
>>>>>>>>>>>>                      CHANNEL 3);
>>>>>>>>>>>>
>>>>>>>>>>>> auth :: SimpleAuthenticator(BSSID $mac);
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> beacon_source -> output;
>>>>>>>>>>>> auth -> output;
>>>>>>>>>>>> ar -> output;
>>>>>>>>>>>> pr -> output;
>>>>>>>>>>>>
>>>>>>>>>>>> management_cl [6] -> Print ("auth") -> auth;
>>>>>>>>>>>>
>>>>>>>>>>>>--------------------------------------------------------------------------------------------
>>>>>>>>>>>>
>>>>>>>>>>>>But if i delete these lines and install click using
>>>>"click-install"
>>>>>>,
>>>>>>>>>>dmesg
>>>>>>>>>>>>gives me this error.
>>>>>>>>>>>>
>>>>>>>>>>>>Dead loop on virtual device wlan0, fix it urgently!
>>>>>>>>>>>>Dead loop on virtual device wlan0, fix it urgently!
>>>>>>>>>>>>---------------------------------------------------------------------------------------------
>>>>>>>>>>>>
>>>>>>>>>>>>I searched hours on internet to fine relevance of  this error, 
>>if
>>>>>>any
>>>>>>>>>>one
>>>>>>>>>>>>came accross same error please suggest what is going wrong.
>>>>>>>>>>>>
>>>>>>>>>>>>[root at localhost roofnet]# iwconfig wlan0
>>>>>>>>>>>>Warning: Driver for device wlan0 has been compiled with version 
>>14
>>>>>>>>>>>>of Wireless Extension, while this program is using version 15.
>>>>>>>>>>>>Some things may be broken...
>>>>>>>>>>>>
>>>>>>>>>>>>wlan0     IEEE 802.11b  ESSID:"roofnet"  Nickname:"localhost"
>>>>>>>>>>>>         Mode:Ad-Hoc  Frequency:2.422GHz  Cell: 
>>00:00:00:00:00:00
>>>>>>>>>>>>         Bit Rate:2Mb/s   Sensitivity=1/3
>>>>>>>>>>>>         Retry limit:8   RTS thr:off   Fragment thr:off
>>>>>>>>>>>>         Encryption key:off
>>>>>>>>>>>>         Power Management:off
>>>>>>>>>>>>         Link Quality:0/70  Signal level:-73 dBm  Noise 
>>level:-73
>>>>>>dBm
>>>>>>>>>>>>         Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid 
>>frag:0
>>>>>>>>>>>>         Tx excessive retries:0  Invalid misc:2   Missed 
>>beacon:0
>>>>>>>>>>>>
>>>>>>>>>>>>-----------------------------------------------------------------------------------------------
>>>>>>>>>>>>I am loading this "configuration" file from roofnet to 
>>understand
>>>>>>>>better
>>>>>>>>>>>>the functionality of "click" routing software. I also tried few
>>>>>>>>>>>>configurations file in CLICKDIR/conf/ directory.They helped to
>>>>>>>>>>understand
>>>>>>>>>>>>the click.Thanx!!
>>>>>>>>>>>>
>>>>>>>>>>>>I am thinking of modifying this configuration file to work for 
>>me.
>>>>>>But
>>>>>>>>i
>>>>>>>>>>>>need to understand basic functionality of click router. I read
>>>>docs
>>>>>>>>on
>>>>>>>>>>>>click router project page and thesis presented by eddie and
>>>>others.
>>>>>>I
>>>>>>>>>>>>understand some asects of this configurations file but need some
>>>>>>help
>>>>>>>>>>with
>>>>>>>>>>>>this one to understand it better. IF needed i can copy the whole
>>>>>>>>>>>>configuration file which i am using.
>>>>>>>>>>>>
>>>>>>>>>>>>Please suggest as it will help to write my own configuration 
>>file
>>>>>>for
>>>>>>>>>>click
>>>>>>>>>>>>router.
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>Thanx,
>>>>>>>>>>>>Gaurav
>>>>>>>>>>>>
>>>>>>>>>>>>_________________________________________________________________
>>>>>>>>>>>>Is your PC infected? Get a FREE online computer virus scan from
>>>>>>>>McAfee?
>>>>>>>>>>>>Security.
>>>>http://clinic.mcafee.com/clinic/ibuy/campaign.asp?cid=3963
>>>>>>>>>>>>
>>>>>>>>>>>>_______________________________________________
>>>>>>>>>>>>click mailing list
>>>>>>>>>>>>click at amsterdam.lcs.mit.edu
>>>>>>>>>>>>https://amsterdam.lcs.mit.edu/mailman/listinfo/click
>>>>>>>>>>>_______________________________________________
>>>>>>>>>>>click mailing list
>>>>>>>>>>>click at amsterdam.lcs.mit.edu
>>>>>>>>>>>https://amsterdam.lcs.mit.edu/mailman/listinfo/click
>>>>>>>>>
>>>>>>>>>_________________________________________________________________
>>>>>>>>>Get fast, reliable Internet access with MSN 9 Dial-up ? now 3 
>>months
>>>>>>>>FREE!
>>>>>>>>>http://join.msn.click-url.com/go/onm00200361ave/direct/01/
>>>>>>>>>
>>>>>>>>>_______________________________________________
>>>>>>>>>click mailing list
>>>>>>>>>click at amsterdam.lcs.mit.edu
>>>>>>>>>https://amsterdam.lcs.mit.edu/mailman/listinfo/click
>>>>>>>
>>>>>>>_________________________________________________________________
>>>>>>>Get fast, reliable Internet access with MSN 9 Dial-up ? now 3 months
>>>>>>FREE!
>>>>>>>http://join.msn.click-url.com/go/onm00200361ave/direct/01/
>>>>>>>
>>>>>>>_______________________________________________
>>>>>>>click mailing list
>>>>>>>click at amsterdam.lcs.mit.edu
>>>>>>>https://amsterdam.lcs.mit.edu/mailman/listinfo/click
>>>>>
>>>>>_________________________________________________________________
>>>>>Get fast, reliable Internet access with MSN 9 Dial-up ? now 3 months
>>>>FREE!
>>>>>http://join.msn.click-url.com/go/onm00200361ave/direct/01/
>>>>>
>>>>>_______________________________________________
>>>>>click mailing list
>>>>>click at amsterdam.lcs.mit.edu
>>>>>https://amsterdam.lcs.mit.edu/mailman/listinfo/click
>>>
>>>_________________________________________________________________
>>>MSN Toolbar provides one-click access to Hotmail from any Web page ? FREE
>>>download! http://toolbar.msn.click-url.com/go/onm00200413ave/direct/01/
>
>_________________________________________________________________
>Get fast, reliable Internet access with MSN 9 Dial-up ? now 2 months FREE!  
>http://join.msn.click-url.com/go/onm00200361ave/direct/01/


More information about the click mailing list