DD-WRT works on RE1000 but...

Post new topic   Reply to topic    DD-WRT Forum Index -> Broadcom SoC based Hardware
Author Message
ElPaco
DD-WRT Novice


Joined: 14 May 2012
Posts: 17

PostPosted: Mon May 14, 2012 21:54    Post subject: DD-WRT works on RE1000 but... Reply with quote
I got recently a Cisco/Linksys RE1000.

Warning: this is NOT a Linksys E1000, it is another product.

Characteristics:

FCCID: Q87-RE1000

http://www.wikidevi.com/wiki/Linksys_RE1000

In case you want to see some pictures click here (in Spanish):

http://www.redeszone.net/puntos-de-acceso-ap/cisco-linksys-re1000-analisis-de-este-repetidor-wi-fi-n-a-300mbps-con-puerto-ethernet-a-100mbps/

CPU: BCM5357B0KFBG
1 x physical wired Ethernet port. (Yes, just one)
WiFi N (2.4GHz)
4 Mb flash
32 Mb RAM

The thing is marketed as a ethernet-to-wifi bridge plus range extender.


After messing with it for a while, I decided to install dd-wrt on it. These are my findings:

* You can enter management mode by holding the reset button before powering up the device, and holding it during 30 seconds after power-up. Then the cisco logo starts to blink and you can browse a minimal web page to upload a firmware at 192.168.1.1 through the wired port. I recovered it from a soft-brick a number of times with this method.

* If you try to upload/flash dd-wrt as-is the RE1000 rejects the file. What I did was to change the first 4 bytes of the dd-wrt .bin buildfile to "RE1K". Any hex editor can serve to it, I used GHex. That way the .bin is accepted. This is only needed the first time, when you want to "kill" a Linksys firmware.

* The first build I successfully installed on the RE1000 was dd-wrt.v24-17201_NEWD-2_K2.6_mini_e1000v2.bin (after changing the first 4 bytes as explained above). I chose it because Linksys E1000v2 seemed to me the router with the most similar Hw to the RE1000.

* Then after rebooting you can connect to SSID: dd-wrt and access the dd-wrt web gui wirelessly only. I had to use Chromium, Firefox did weird things.

* I did not manage to make the wired ethernet port run, ever. Except with stock firmwares and/or management mode. I messed around a lot with the web gui without success.

* You can manage the thing via telnet (wirelessly). I tried to activate the wired port with

ifconfig device 192.168.2.1 netmask 255.255.255.0 up

where device can be any from the list obtained with

ifconfig -a

I was not able make it answer to pings in any case.

* Just in case, I upgraded the firmware to a more modern dd-wrt build, in this case a generic broadcom build:

dd-wrt.v24-18777_NEWD-2_K2.6_mini.bin

However, everything was exactly the same as with the previous 17201 build.

In case someone finds this of interest, here is a dump of dmesg and ifconfig -a commands:

dmesg:

Code:

Linux version 2.6.24.111 (eko@dd-wrt) (gcc version 4.1.2) #3255 Sat Apr 7 13:35:16 CEST 2012
CPU revision is: 00019749
Found a 4MB ST compatible serial flash
Determined physical RAM map:
 memory: 02000000 @ 00000000 (usable)
Entering add_active_range(0, 0, 8192) 0 entries of 256 used
Zone PFN ranges:
  Normal          0 ->     8192
  HighMem      8192 ->     8192
Movable zone start PFN for each node
early_node_map[1] active PFN ranges
    0:        0 ->     8192
On node 0 totalpages: 8192
  Normal zone: 0 pages used for memmap
  Normal zone: 0 pages reserved
  Normal zone: 8192 pages, LIFO batch:1
  HighMem zone: 0 pages used for memmap
  Movable zone: 0 pages used for memmap
Built 1 zonelists in Zone order.  Total pages: 8192
Kernel command line: console=ttyS0,115200 root=1f02 rootfstype=squashfs noinitrd
Primary instruction cache 32kB, physically tagged, 4-way, linesize 32 bytes.
Primary data cache 32kB, 4-way, linesize 32 bytes.
Synthesized TLB refill handler (20 instructions).
Synthesized TLB load handler fastpath (32 instructions).
Synthesized TLB store handler fastpath (32 instructions).
Synthesized TLB modify handler fastpath (31 instructions).
PID hash table entries: 256 (order: 8, 1024 bytes)
CPU: BCM5357 rev 1 at 300 MHz
Using 150.000 MHz high precision timer.
console [ttyS0] enabled
Dentry cache hash table entries: 4096 (order: 2, 16384 bytes)
Inode-cache hash table entries: 2048 (order: 1, 8192 bytes)
Memory: 25956k/32768k available (3522k kernel code, 6796k reserved, 1373k data, 188k init, 0k highmem)
Calibrating delay loop... 149.91 BogoMIPS (lpj=749568)
Mount-cache hash table entries: 512
NET: Registered protocol family 16
Generic PHY: Registered new driver
PCI: no core
PCI: no core
PCI: Fixing up bus 0
NET: Registered protocol family 2
Time: MIPS clocksource has been installed.
IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
TCP established hash table entries: 1024 (order: 1, 8192 bytes)
TCP bind hash table entries: 1024 (order: 0, 4096 bytes)
TCP: Hash tables configured (established 1024 bind 1024)
TCP reno registered
devfs: 2004-01-31 Richard Gooch (rgooch@atnf.csiro.au)
devfs: boot_options: 0x1
squashfs: version 3.0 (2006/03/15) Phillip Lougher
io scheduler noop registered
io scheduler deadline registered (default)
HDLC line discipline: version $Revision: 4.8 $, maxframe=4096
N_HDLC line discipline registered.
Serial: 8250/16550 driver $Revision: 1.90 $ 4 ports, IRQ sharing disabled
serial8250: ttyS0 at MMIO 0x0 (irq = 8) is a 16550A
PPP generic driver version 2.4.2
PPP Deflate Compression module registered
PPP BSD Compression module registered
MPPE/MPPC encryption/compression module registered
NET: Registered protocol family 24
PPPoL2TP kernel driver, V1.0
tun: Universal TUN/TAP device driver, 1.6
tun: (C) 1999-2004 Max Krasnyansky <maxk@qualcomm.com>
et_module_init: passivemode set to 0x0
PCI: Setting latency timer of device 0000:00:02.0 to 64
eth0: Broadcom BCM47XX 10/100/1000 Mbps Ethernet Controller 5.100.138.9
PCI: Setting latency timer of device 0000:00:01.0 to 64
pflash: found no supported devices
bootloader size: 262144
nvram size: 32768
sflash: Filesystem type: squashfs, size=0x1f7fbe
partition size = 2102272
Creating 5 MTD partitions on "sflash":
0x00000000-0x00040000 : "cfe"
0x00040000-0x003f0000 : "linux"
0x0019ec00-0x003a0000 : "rootfs"
mtd: partition "rootfs" doesn't start on an erase block boundary -- force read-only
0x003f0000-0x00400000 : "nvram"
0x003a0000-0x003f0000 : "ddwrt"
Broadcom Watchdog Timer: 0.07 initialized.
u32 classifier
    Actions configured
Netfilter messages via NETLINK v0.30.
nf_conntrack version 0.5.0 (1024 buckets, 4096 max)
ctnetlink v0.93: registering with nfnetlink.
IPv4 over IPv4 tunneling driver
GRE over IPv4 tunneling driver
ip_tables: (C) 2000-2006 Netfilter Core Team
ClusterIP Version 0.8 loaded successfully
TCP bic registered
TCP cubic registered
TCP westwood registered
TCP highspeed registered
TCP hybla registered
TCP htcp registered
TCP vegas registered
TCP scalable registered
NET: Registered protocol family 1
NET: Registered protocol family 17
Welcome to PF_RING 3.2.1
(C) 2004-06 L.Deri <deri@ntop.org>
NET: Registered protocol family 27
PF_RING: bucket length    128 bytes
PF_RING: ring slots       4096
PF_RING: sample rate      1 [1=no sampling]
PF_RING: capture TX       No [RX only]
PF_RING: transparent mode Yes
PF_RING initialized correctly.
PF_RING: registered /proc/net/pf_ring/
802.1Q VLAN Support v1.8 Ben Greear <greearb@candelatech.com>
All bugs added by David S. Miller <davem@redhat.com>
decode 1f02
VFS: Mounted root (squashfs filesystem) readonly.
Mounted devfs on /dev
Freeing unused kernel memory: 188k freed
roboswitch: Probing device eth0: found a 5325!
br0: Dropping NETIF_F_UFO since no NETIF_F_HW_CSUM feature.
device vlan0 entered promiscuous mode
device eth0 entered promiscuous mode
br0: port 1(vlan0) entering learning state
device eth1 entered promiscuous mode
br0: port 2(eth1) entering learning state
device vlan1 entered promiscuous mode
device vlan1 left promiscuous mode
br0: topology change detected, propagating
br0: port 1(vlan0) entering forwarding state
br0: topology change detected, propagating
br0: port 2(eth1) entering forwarding state
device vlan0 left promiscuous mode
br0: port 1(vlan0) entering disabled state
device eth1 left promiscuous mode
br0: port 2(eth1) entering disabled state
br0: Dropping NETIF_F_UFO since no NETIF_F_HW_CSUM feature.
device vlan0 entered promiscuous mode
br0: port 1(vlan0) entering learning state
device eth1 entered promiscuous mode
br0: port 2(eth1) entering learning state
device vlan1 entered promiscuous mode
device vlan1 left promiscuous mode
br0: topology change detected, propagating
br0: port 1(vlan0) entering forwarding state
br0: topology change detected, propagating
br0: port 2(eth1) entering forwarding state
device vlan1 entered promiscuous mode
device vlan1 left promiscuous mode


ifconfig -a:


Code:

br0       Link encap:Ethernet  HWaddr 58:6D:8F:E0:B1:78 
          inet addr:192.168.1.1  Bcast:192.168.1.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:2280 errors:0 dropped:0 overruns:0 frame:0
          TX packets:2320 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:199632 (194.9 KiB)  TX bytes:1006889 (983.2 KiB)

br0:0     Link encap:Ethernet  HWaddr 58:6D:8F:E0:B1:78 
          inet addr:169.254.255.1  Bcast:169.254.255.255  Mask:255.255.0.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1

eth0      Link encap:Ethernet  HWaddr 58:6D:8F:E0:B1:78 
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:157 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:29814 (29.1 KiB)
          Interrupt:4 Base address:0x2000

eth1      Link encap:Ethernet  HWaddr 58:6D:8F:E0:B1:7A 
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:4061 errors:0 dropped:0 overruns:0 frame:5030
          TX packets:4343 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:388010 (378.9 KiB)  TX bytes:2756273 (2.6 MiB)
          Interrupt:3 Base address:0x1000

gre0      Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-10-00-00-00-00-00-00-00-00 
          NOARP  MTU:1476  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:0
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

lo        Link encap:Local Loopback 
          inet addr:127.0.0.1  Mask:255.0.0.0
          UP LOOPBACK RUNNING MULTICAST  MTU:16436  Metric:1
          RX packets:34 errors:0 dropped:0 overruns:0 frame:0
          TX packets:34 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:3148 (3.0 KiB)  TX bytes:3148 (3.0 KiB)

teql0     Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00 
          NOARP  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)

tunl0     Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00 
          NOARP  MTU:1480  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:0
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

vlan0     Link encap:Ethernet  HWaddr 58:6D:8F:E0:B1:78 
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:96 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:0 (0.0 B)  TX bytes:9806 (9.5 KiB)

vlan1     Link encap:Ethernet  HWaddr 58:6D:8F:E0:B1:79 
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:61 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:0 (0.0 B)  TX bytes:20008 (19.5 KiB)

vlan2     Link encap:Ethernet  HWaddr 58:6D:8F:E0:B1:78 
          BROADCAST 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:0
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)


Any advice on how to make the wired port work?
Sponsor
ElPaco
DD-WRT Novice


Joined: 14 May 2012
Posts: 17

PostPosted: Mon May 14, 2012 22:59    Post subject: Reply with quote
Good suggestion. Let's see where it takes...

It does not matter if I brick the device, I already bricked it several times. I can always resort to management mode to unbrick it.
ElPaco
DD-WRT Novice


Joined: 14 May 2012
Posts: 17

PostPosted: Tue May 15, 2012 17:32    Post subject: Reply with quote
Under Setup -> Networking I assigned all eth0, eth1, vlan0, vlan1 and vlan2 to the same bridge br0.

The idea is that if I bridge all interfaces together I should be able to reach the working one (WiFi) via the non-working one (RJ-45).

It did not work.

Under "Port Setup" in the same page I get "WAN Port assignment" as "vlan1" by default.

I changed it as well to vlan0, vlan2 and br0. Changing it to br0 bricked the device.

I tried many combinations anyway.

It was easy to debrick: 30 secs reset after power-up, then browse (through the RJ45!) the management mode page, and click on "Reset NVRAM to default values". That easy.

Is anybody able to help? This is a new device, and it is almost working. I think that the only RJ-45 available is equivalent to the WAN port of other models, as rizla7 suggests, so it should be easy to fully support this thing.
ElPaco
DD-WRT Novice


Joined: 14 May 2012
Posts: 17

PostPosted: Tue May 15, 2012 18:00    Post subject: Reply with quote
Yes, I too tried exactly what you suggest. Check the attached browser capture, taken right before clicking on "Apply Settings".

vlan0 and eth1 are assigned to br0 by default.

I also tried to assign WAN port to "disabled" but, whenever I do it, it automatically reverts to "vlan1".

I do not think I have to worry about messing with the port settings, because the recovery management mode is built into the CFE (or so I believe).



Test 1.png
 Description:
Browser screen capture before clicking on "Apply Settings"
 Filesize:  95.93 KB
 Viewed:  41836 Time(s)

Test 1.png


ElPaco
DD-WRT Novice


Joined: 14 May 2012
Posts: 17

PostPosted: Tue May 15, 2012 18:34    Post subject: Reply with quote
Here you are:

root@DD-WRT:/# nvram show | grep vlan.*ports
vlan2ports=0 5
vlan0ports=1 2 3 4 5*
vlan1ports=1 2 3 4 5*
size: 19059 bytes (13709 left)
root@DD-WRT:/# nvram show | grep port.*vlan
port5vlans=1 2 16
port3vlans=1
port1vlans=1
port4vlans=1
port2vlans=1
port0vlans=2
size: 19059 bytes (13709 left)

I will try nvram set vlan2ports="5". With or without assigning vlan1 to br0?
ElPaco
DD-WRT Novice


Joined: 14 May 2012
Posts: 17

PostPosted: Tue May 15, 2012 18:55    Post subject: Reply with quote
I will try it right away.

From the reference document:

Quote:
For 100mbps routers the variable vlan0ports is the VLAN for LAN ports while vlan1ports is for the WAN ports. For gigabit routers the variable vlan1ports is the VLAN for LAN ports while vlan2ports is for the WAN ports.


In the examples it also lists outputs with either (vlan0 and vlan1) or (vlan1 and vlan2), but the RE1000 seems to have three vlans (0, 1 and 2).

Quote:
The CPU internal port must be included on any VLAN that must be visible to the CPU. The asterisk (*) signifies that the VLAN it is attached to is the default VLAN (only put this in one VLAN). If the switch receives a packet on the CPU internal port that is not tagged then it is put into the VLAN where the * is configured; always make sure this is the LAN VLAN.


This is interesting, because I get the asterisk on both vlan0 and vlan1. It says it should appear only on one.

How can I erase one vlan? Then I could set nvram along the given examples.
ElPaco
DD-WRT Novice


Joined: 14 May 2012
Posts: 17

PostPosted: Tue May 15, 2012 19:28    Post subject: Reply with quote
Ok, I tried most of your suggestions.

Under Setup->Advanced Routing I set the mode to "Router".

I disabled SPI firewall.

I did not find any "Assign wan port to switch", neither after setting "Router" under Advanced Routing, so I unchecked port W under VLAN tab.

It did not work in any of these steps.

Before and after unchecking port W under VLAN tab, I got the following:

Before:
Code:
root@DD-WRT:~# nvram show | grep vlan.*ports
vlan2ports=0 5
vlan0ports=1 2 3 4 5*
vlan1ports=1 2 3 4 5*
size: 19045 bytes (13723 left)
root@DD-WRT:~# nvram show | grep port.*vlans
port5vlans=1 2 16
port3vlans=1
port1vlans=1
port4vlans=1
port2vlans=1
port0vlans=2
size: 19045 bytes (13723 left)


After:
Code:
root@DD-WRT:~# nvram show | grep vlan.*ports
vlan2ports=0 5
vlan0ports=1 2 3 4 5*
vlan1ports=1 2 3 4 5*
size: 19093 bytes (13675 left)
root@DD-WRT:~# nvram show | grep port.*vlans
port5vlans=1 16
port3vlans=1 18 19
port1vlans=1 18 19
port4vlans=1 18 19
port2vlans=1 18 19
port0vlans=18 19
size: 19093 bytes (13675 left)


Should it not be vlan2ports="5" instead of "0 5"? There seems to be an inconsistency between vlan2ports and port0vlans after unchecking port W under VLAN tab.

I am assuming that port0 is GUI's W port.
ElPaco
DD-WRT Novice


Joined: 14 May 2012
Posts: 17

PostPosted: Tue May 15, 2012 20:06    Post subject: Reply with quote
OK, these are my findings:

In order to get the "Assign WAN Port to Switch" checkbox you need to set WAN Connection Type to "Disabled". It is not enough with setting to "Router" under Advanced Routing tab.

I did the following:

1) Reset NVRAM (via Linksys management mode) and restart.
2) Set "Router" under "Advanced Routing". Apply Settings.
3) Disable SPI firewall. Apply Settings.
4) Under Basic Setup, WAN Connection Type set to "Disabled" and Assign WAN Port to Switch CHECKED. Then Apply Settings.
5) NVRAM contents AFTER THAT:
Code:
root@DD-WRT:~# nvram show | grep vlan.*ports
vlan2ports=0 5
vlan0ports=1 2 3 4 5*
vlan1ports=1 2 3 4 5*
size: 19251 bytes (13517 left)
root@DD-WRT:~# nvram show | grep port.*vlans
port5vlans=1 2 16
port3vlans=1
port1vlans=1
port4vlans=1
port2vlans=1
port0vlans=2
size: 19251 bytes (13517 left)


It seems that NVRAM does not get updated by means of the GUI.

I will try via telnet.



Assign WAN Port to Switch.png
 Description:
"Assign WAN Port to Switch" appears only when "WAN Connection Type" is set to "Disabled"
 Filesize:  119.74 KB
 Viewed:  41761 Time(s)

Assign WAN Port to Switch.png


ElPaco
DD-WRT Novice


Joined: 14 May 2012
Posts: 17

PostPosted: Thu May 17, 2012 19:00    Post subject: Reply with quote
I made it work!

Now I can access the web GUI via the wired ethernet port.

rizla7: your comments turned out to be essential, you pointed me immediately to the root of the problem. It turned out the only available wired port was number 2 for the nvram set vlan?ports command.

I will be away for a couple of days, I will post a detailed explanation with my findings after I had done a more thorough investigation. I made several changes until it worked (vlan2 removal, changes to vlan0ports and vlan1ports, change to an older build...), so I have still a hard work ahead to isolate the causes.
blanx
DD-WRT Novice


Joined: 18 May 2012
Posts: 1

PostPosted: Fri May 18, 2012 17:28    Post subject: Reply with quote
Hi,

Can you please share your settings and build? I tried but i cannot reach via wired ethernet.

Thanks.
ElPaco
DD-WRT Novice


Joined: 14 May 2012
Posts: 17

PostPosted: Tue May 22, 2012 20:58    Post subject: Reply with quote
I made a summary of my findings so far in

www.dd-wrt.com/phpBB2/viewtopic.php?p=688763
Display posts from previous:    Page 1 of 1
Post new topic   Reply to topic    DD-WRT Forum Index -> Broadcom SoC based Hardware All times are GMT

Navigation

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You can attach files in this forum
You can download files in this forum