OpenWRT on a “locked down” TP-Link WR1043ND v3 wireless router
It turns out that the brouhaha over certain manufacturers’ reactions to the FCC ruling to prevent 3rd-party software from taking wireless routers out of their approved emissions range is valid. I bought a TP-Link WR1043ND v3 router to compliment the existing v2 router I bought several years ago. I have a point-to-point setup with OpenWRT on both ends. It turns out that TP Link has indeed started locking down their routers to prevent third-party firmware installations. (I had hoped that buying the older V3 would get around this, but apparently not so.) Setting up OpenWRT is now a little bit (but not much) more difficult than it was on these routers.
Fortunately, it seems that TP-Link has only locked down the web interface to prevent third-party firmware installation and downgrading factory firmware. You’ll get an error 18005 if you try this. TFTP still works. In the end, the steps to flash were the following, based on the information at the OpenWRT wiki. You’ll need a Linux machine with DNSMasq installed.
- Download the factory OpenWRT trunk image for the WR1043ND v3. Currently as of July 7, 2016: https://downloads.openwrt.org/snapshots/trunk/ar71xx/generic/openwrt-ar71xx-generic-tl-wr1043nd-v3-squashfs-factory.bin
- Rename the OpenWRT file to wr1043v3_tp_recovery.bin
- Move the file to /tmp
- Set your NIC’s address to 192.168.0.66 and hook up the router, but don’t power it on yet.
- Use DNSMasq as a quick tftp server with the following command: dnsmasq -d –enable-tftp –tftp-root=/tmp
- In another terminal window, use tcpdump to view traffic on your NIC.
- Hold down the router’s reset button and power it on.
- Hold the reset button until tcpdump shows the file transfer.
- Wait 5 minutes
The OpenWRT build doesn’t have the web GUI installed. Fortunately, that’s easy to fix:
- Use SSH to log into root@192.168.1.1
- Hook the router’s WAN port to a LAN switch (to give it Internet access)
- Run opkg update && opkg install luci on the router
- Run reboot on the router
- Visit 192.168.1.1 and enjoy