Tags


OpenWrt on the DG834Gv4 modem router

First written on April 19, 2018

Overview

The DG834Gv4 is an old Netgear WiFi modem/router and has been my first wireless access point. Years have passed and this hardware shows signs of its age. It is compliant to 802.11 b/g only and has 100 Mbps ethernet ports . Also, when using it as a DSL modem, it sometimes disconnects because of the heat it generates. It was time to decommission it.

In the meantime someone discovered a nice backdoor feature in a series of modem/routers, including the DG834Gv4. One more reason not to use it as-is.

After the router collected some dust, I evaluated some options such as installing OpenWrt or the DGTeam firmwares. I went with the DGTeam firmware at first because it had modem support. This meant I could use it as a spare modem.

A few weeks ago, however, I tried installing OpenWrt and it wasn’t so straight forward as I thought.

Steps

Network and device configuration

root@OpenWrt:~# cat /etc/config/wireless
config wifi-device  radio0
    option type     'mac80211'
    option macaddr  '<router_s MAC address here>'
    option hwmode   '11g'
    option channel '<channel>'
    option country '<region>'
    option txpower '20'

    # REMOVE THIS LINE TO ENABLE WIFI:
    option disabled '0'

config wifi-iface
    option device   'radio0'
    option network  'lan'
    option mode     'ap'
    option encryption    'psk2+aes'
    option key      '<your key here>'
    option ssid     '<your SSID here>'

root@OpenWrt:~# cat /etc/config/network

config interface 'loopback'
    option ifname 'lo'
    option proto 'static'
    option ipaddr '127.0.0.1'
    option netmask '255.0.0.0'

config interface 'lan'
    option ifname 'eth0'
    option type 'bridge'
    option proto 'static'
    option ipaddr '<router_s address>'
    option netmask '<router_s netmask>'
/etc/init.d/dnsmasq stop
/etc/init.d/dnsmasq disable

Problems

There is not enough memory to install anything even after killing several processes.

  route add default gateway 192.168.1.1 netmask 0.0.0.0 metric 0
  echo "nameserver 8.8.8.8" > /etc/resolv.conf

  root@OpenWrt:~# opkg install sshfs
    Installing sshfs (2.2-1) to root...
    Downloading http://downloads.openwrt.org/attitude_adjustment/12.09/brcm63xx/generic/packages/sshfs_2.2-1_brcm63xx.ipk.
    Collected errors:
       * gz_open: fork: Cannot allocate memory.
       * opkg_install_pkg: Failed to unpack control files from /tmp/opkg-Ry3bvT/sshfs_2.2-1_brcm63xx.ipk.
       * opkg_install_cmd: Cannot install package sshfs.

For some reason, WiFi seems less powerful (as in range) than it should be. This is quite disappointing.

Alternatives

It would be interesting to patch the original Netgear/SerComm firmware by removing the scfgmgr file and a line in a shell script that is launched at boot.

You need a 32 bit GNU/Linux distribution with the appropriate development libraries and only then you’ll be able to run the software that rebuilds the image. Unfortunately there is only a text file describing generic instructions so it takes quite some time to track down all the necessary libraries and to have a working environment. Maybe another time…

Applications using OpenWrt

I ended up using it for this: openwrt-leds-as-notification


Post a new comment