OpenWRT Barrier Breaker with Verizon FIOS

As I detailed at great length, I have FIOS, Verizon’s fiber optic internet service. I have never liked using stock firmware mainly for accessibility reasons, but also because we just don’t know what it may contain. For a while I used Tomato, but have decided to switch to OpenWRT. I thought I’d have an easy time porting over my network’s settings and that I could then continue on my merry way. I thought wrong.

I use AirPlay to stream music around my condo. It has worked well, but I started getting increasing amounts of dropouts. I decided to upgrade my router to use 5 GHZ since it has less interference. Plus it could hurt to run newer firmware. After some research I purchased the TP-Link Archer C7 because it supports 802.11AC and has four ethernet ports. I still like good old wired ethernet when possible.

The device arrived quickly and I went to work setting up OpenWRT. I went to the router’s stock firmware’s default address of 192.168.0.1. I found the upgrade button. A dialog box popped up: “Are you sure you to upgrade?” Yes! Definitely!

I installed OpenWRT without incident. I setup my password and some basic settings. I enjoyed using the command line to do everything. Then I got to the part where I set up my internet connection and hit a dead end. As it turns out, Verizon FIOS has a weird issue with their DHCP lease, and some other nasty surprises. I reproduce the following instructions in hopes they will help another. I also hope they integrate this fix into the next release. This works with Barrier Breaker 14.07.

Firstly, and most importantly, you must have the MAC address of a currently working router. Copy this down before continuing.

Download the version of OpenWRT appropriate to your router. In addition, download the patch utility, which you find in the packages subdirectory. It will have a filenamename like patch_2.7.1-1_r71xx.ipk. You will also need the patch from this forum thread. Remember to get the latest patch, the thread has several. As of this writing it has the filename dhcp.sh-150411.sh.

So just to recap, at this point you should have a working MAC address, the version of OpenWRT appropriate for your router, the patch utility, and the patch from the forum thread. Install OpenWRT as detailed in the wiki and stop when you get to setting up your internet.

Now use scp to copy the patch utility and the patch itself to your /tmp directory.

$ scp patch*.ipk dhcp.sh*.patch <root@192.168.1.1>:/tmp

Now ssh back into your router and apply the patch:

# cd /lib/netifd/proto

# patch -p0 -b /< tmp/dhcp.sh-150411.patch

The patch should succeed. If it fails restore the backup file. Assuming that worked, edit your /etc/config/network and configure your WAN:

config interface ‘wan’
option ifname ‘eth0’
option proto ‘dhcp’
option macaddr ‘MM:AA:CC:AA:DD:RR’ # replace with the MAC address you copied earlier
option clientid ‘noc’
# Use alternate DNS servers so Verizon won’t spy on you
list dns 71.242.0.14
list dns 71.250.0.14</p>

Save and run:

# /etc/init.d/network restart

and hopefully everything will work. I went through so much to get this working that I had to write it down. Requiring a working MAC address really threw me for a loop. I even used the one from my previous third party router, and it still worked. So there you go, enjoy blazing fast FIOS on your awesome new router.</span>