Digital Nut


My pathetic & feeble excuse for a blogsite!


Reconfiguring the TalkTalk DSL-3680 Router to work with a home network

DSL-3680

After switching to TalkTalk, and installing their DSL-3680 Router, the first thing that I noticed was that I was unable to access my Raspberry Pi Apache web server, which serves various things including this personal blog, environmental data feeds and IP cameras.
Even trying the private IP addresses I was directed to the router administration page.
So after a few frustrating days and lots of reading I managed to get everything to play nice together, so I’ve written it up in case it helps others facing the same problems, but see the warning at the bottom first.

1) Changing the Admin page port

By default, the router admin page uses port 80 (the same port that we need for our HTTP connection) so we need to change it to a different port, say port 8080.
If the port number is not changed, whenever your IP is called, it will be directed to your admin page instead of your server!
To change the router admin port, go to your router web interface and log-in, then click ‘Advanced’ and select ‘Advanced’ from the menu ribbon.
Select ‘Remote Management’ from the left menu, and then tick ‘Enable Remote Management’, followed by changing the default port from 80 to 8080, and Apply Settings.
At this stage, don’t panic if your admin page becomes unresponsive! remember, you’ve now changed the port setting, so to access your admin page, use the same IP address, except add :8080 to it. So in my case, my admin page is 192.168.1.1:8080
Log out of the Admin page, then log back in, and untick ‘Enable Remote Management’ again, and ‘Apply Settings’.
That now frees up port 80 to use as a HTTP gateway to the server.

2) Port forward

Whilst in the router ‘Advanced’ section, select ‘Port Forwarding’ from the left menu, and add entries to direct ports 80 and 443 to the private IP address that you want incoming services to access (The IP address of your server).

3) Activate loopback on your router

Telnet is not always installed in Windows by default, sometimes it needs to be added via the Windows Control Panel, but once installed, start the client and Telnet into your router via port 23.

> o 192.168.1.1 23

If you are unable to gain Telnet access to your router, ensure that your router has Telnet enabled by changing the default option in your router web interface ‘Advanced’ > ‘Remote Management’ > ‘Remote Access Control’.

Once you have a connection, enter your router password, and check to see if loopback is activated already;

D-Link> ip nat loopback

it will probably say no! but to activate it;

D-Link> ip nat loopback on

and check the ‘ip nat loopback’ again, and you should see that loopback is enabled.

If you are already running a website, you can now check to see you can access your site or Localhost (but don’t reboot your router yet - see section 4 below).

4) Surviving a reboot

OK, well we have successfully activated loopback, but if the router is now rebooted, it will return back to it’s default of loopback off, so we need to change a configuration file - autoexec.net which is read upon a router reboot.

To do so, and whilst still in Telnet;

D-Link> sys edit autoexec.net

This is a inbuilt really basic text editor which is not the easiest to use, but here goes;

  • Upon each press of ‘n’ the editor will reveal consecutive lines of the router’s autoexec.net file, so keep pressing ‘n’ until you get to the line ‘ip rip merge on’
  • Press ‘i’ to insert a new line
  • Type ‘ip nat loopback on’ (the system puts a colon in first but ignore it, it’s only an indicator of changed code).
  • If you make a hash of it, press ‘q’ to exit without saving, and start afresh, otherwise;
  • Hit the Enter key and ‘x’ to save and exit.

Now, every time your router reboots, it will read the autoexec.net and enable loopback.

Warning!

If you try this, you do so at your own risk, as TalkTalk may not (almost definitely won’t!) give you any support, and a replacement router would be at your own expense. So if you are unsure or unfamiliar with this - don’t do it!