Well, there can be 2 situations
1. Lets assume that you have a local LAN and you do not own a registered domain. In that case, a reply from hotmail.com to your virtual domain will never go through just as you said correctly in your post - because, there is no domain like email@example.com
ldomain OR lets say, firstname.lastname@example.org
2. Second assumption is that just like hotmail and yahoo, you have a registered domain name with you ( lets assume its kevin.com). If that is the case, you should be able to send and receive mails without any problem.
Now, if point number 2 applies to you and still you arent able to receive mails, then try the following:
a). add your domain name (kevin.com for example) to the file /etc/mail/local-host-names
b). cd /etc/mail
d). service sendmail restart
In addition to that make sure that your MX resource record and mail server entries are properly set up in the file /etc/named.conf
You may also like to monitor messages in /var/log/maillog to find out whats happening
tail -f /var/log/maillog
The above command will monitor the file in real time
Also, Red Hat recommends that instead of modifying the sendmail.cf file directly, users should edit the file sendmail.mc and use the m4 macro to regenerate the sendmail.cf file.