SIP Trunk Options

I am currently running FreePBX distro with Asterisk We have recently added a new SIP trunk provider and connected to our location. With this new provider we connect to them via static connection so there is not registeration information sent from our PBX. I have the trunk working on a single PBX currently. I have been very happy with the new service in general testing, but we have a major limitation. Since this is static we can not route inbound calls to all our PBX servers. The provider seems to only send inbound calls to a single internal static IP address. We are “allowed” to send calls out from our other servers that we listed with them, but not receive.
so for example our PBX addresses are, 201, 202 and 203. I can make calls out from phones registered with any of the above PBX, but can only receive calls into the .200 PBX.

I am working with the provider to see what we can do, but changing to dynamic or sending registration is not an option in their enterprise solution. They sugested a border element or CUBE, but that is a Cisco device for Cisco CallManagers. I understand the concept so I have thought of using a seperate hardware SIP Proxy, but that is not going to work either.

I am now considering the concept of a “trunk server”. I have deployed these in the past with other PBX and VoIP PBX, but not freepbx. Wanted to put this out there to see if anyone had any other ideas or have advise/ direction on the trunk server concept.
Thanks in advance