Why change?

The included Valerie router that Virgin Mobile includes with their internet packages doesn’t give the user much control over their network. An example of this is that you can’t allow only certain IPs when you port forward. I wanted to have more control over my network and to have it so if I changed internet service providers in the future, I wouldn’t need to reconfigure my entire network.

Bypassing the modem

Usually you could just plug the modem into your own router and call it a day. However, Virgin Mobile’s included router doesn’t have a true bridge mode. So, instead of trying to pass through the included modem or using the DMZ function, I opted to bypass the router all together.

Virgin uses Bell’s fibre network to distribute internet to their customers. The Valerie router is the same as the Home Hub 3000. The hub uses a SFP module that needs to be adapted into a RJ45 connector. To do this, I used the TP-Link MC220L. I removed the fibre cable from the SFP module from the hub and then pulled out the SFP module. To install it into the MC220L you do the reverse order. I found this video helpful in this step.

Configuring pfSense

I then connected the an ethernet cable from the MC220L to my pfSense router. Unfortunately, you can’t get internet immediately. Virgin uses PPPOE instead of DHCP for internet. To configure PPPOE you need your Home User ID and the password. These could’ve been given by the installer or you can contact Virgin. The Home User ID starts with v2. When you input the username it should look like this v2xxxxxx@viriginmobile.ca. In order to get internet, you need to assign a VLAN of 35 to your WAN port. From there, I connected my the LAN port to my switch which connected to my access point. Bypassing HH3000.

Plex Indirect Connection Issue

After transitioning to pfSense, my TV was having issues with connecting to my Plex server. I was getting an indirect connection even though I was on the same LAN. I looked around for a while and couldn’t find out why it wasn’t working. I enabled remote connections, but I would still get an indirect connection. Eventually I stumbled upon Duane Newman’s blog and he found that buried in the Plex Support article that you needed to modify the pfSense DNS resolver service. The instructions from the website are as follows:

PFSENSE DNS RESOLVER

Similarly, if you are using pfSense’s internal DNS resolver service, you’ll want to adjust that configuration. In the pfSense web UI, go to Services > DNS Resolver, click Display Custom Options, and enter the following the the text box:

server:
private-domain: "plex.direct"

After adding this, the indirect connection issue was resolved.