How to connect external sip client to Freepbx v16

I’ve been running FreePBX v16 on Windows Hyper-V for over a year, and it has been 100% stable. It’s for my home business, and I’m the only user. After an initial learning curve to get everything set up, I’ve left it unchanged, except for minimal updates.

I now have my first employee working outside my home and need to enable him to make calls. I’m using Bria 4 from CounterPath because it works well for me, and I prefer it over their newer versions.

What I Want to Accomplish:

In the Bria account settings, it simply asks for a username, password, and the IP address of the server. I would love a solution that allows my external client to connect to my PBX that easily. I purchased System Admin Pro because I read on the forum that it offers a straightforward method, but I’m looking for something easier. I’m a married man and can follow directions.

My Hyper-V VM is connected to a separate ISP than my main home PC NIC. I connect the VM to the alternate ISP through a USB NIC on my PC (host), which is not shared with the host OS. I also have a default switch and an internal switch connected to the PBX. I can access the GUI from my main PC and connect my PC’s Bria without any issues.

Does anyone have any easy ideas on how to connect my external softphone?

Thank you!

Does the PBX get a public IPv4 address on its USB NIC? If not, please explain (connected via an ISP-supplied router, ISP does CGNAT, etc.)

If so, just set up FreePBX firewall to allow your employee’s address in. If it’s dynamic, options include using Responsive Firewall, trusting a range of addresses, or connecting via a VPN. If your address is dynamic, set up a dynamic DNS name.

The PBX has the wan ip address that I get from the second isp.
I tried using this wan ip in the softphone’s domain address but I cant connect. I have a MetroNet ISP that provides their own router (EERO) I can only change limited settings from within their app, but I am able to open ports 5060 and 10000-20000 for the PBX. Unfortunately, when I try to conmfirm using canyouseeme.org, those ports are not reachable. 5060 error is no route to host and 10000 error was connection timed out.

In the PBX gui → firewall → Networks I had already added the external ip address and set it to Trusted (Excluded from Firewall).
I ran this question through the poe chatbot, and one of the suggestions is that I check Settings ->Asterisk Sip Settings->Nat settings. Oddly enough, an unknown external address was there but I was able to Detect Network Settings to update it. Now when I check if port 5060 is open the error is that the connection was refused.
I enabled Responsive Firewall’s SIP Protocol (pjsip) then tried port 5060 but the connection now timesout.
The external address I have is dynamic but it hasn’t changed in two two years. Do I still need to setup dynamic dns name?
I also read that in order to allow incoming connections I needed to have a let’s encrypt certificate, but it looks like I would need a FQDN. I don’t have that, I just have an ip address. Any suggestions?
Thank, you

This made me chuckle hard. Off-Topic