Well, you need to do two things. Number one, on your Exchange server, you need to put your external domain as an 'Accepted Domain'. This will allow the Exchange server to accept email destined for that domain.
The second thing you'll need to do is create an email address policy on the Exchange server that applies the '@external.com' to their email addresses.
These two things, coupled with MX records pointing to the server (and the appropriate holes opened in your firewall) should allow email that is destined for 'external.com' to make its way to your exchange server, be accepted, and forwarded to the correct user.
The mail address that is sent (corp.domain.com) is defined in the address policy I mentioned above. If you modify that, you can allow the external domain to become the default SMTP address.