Note: This web page was automatically created from a PalmOS "pedit32" memo.

WDS notes

Linksys WRT54G

35. How can I expand my network (aka repeater) with two wrt54g(s) devices

You can't use a single wrt54g as repeater directly but with 2 equal
devices yout can create a WDS which looks like this:

           / - - - Wireless Clients
DSL-----WRT54G_1- - - - - -WRT54G_2 - - - - - Wireless Clients
        | | | |            | | | |
         4 clients          4 clients

----- Cable link
- - - Wlan link

Both WRT54G's work as Access Points (APs) then and can be accessed via
wlan. One important thing to know is, if you connect to WRT54G_1 you
get the max speed you wlan link provides BUT if you connect to WRT54G_2
the max speed is only the maxspeed/2 because the second device is in a
serial queue. Both devices have to use the same "Wireless Channel".

Concerning security you can use WPA with the same keys on every AP and client.

Here are some commands you should consider useful:

14:42 < jopi> wl wds mac_addreess
14:42 < jopi> ifconfig wds0.X ip address
14:42 < jopi> brctl addif br0 wds0.X
14:43 < jopi> and there you are

One more note: You can use even more devices and cascade them together
so you will be able to overdo a even greater distance.

Some more links:




36. Creating a repeater with 2x WRT54G or WRT54GS

The basic idea of a repeater is just to repeat all signals of a certain
AP. For technical reasons this can NOT be done with a single device
(as far as i know)! Maybe there are some modified images which let
you create a serial I/O queue so that receiving and sending is done
sequentially BUT if so, then the max bandwidth is halved.

To get the full speed you can plug two WRT54G's together (switch port1
to port1). For a good starting point for a configuration and to get some
ideas how to create such a setup have a look at the link below.

- - - - WRT54G_1      WRT54G_2- - - - 
        | | | |        | | | |
            port1 to port1 

----- Cable link
- - - Wlan link


2.3. Wireless Distribution System (WDS) / Repeater / Bridge OpenWrt supports the WDS protocol, which allows a point to point link to be established between two access points. By default, WDS links are added to the br0 bridge, treating them as part of the lan/wifi segment; clients will be able to seemlessly connect through either access point using wireless or the wired lan ports as if they were directly connected. Configuration of WDS is simple, and depends on one of two variables NVRAM Description wl0_lazywds Accept WDS connections from anyone (0:disabled 1:enabled) wl0_wds List of WDS peer mac addresses (xx:xx:xx:xx:xx:xx, space separated) (Note: All APs must be on the same wireless channel and share the same encryption settings) For security reasons, it's recommended that you leave wl0_lazywds off and use wl0_wds to control WDS access to your AP. wl0_wds functions as an access list of peers to accept connections from and peers to try to connect to; the peers will either need the mac address of your AP in their wl0_wds list, or wl0_lazywds enabled. Recent Links (13 visitors) twmn (2 visitors)
From Sveasoft WDS documentation: * WDS_Link #x - This is only to identify your WDS link. The wds0.2 virtual interface is WDS Link #1, the wds0.3 virtual interface is WDS Link #2 and so on... * Mac_Address - This is where you enter the MAC address of the router's wireless interface that you are connecting to. This can be found either through the WEB interface (admin --> STATUS --> Wireless) or by incrementing the last digit of the MAC which is located bottom of the router by 2 (in HEX). * IP_Address - This setting is to configure the ip address for the WDS interface itself. It is recommended to use a different subnet than your local network. * Subnet_Mask - This is the WDS interface netmask for the above ip configuration. The value should be, other values have caused issues with WDS setup. In particular, do not use the same subnet mask as your local network if you are putting your WDS IP addresses in a subset of the subnet of your local network (i.e. If your LAN is network 10.0.0.x/mask don't use,, and mask for WDS., with mask appeared to work in preliminary testing. If you follow the recommendation not to put your WDS and local network within the same subnet, then this note shouldn't even apply to you.) * Default_Gateway - The Default gateway is the machine that you want as the gateway between the local network (LAN) and the other networks (WAN). This is the default route when packets that are not destined for the local network will be sent down for further processing and delivery. It may be left as ('blank) for basic WDS setups. WDS Quick Setup Guide 1. Set up the router's basic settings such as IP address such that they do not conflict with each other. On both routers set the CHANNEL and SECURITY to the same settings (Note that only WEP or no security at all can be used here). The SSID does not have to be the same on both routers. 2. Disable the firewall from the security --> firewall tab as well, and uncheck block WAN requests. 3. Now you are ready to set up the WDS link. We recommend to use different IP addresses than your local network ip range (for example ip range means ip: 192.168.1.x netmask: ; WDS range means ip:10.0.1.{1,2} netmask: ). 4. Now you should type in the other end's MAC address which can be found at the admin --> STATUS --> Wireless tab on the web interface. If both sides are set up properly the WDS link should be established. However, you may need to reboot each router. Now telnet or ssh into each router (assuming you have enabled those features) and type "brctl addif br0 wds0.2" (or if it is not the first wds link then replace wds0.2 with wds0.x, where x means the wds interface + 1). 5. If you did not enable telnet or ssh, go to the admin --> management interface, hit run and in the popup windows type the above command. Note: With Satori pre1 and pre3(original), if you make any configuration change on or reboot the router you will need to re-enter the command 'brctl addif br0 wds0.2' in order to get the WDS working again. Apparantly this requirement is eliminated by using OSPF, or by using later pre3.x versions. WDS/OSPF References: Router #1 (Internet Connection) LAN IP: LAN MASK: LAN Gateway: LAN DHCP enabled starting with and issuing 90 ip's WDS IP: WDS MASK: WDS MAC: Enter the WIRELESS MAC address of router #2 (Status/Wireless Subtab) Router #2 (No WAN Connection - LAN and Wireless Only) LAN IP: LAN MASK: LAN Gateway: LAN DHCP enabled starting with and issuing 90 ip's WDS IP: WDS MASK: WDS MAC: Enter the WIRELESS MAC address of router #1 (Status/Wireless Subtab) Q. Does WDS have a lot of overhead and reduce bandwidth? A. Sveasoft wrote: WDS will halve the throughput as it needs to double transmit the data. 802.11b/g are half duplex which means only one side is transmitting at a time. WDS means double transmissions must take place and effectively halves the bandwidth. hkazemi wrote: This should be true for wireless client PCs connected wirelessly to the second WRT54G. Client PCs connected directly via wired ethernet to the second WRT54G shouldn't see the bandwidth cut in half. Reference: Q. Can I run my WDS links on different subnets in Satori pre3.3? A. Yes...via the shell in pre3.3, probably via the WDS tab in pre3.4 or so: If you want separate subnets in Satori-pre3.3 for your WDS links please add them in the rc_startup script. Code: wl wds none wl wds [MAC 1] [MAC 2] (etc) ip addr [IP 1]/[netmask] dev wds0.2 ip addr [IP 2]/[netmask] dev wds0.3 ... etc ... You will still be able to see the WDS strength in the web interface. You may also want to add "wl wds none" in your rc_shutdown script. Reference:
First, it probably makes sense to set up the new linksys as an access point, unrelated to the old one. I just did "nvram set wl_ssid=Stromberg-family2", followed by "nvram commit" and a reboot, and now I can see both access points on my palm. /\/\/\/\/\/\ Next to get the linksyses on two different IP addresses: root@OpenWrt:/# nvram set lan_ipaddr= root@OpenWrt:/# nvram commit && reboot root@OpenWrt:/# Connection closed by foreign host. Worked well, but required some or all of: route add -net netmask dev eth1 ifconfig eth1 netmask broadcast /\/\/\/\/\/\ Modify second linksys to use same SSID: root@OpenWrt:/# nvram set wl_ssid=Stromberg-family root@OpenWrt:/# nvram commit After this, the two SSID's started blinking in and out of my Wifi browser on my palm /\/\/\/\/\/\ Set the new linksys to use the same wifi channel: Switching to channel 11 (same as on the old one) : root@OpenWrt:~# nvram set wl_channel=11 root@OpenWrt:~# nvram set wl0_channel=11 root@OpenWrt:~# nvram commit /\/\/\/\/\/\ Setting root password to something... rebooting... This automatically shuts off telnetd and turns on sshd /\/\/\/\/\/\ turning on wep: root@OpenWrt:~# nvram set wl_wep=enabled root@OpenWrt:~# nvram set wl0_key=xxxxxxxxxxxxxxxxxxxxxxxxxx root@OpenWrt:~# nvram set wl1_key=xxxxxxxxxxxxxxxxxxxxxxxxxx root@OpenWrt:~# nvram set wl2_key=xxxxxxxxxxxxxxxxxxxxxxxxxx root@OpenWrt:~# nvram set wl3_key=xxxxxxxxxxxxxxxxxxxxxxxxxx root@OpenWrt:~# nvram commit /\/\/\/\/\/\ Attempting to enable WDS with a mac restriction on the new linksys: root@OpenWrt:~# nvram set wl_lazywds=0 root@OpenWrt:~# nvram set wl0_lazywds=0 root@OpenWrt:~# nvram set wl_wds=cdf50D8B0069 /\/\/\/\/\/\ Back to going onto the same subnet. We're repeating, not routing: root@OpenWrt:~# nvram set lan_ipaddr= root@OpenWrt:~# nvram commit && reboot /\/\/\/\/\/\ Mac addresses require colons, and are space separated: root@OpenWrt:~# nvram set wl0_wds=cd:f5:0d:8b:00:69 root@OpenWrt:~# nvram set wl_wds=cd:f5:0d:8b:00:69 root@OpenWrt:~# nvram commit /\/\/\/\/\/\ My old unit has more wds-related variables. It -appears- that there is a variable to enable each mac address in the wl0_wds mac address list, for example. /\/\/\/\/\/\ ping'ing isn't working... I'm finding that the mac addresses that are on the bottom of my linksyses are not the same as the mac address that I see in my wireless browser on my Tungsten C. So I'm going to try the addresses I see on the Tungsten. /\/\/\/\/\/\ Changed the old one to use 192.168.1, not 192.168.2. Not sure why it was using 192.168.2, or even if it really was, but eth1 kept coming up on /\/\/\/\/\/\ Interesting: The new unit is getting a wds0.2 interface created automatically, but the old unit is not. /\/\/\/\/\/\ Got a copy of the "wl" program from Did a "wl wds new-eth" on the old linksys, and suddenly got a wds0.3 interface. :)

Back to Dan's palm memos