I like my loopback trunks: they catch calls to internal extensions where the full number has been dialled, strip off the leading digits and put the call back onto the controller.
But that only works if the DN matches the last digits of the dialled number.
If I have an entry in my DID form:
9876 1234 --> 4000
How do I catch internally dialled calls to 9876 1234 and send them 4000 without them hairpinning out to my carrier?