Networking – Linksys wrt54gl with Tomato running in client-mode not connecting to Cisco E4200

routingtomatowireless-networkingwrt54gl

I have installed Tomato on my Linksys WRT54GL in an attempt to utilise it in client-mode to connect several wired-only devices to my other wireless router (the Cisco E4200)

My Cisco E4200 is setup on both bands with WPA/WPA2 Mixed mode it's IP address is 192.168.1.1, and has DHCP server enabled for .2/.51

My Linksys WRT54GL has the following configuration:

Tomato Configuration for Linksys WRT54GL in Client-Mode

After saving, I see the following in the logs:

Jan 17 11:16:09 unknown daemon.info udhcpc[18506]: Sending discover...
Jan 17 11:16:12 unknown daemon.info udhcpc[18506]: Sending discover...
Jan 17 11:16:33 unknown daemon.info dnsmasq[18525]: exiting on receipt of SIGTERM
Jan 17 11:16:33 unknown user.notice kernel: klogd: exiting
Jan 17 11:16:33 unknown syslog.info syslogd exiting
Jan 17 11:16:35 unknown syslog.info syslogd started: BusyBox v1.14.4
Jan 17 11:16:35 unknown user.notice kernel: klogd started: BusyBox v1.14.4 (2010-06-27 20:11:16 PDT)
Jan 17 11:16:35 unknown user.info kernel: br0: port 1(vlan0) entering disabled state
Jan 17 11:16:35 unknown user.info kernel: vlan0: dev_set_promiscuity(master, 1)
Jan 17 11:16:35 unknown user.info kernel: br0: port 1(vlan0) entering disabled state
Jan 17 11:16:35 unknown user.info kernel: device vlan0 left promiscuous mode
Jan 17 11:16:35 unknown user.info kernel: br0: port 1(vlan0) entering learning state
Jan 17 11:16:35 unknown user.info kernel: br0: port 1(vlan0) entering forwarding state
Jan 17 11:16:35 unknown user.info kernel: br0: topology change detected, propagating
Jan 17 11:16:36 unknown daemon.info dnsmasq[27191]: started, version 2.55 cachesize 150
Jan 17 11:16:36 unknown daemon.info dnsmasq[27191]: compile time options: no-IPv6 GNU-getopt no-RTC no-DBus no-I18N DHCP no-scripts no-TFTP
Jan 17 11:16:36 unknown daemon.info dnsmasq-dhcp[27191]: DHCP, IP range 192.168.1.151 -- 192.168.1.200, lease time 1d
Jan 17 11:16:36 unknown daemon.warn dnsmasq[27191]: no servers found in /etc/resolv.dnsmasq, will retry
Jan 17 11:16:36 unknown daemon.info dnsmasq[27191]: read /etc/hosts - 0 addresses
Jan 17 11:16:36 unknown daemon.info dnsmasq[27191]: read /etc/hosts.dnsmasq - 1 addresses
Jan 17 11:16:36 unknown user.info init[1]: Linksys WRT54G/GS/GL
Jan 17 11:16:36 unknown cron.err crond[27197]: crond (busybox 1.14.4) started, log level 8
Jan 17 11:16:38 unknown daemon.info udhcpc[27172]: Sending discover...
Jan 17 11:16:41 unknown daemon.info udhcpc[27172]: Sending discover...
Jan 17 11:16:44 unknown daemon.info udhcpc[27172]: Sending discover...

Ordinarily I would just continually see the following in the logs over and over again:

Jan 17 11:16:44 unknown daemon.info udhcpc[27172]: Sending discover...

The Linksys WRT54GL does see the other router when I scan, the Channel I have the Linksys WRT54GL set to is "channel 1", the same as the Cisco E4200.

At this point I'm at a loss, can anyone see something blatant I'm missing?

Cheers!

Best Answer

This seems to be a common confusion: Wireless client mode means your router is working as a full-fledged router, except it is connecting to upstream via a wireless connection, not an ethernet one. Thus you cannot use your router as a wireless AP: its wifi is used to connect it to upstream, not downstream. Also, the Tomato router clients do not belong to the same LAN as the upstream router, in your case the Cisco E4200.

Many people seem to confuse this with bridge repeater mode. In this mode, your tomato router does not work as a router, just as a bridge that relays the communications of its ethernet clients via wifi to the upstream router: the ethernet clients and the primary router, as well as the Tomato router, belong to the same LAN.

Using the above distinction it is easy to see your error: you are using the same network (192.168.1.0/24) for both the upstream LAN and the downstream one, while isntead you are trying to use the Tomato router in the Wireless client mode.

Easy solution: change the LAN side network of the Tomato router to something very different, say 192.168.99.0/24, both in the LAN settings and in the settings of the DHCP server. This should cure your issues.

It is rather clear that any program finding out that WAN and LAN belong to the same network (192.168.1.0/24 in your case) will be utterly confused.

You may have to reboot for the changes to take effect.

EDIT:

since you have now made clear that you are interested in placing all of your machines in the same LAN network, I have to clarify that Tomato firmware does not allow this, since it has n support for bridge repeater mode. You can obtain such functionality instead either in DD-WRT (see the man page here) or in TomatoUSB, which is

an alternative Linux-based firmware for powering Broadcom-based ethernet routers

Yours is one such router, so that it is fully supported by TomatoUSB, see the table in this page. It has several improvements over pure Tomato, so that you may find it altogether advantageous to switch to it, even apart from your specific query.

You can find a good introduction to setting up a TomatoUSB-powered router in Bridge Repeater mode here, and you can even find a YouTube video to guide you in the process.

At any rate, it is very very simple:

first, using the Web GUI of your Linksys wrt54gl router in TomatoUSB, set up your only interface (it will be a bridge called br0) to have a static IP address, belonging to the same network of your primary router (thus 192.168.1.0/24) but outside the range of the primary router's DHCP server, so that no conflicts may arise.

Then go to the Wireless setup page, enable wireless, choose in the drop-down menu the operating mode Wireless Ethernet Bridge, and then insert the name and password of your primary router's Wireless network. Save and wait 10 seconds, or reboot your Linksys wrt54gl.

That's it.

Related Question