SIP invite to LocalHost

This is may or may not be a question specific to asterisk. I am not totally sure how a SIP client should act in this scenario.

I have a need to create an entirely new SIP transaction during a call. This new SIP transaction needs to be generated more-or-less, via a Dial(SIP/exten@localhost). (For reasons I won’t get into, I can’t use a Local channel).

When I try to execute this, asterisk sends itself back a “482 Loop Detected”, which is understandable, but not desirable. Is there anyway to configure asterisk or manipulate the Dial command to allow this type of behavior? Is this even allowed in SIP, or does it become impossible for the SIP client to differentiate between incoming and outgoing channels. I would think the fromtag and totag would help deal with that… but i could be wrong.