BSNL FTTH Bridge, VOIP Bridge, MAC Auth, Zoiper Connectivity,

  • Thread starter Thread starter burrow
  • Start date Start date
  • Replies Replies 10
  • Views Views 206
Messages
54
Location
Thrissur
ISP
BSNL
JIO
VODAFONE

The Great BSNL FTTH Migration: A 6-Year Journey That Taught Me Patience (And Some Networking)​

A dramatic retelling of one man's quest to simply change his phone number

The "Save Your Sanity" Compilation Post​


Hello fellow BSNL warriors! I thought I'd compile wisdom from multiple forum posts to save new folks from the archaeological expedition I just went through. Thanks to all the original authors - you're the real MVPs! (Except for a few tweaks I discovered through my own blood, sweat, and router tears)

The Golden Years (2019-2024): When Life Was Simple​

Back in 2019, when I was young and naive, I set up my home network thinking "How hard could this be?"

My Setup:
  • Netlink ONT (the trusty sidekick)
  • Archer C6 flashed with OpenWrt (because I like to live dangerously)
  • ONT in bridge mode (because I'm fancy like that)

Everything worked like a charm! The only drama was getting the ONT MAC whitelisted in the OLT, which they did faster than I could say "customer care."

Plot Twist: My office VPN decided to throw a tantrum. After some MTU detective work, I set my FTTH MTU to 1435, and everything was rock-solid for 6 ENTIRE YEARS.


The Number Migration Saga: Why Simple Things Aren't Simple​


Last week, I decided to migrate my old home telephone number to FTTH. Sounds reasonable, right? WRONG!

The Backstory: My original FTTH came with a random number because my exchange was using some ancient switching technology. But recently, they upgraded to something called "NGN switching" (fancy!) and announced: "Get FTTH with ANY number you want!"

The Catch: No migration option. You want your old number? Get a whole new connection!.
Because why make things easy when you can make them interesting?

I had preserved my old landline number by paying some minimum monthly storage rent all these years for this day !




The Great Migration Attempt: "It Should Just Work... Right?"​


I confidently thought: "I'll just swap the PPPoE credentials. Easy peasy!"

Famous Last Words
I even asked them to assign my new profile to the same VLAN. I was so prepared. I was so wrong.


Hurdle #1: The TR-69 Surprise​


The Problem: As part of the "closing work order" (BSNL loves their bureaucracy), they HAD to provision through TR-69.
Translation: I had to switch my ONT from bridge mode back to router mode. My beautiful, clean setup had to be temporarily uglified.
The Process:
  1. Switch to router mode ✅
  2. Receive TR-69 profiles ✅
  3. Internet works ✅
  4. Switch back to bridge mode ✅
  5. PPPoE authentication fails ❌
Error Message: "Authentication Error" (The most helpful error message ever!)


The Discovery: Welcome to Double-MAC-Check Hell​

That's when reality hit me like a BSNL bill after a data overage...

The New Security Theater:
  • Layer 1: OLT-level MAC check (the bouncer at the door)
  • Layer 2: PPPoE Server-level MAC check (the bouncer inside the club)

Pro Tip: Don't call it "PPPoE Server" with BSNL technicians. They call it "BSNL Backend." Use their lingo and they will get it sorted right away or prepare for confusion! but I should say BSNL technician in my exchange was so patient with me, worked with me, ironed out the issue, Kudos to him!, He didn't get training from BSNL for this but still he helped me fix the issue

For existing users during this transition (which I believe happened last year), they whitelisted whatever MAC was currently in use. New users? Welcome to MAC address hell!




The MAC Cloning Comedy​

Logical Solution: Clone ONT MAC to router. Should work, right?
Reality Check: NOPE!

In OpenWrt (at least on Archer C6), cloning the ONT MAC to the router causes the router to lose connectivity to the ONT. It's like they have a existential crisis: "Wait, if I'm the ONT, then who are YOU?"

Shoutout to user Varkey who already documented this madness in an old post. You saved me hours of head-banging!




The Solution: Temporary MAC Amnesia​

After multiple attempts and finally reaching a technician who understood human language:

The Magic Process:
  1. BSNL can temporarily disable MAC checking for 1-2 hours
  2. During this window, you can dial in with a new MAC
  3. The new MAC gets bound to your profile
  4. Peace
Important: The MAC address that BSNL Backend/PPPoE server sees is the same one displayed in your Self-care portal billing details.




The Architecture: Understanding BSNL's Two-Layer Security​


Layer 1 - OLT Check:
  • Verifies your MAC address
  • Checks if your VLAN is correct
  • VLAN is tied to your PPPoE profile

Layer 2 - PPPoE Server Check:
  • Authenticates your credentials
  • Verifies MAC against profile
  • Either grants access or crushes your dreams



Key Takeaways for Fellow Sufferers​

  1. Don't clone ONT MAC in OpenWrt - It breaks connectivity
  2. Use BSNL terminology - "BSNL Backend" not "PPPoE Server"
  3. MAC binding requires temporary amnesia - Ask them to disable MAC check temporarily
  4. Patience is a virtue - Especially with BSNL support but some guys are cool
  5. Document everything - You'll need it for the next migration!



Credits & Thanks​


Massive thanks to all forum contributors who documented their pain so others could learn. Special mention to Varkey for the MAC cloning warning!

The VOIP Adventure: Because Why Stop at Internet?​

Now that I had the internet sorted, I figured why not get VOIP working too. How hard could it be? (I clearly hadn't learned my lesson)

I bridged the VOIP VLAN to my OpenWrt router and used Zoiper to connect. This part was surprisingly straightforward, but here are some things that might save you some time:

OpenWrt VOIP Setup:

  • Create a new inΩerface in WAN zone on same physical WAN interface using the VOIP VLAN ( Assuming you already set VOIP profile to bridge in ONT )
  • Set it to DHCP mode with "Request DNS" enabled
  • This is important - you need those BSNL DNS servers

The DNS Gotcha: SIP connection only works with full hostnames, not IPs. Something like kl.ftth.utims.bsnl.in - and here's the kicker, this domain can only be resolved through the DNS servers provided by BSNL in the VOIP VLAN. Your regular BSNL DNS servers have no clue about these domains.


The Route Problem:The DNS server IP that BSNL gives you is in a completely different subnet from the IP and gateway you get on the VOIP interface. So you need to add a route telling your system that this DNS server can be reached through the VOIP gateway.


For making it less complex to work I resolved the SIP server Domain and added a static route to that as well through the VOIP interface. One less thing to worry about till they change server IP but it maybe rare

The Mobile Setup:I've also set up WireGuard VPN and can connect to Zoiper from my phone through the VPN tunnel. It works pretty well, though sometimes it fails to register on the first try. Usually works by the 3rd or 4th attempt. Not sure if that's a BSNL thing or a Zoiper thing, but it's consistent enough that I don't mind.

So far everything's working fine. Famous last words, I know, but fingers crossed it stays this way.



Final Thought: After 6 years of smooth sailing, one simple number change taught me more about BSNL's backend than I ever wanted to know. But hey, we're all network engineers now, right?

Hope this helps someone avoid the rabbit holes I fell into. If you're facing similar issues, feel free to ask questions.

P.S. If anyone from BSNL is reading this: Maybe consider adding a "Migration" option in your system? Just a thought!
 
@burrow neatly written one mate , kudos.

There is one more service with BSNL called "Assem Plan" there in which if you can retain your POTS ( Plain Old Telephone System described in Andrew S. Tanenbaum's book :) ) by paying a nominal quarterly rent. You can also choose any mobile number to get the calls forwarded from the old LL number.

If you ever wanted to change your Netlink ONT , make a note of the ONT serial number and clone that to the new one ( make sure that your new ONT supports that serial number cloning). This is what I did when changed Netlink to a Huawei one with guidance from Mr. @varkey

If I am not wrong , that's the only one authentication factor between OLT and ONT.
 
Awesome write-up, brdr @burrow!

Can you please share screenshots for the VoIP steps you did in your OpenWrt router? And I'm assuming the static route setup takes into account the often-changing gateway in the Voice WAN profile as BSNL uses dynamic IP for Voice.
 
Last edited:
@burrow Can you share your speedtest results? Before and after bridge mode.
I am particularly interested in download latency. Want to see if openwrt handles it well
 
Awesome write-up, brdr @burrow!

Can you please share screenshots for the VoIP steps you did in your OpenWrt router? And I'm assuming the static route setup takes into account the often gateway in the Voice WAN profile as BSNL uses dynamic IP for Voice.
I am not able to upload the screenshot but here are the details

IP I got from bsnl server in VOIP interface : IPv4: 10.7.x.x/19
Static routes I added
172.30.249.11/32 via 10.7.96.1 (172.30.249.11 Was the DNS I got from BSNL server)
10.181.176.0/24 via 10.7.96.1. ( 10.181.176.0 was the ip i got when i resolved the VOIP domain name in their DNS )
 
@burrow Can you share your speedtest results? Before and after bridge mode.
I am particularly interested in download latency. Want to see if openwrt handles it well
I will get you this in few days, I live away from HomeTown, I use Wireguard VPN running on raspberry PI, but while trying out something i messed up my RB PI routing tables, now I no longer have LAN connectivity with RB PI :-) , RB PI is now connected to internet over WiFi adding a bottleneck to my speed test

But I dont think Bridge mode added any latency, the ping to BSL gateway was less than 1 millisecond,
 
For making it less complex to work I resolved the SIP server Domain and added a static route to that as well through the VOIP interface.
How is that making it less complex? Why would you want to suddenly lose connectivity when one fine day the IP changes for whatever reason?

I'd recommend adding a WAN interface like you did in your OpenWRT and the DNS servers your router fetches from the DHCP server of BSNL IMS will be used to resolve the domain names of their IMS servers. Simply add a static route to those domain names through the VOIP WAN interface.
 
True, it has been a pain to set up mac spoof but still not impossible. A friend tought me how to..
1. You need to make sure that no profile in the ONT matches the PPPOE MAC from your self-care.
2. ONT which shows WAN MAC for each profile in wan status page.

E.g: PPPOE WAN MAC (1st profile) ends with 56, VOIP profile ends with 57 and you add a new bridge profile which ends with 58. You just need to delete the PPPOE profile after you make bridge profile with WAN MAC 58 and PPPOE profile with get deleted along with the WAN MAC 56 which you can now use on your router.
 
Last edited:
Back