keywords: Motorola WR850G Tomato MAC 001122334456 This is a troubleshooting tale, based on my recent experience resolving a bizarre situation with Tomato firmware running on a Motorola WR850G. I'm posting it here in case my findings can help others solve a similar problem. Situation: My brother needed a small WiFi router for his place in Florida. I happened to have an unused Moto WR850G (similar to the venerable Linksys WRT54GL), so I flashed it with Toastman 1.28.7633.3 IPT-ND STD, configured it, and sent it to him. It's a plain-vanilla setup: - DHCP on the WAN, connected to a Moto Surfboard cable modem (Comcast is his ISP). - DNS configured to use OpenDNS instead of Comcast's DNS. - DHCP enabled on the LAN: 192.168.1.0/24 - a DDNS service configured, (so I could locate its public IP). - remote admin access enabled, with https:// on port 443 (so I could log in and admin it) - SSH enabled on port 2323 Once it was configured, I tested the router to verify everything worked as expected, and shipped it to him. He plugged it in behind his cable modem, power cycled the modem, and tried to connect to the internet from his LAN-connected PC. Nothing. He rebooted a few times. Cursed the gods of technology. He then phoned me (in Canada), and I spent two hours on the phone with him trying to figure out what was going on. Here are the symptoms: - the Tomato GUI was working fine. - Tomato had issued a DHCP request to Comcast and received a response. Displayed on the Overview page was a legitimate Comcast public IP address, subnet, and gateway. - his LAN-connected PC could obtain an IP lease for 192.168.1.200 from Tomato - Tomato was unable to retrieve the current time. (i.e. requests to NTP failed). - the DDNS update failed, with 'unknown error -1'. - using the ping tool (Tools/System), it couldn't ping common web servers such as google.com, yahoo.com, amazon. com. - pings to 22.214.171.124 or 126.96.36.199 failed (Google's DNS servers). - pings to 188.8.131.52 failed. That's the IP of the Comcast gateway assigned to Tomato by DHCP, as displayed on the Status/Overview page. This is the first hop between Tomato and the rest of the internet. If Tomato can't connect to it, it's not going to connect to anything else on the internet. - there were no error messages of note in the Tomato logs. I was troubleshooting this remotely, thousands of miles away. I tried to log in to Tomato at its public IP address (as displayed on the Status page) on port 443. No response. I tried to open an SSH session to port 2323. No response. I tried pinging its public IP address. It responded!! This last finding was extremely troubling. Like most router gateways, Tomato firmware doesn't respond to ping (ICMP traffic) on their WAN interface. I had my brother examine the Tomato firewall settings -- "Respond to ICMP ping" was disabled. Yet the router was happily responding to pings from my remote PC. After two hours of troubleshooting trying various things, I was about to give up and tell my brother to go buy an inexpensive wireless router at Best Buy. At this point, he mentioned in passing that the MAC address displayed on the Overview page seemed odd: 00:11:22:33:44:56. I've never observed such a MAC before. It certainly wasn't a legitimate MAC from the range assigned to Motorola. (00-11-22 is assigned to Cimsys, a Korean manufacturer). I had him examine the sticker on the bottom of the WR850G, find the MAC it shipped with, and got him to enter that as an override for the WAN port (in Advanced/MAC address). He saved the Tomato settings, power-cycled the cable modem, then power-cycled the WR850G. That's all it took to fix it. When Tomato restarted, it obtained from Comcast a completely different public IP (184.108.40.206), and a corresponding (completely different) gateway address. Tomato was now fully on-line: NTP worked, DDNS worked, DNS lookups worked, pings worked, and my brother's LAN was now connected to the internet. Success!! My subsequent research on this website and elsewhere indicates that Motorola stored the 'factory' MAC addresses (WAN, LAN and WiFi) for the WR850G in a different location that most other router platforms. I surmise that at boot time, the Tomato firmware goes looking for the vendor's MAC settings, can't find them, and so assigns these defaults: 00:11:22:33:44:55 for LAN interface, …:56 for WAN, and …:57 for WiFi. It's a mystery (to me) why Comcast would assign a different public IP address and gateway based on the router's MAC. It's a mystery why the behavior of the Tomato firmware was so totally messed up when the WAN MAC was 00:11:22:33:44:56. The fact that Tomato's WAN port was responding to pings even though the Firewall settings disabled ICMP is extremely odd. In any event, the lesson from this is if you ever notice your Tomato WAN interface has a MAC of 00:11:22:33:44:56, something is amiss. Solution Part 2: In addition to overriding the 'default' WAN MAC through the GUI, I guided my brother to also change the MAC stored in nvram in variable et1macaddr to the legitimate Moto-assigned MAC. Even though he had entered the new MAC through the GUI, I observed that this variable still held 00:11:22:33:44:56. Seemed a good idea to get rid of it completely. nvram set et1macaddr=Moto:mac:here End of story. Hope this might help someone else someday.