I was recently struggling with my home fibre broadband connection when, as it turned out, it was something I had figured out before, but I had forgotten all about it. So to save myself the hassle in case I need to go through that again, I’m going to document it here. You may find it useful too.
This is for StarHub fibre broadband (i.e. FTTH — fibre to the home) connections, and it is only relevant if you try to connect your own Linux box or other router directly to the ONT device instead of using StarHub’s provided router.
The difficulty with StarHub’s FTTH connection is that they are sending out 802.1q tagged frames out of the ONT. Now, I remembered about the 802.1q VLAN ID tag, but there’s more to it. StarHub also sets the 802.1p Priority Code Point (PCP) field. I forgot about this bit when I had to re-setup my Ubuntu host recently.
The two things you need to know are:
- The VLAN ID is 1071.
- The PCP value is 1.
Traffic egress from your router must have the PCP value set to 1.
If you use Linux, the command to setup the VLAN interface is:
$ vconfig add eth0 1071
This will create a new eth0.1071 interface. It is likely that the distro you use will have its own way of setting up VLAN interfaces, and you needn’t work directly with the vconfig command.
The command to setup the egress priority map is:
$ vconfig set_egress_map eth0.1071 0 1
pfSense lets you configure VLAN interfaces, but unfortunately there seems to be no way to configure the 802.1p PCP value. It seems the real problem is with the underlying operating system, FreeBSD, which doesn’t have proper working 802.1p support out of the box.
You should also know that you can actually request StarHub to stop sending 802.1q tagged frames out of your ONT.
Just call StarHub technical support, and explain to them that you want to connect your own router directly to the ONT. They call this a “direct to ONT” connection. It will take a couple of days for them to set this up, because they need to liaise with Nucleus Connect who are the ones that actually do the work.