I have a few external domains that are picky about who they accept mail from. In their case, I cannot get them to accept our mail directly. However, we do use messagelabs to filter out the viruses from our incoming mail and they also act as an external smart host if we wish.