Access To Modem Configuration

From DD-WRT Wiki

Revision as of 19:06, 8 March 2009 by Olmari (Talk | contribs)
Jump to: navigation, search

Contents


Case of a Bridged modem

Presentation

In this case the router itself creates the PPPoE connection to the ISP server; but to work, the connection between the modem and the router must have an IP address. Usually the modem gives an address to the client; but this address will never be used except to access the configuration interface of the modem.

My modem is a Speedtouch 510, is IP address is 10.0.0.138 and it gives the 10.0.0.1 address to the device connected to it. The easiest way to know these addresses is to connect the modem directly to your computer and take a look at your network card configuration. The default gateway is the Modem address and the Card address is the one provided by the modem. It should be noted that a lot of modems come preconfigured to use the 192.168.1.x IP range. This will need to be changed for this to work.

So it looks like this.

   |<---------- PPPOE link ---------->|    
   |                                              |            |====== 
  ISP === bridged ========== WRT ========= PCs
              modem |                    |        |      |======
                          |                    |        |
                          |<- 10.0.0.x ->|        |<-- 192.168.1.x -->>

By default if you type the IP address of the modem you have an "Impossible to contact the server" error.

The way to follow

Eventually replace the 10.0.0.x by your addresses

  • Go to Administration -> Diagnostics and click on run
  • Enter
ifconfig vlan1:1 10.0.0.1 netmask 255.255.255.0

and click on Save Startup

  • Enter
/usr/sbin/iptables -I POSTROUTING -t nat -o vlan1 -d 10.0.0.0/24 -j MASQUERADE

and click on Save Firewall


N.B. Not all dd-wrt hardware uses vlan1 as the WAN port. For a listing of network interface names for most models you can go here [1]

Notes:

  1. If your router does not support VLANs (e.g. WRT150N), then replace vlan1 with eth1 in the code above. Cdkiller 11:55, 13 August 2008 (CEST)


Alternative way

A alternative (and cleaner) way to execute the above commands on startup is the following:

  • Log in via ssh
  • create a file with the following content:
#!/bin/sh 
ifconfig vlan1:1 10.0.0.1 netmask 255.255.255.0
  • save it as "/jffs/etc/config/modem.startup"
  • create another file with the following content:
#!/bin/sh 
/usr/sbin/iptables -I POSTROUTING -t nat -o vlan1 -d 10.0.0.0/24 -j MASQUERADE
  • save it as "/jffs/etc/config/modem.wanup"
  • make them executables:
chmod +x /jffs/etc/config/modem.*