Tuesday, 5 January 2016

Setting up an OpenWRT / ADSL connection with the TP-Link WT710N and Thompson SpeedTouch 330

As a kind of learning exercise and to jump into OpernWRT I decided to replace my existing Sky Hub router / modem I planned to install OpenWRT on a TP-Link TL-WR710N and hook it up to a Thompson SpeedTouch 330.

The idea that the TL-WR710N (around 12 GBP) would act as the router (since it is pretty cheap) and can be connected directly to the SpeedTouch 330 (around 4 GBP on eBay - which acts as the modem) since the TL-WR710N has a free usb port available.

OpenWRT was a new area for myself - my understanding was that it was built with the linux kernel and typically intended for embedded devices.

So after referring to the following article on the OpenWRT website that most of the models (excluding the Chinese version) should run OpenWRT just fine.

After research I also noted that (dependent on version) at least 4MB of ROM (ideally 8MB+ if you want to add extra functionality to the box) is needed on the device and at least 32MB of RAM for the latest version of OpenWRT.

Now firstly since I had purchased the device through Amazon.co.uk I was unsure of the version (versions described here) - although thankfully TP-Link provide guidance on how to identify which version your model is here.

Unfortunately I drew the short straw and ended up with 4MB flash (2.0) version (ah well..!)

After plugging in the device and it booting (a green solid light should eliminate when it has finished booting) I got hold of a standard patch cable and plugged it into my computer directly into the router's LAN port.

Presuming the router is fresh out of the box you should get some DHCP reception (192.168.0.0/24) - now navigate to http://192.168.0.254 (admin/admin for login) and we can load our OpenWRT Firmware by going to:

System >> Upgrade Firmware >> Select your firmware

After 60 or so seconds the firmware should have been successfully applied and the device should have rebooted.

Now we will need to re-configure our TCP/IP settings on our computer as OpenWRT uses 192.168.1.0/24. Once re-configured attempt to ping 192.168.1.1 - if all looks good use PuTTY, OpenSSH etc. to telnet into 192.168.1.1: You should see a welcome message - change your password like follows:

passwd

Disconnect from your telnet session and then attempt to connect via SSH to the device:

Username: root
Password: <yourpassword>

Now we can review our interface settings by inspecting the following files:

vi /etc/config/network
vi /etc/config/wireless

In order to enable WiFi we must firstly comment out (or flip the 1) the following line in the /etc/config/wireless file:

option disabled 1

and restart networking:

/etc/init.d/network restart

You should now see a SSID named 'OpenWRT' - after connecting you should be served up an IP address over DHCP (this scope is defined in /etc/config/network)

Now you will also likely want to set up some kind of encryption - ideally something like WPA2-PSK:

vi /etc/config/wireless

Now the specific line we are after is: 'option encryption' under the wifi-iface section.

Although in order to setup WPA we require one of several possible packages - although for simplicity and file size I recommend the wpad-mini package - this can be installed with:

opkg update
opkg install wpad-mini

Although because this requires an internet connection we must plug the other ethernet port on our device (the one labelled 'LAN / WAN') into another router connected to the internet (you could also download the packages required above manually.)

This was pretty painless - after plugging into my existing router and getting an address I could ping 8.8.8.8 - so now we can attempt to download those packages again:

opkg update
opkg install wpad-mini

Now we can edit the wireless file and replace / add where necasery:

vi /etc/config/wireless

option encryption psk
option key yourpassword

and then restart networking:

/etc/init.d/networking restart

* You can also make changes using the 'uci set xxxxxx' command *

You might also want to setup public nameservers for any public DNS quries - this can be done pretty easily be editing:

vi /etc/dnsmasq.conf

and adding the lines:

server=8.8.8.8
server=8.8.4.4

Now we will need a final few packages for our ADSL modem:

opkg install kmod-atm kmod-usb-atm-speedtouch kmod-usb-uhci

We can now unplug the cable going into our main router as it's no longer needed.

Now the next part (coming soon) will be configuring the Thompson SpeedTouch modem and ATM.

0 comments:

Post a comment