I have a hosted PBX with trunks back to an on premise unit with trunks distributed across multiple lines for resilience and bandwidth management.
To make this work on the hosted unit I’m setting up a misc destination for each DDI I need to pass through to the on premise unit and using that in an inbound rule matching the DDI. Is there anyway I can create a catch all and pass the incoming DDI on as the destination?
It sounds like you are mis-using FreePBX. I think you actually want something like Kamillo (Kamillio?) to route your SIP around (since that’s what it’s designed to do) instead of using a Back to Back User Agent system like FreePBX. The system is pretty much designed to deliberately not do what you are trying to do.