You don't need to use an external to test if the exchange server is working. There's no such thing as Free domains. There's free subdomains... but that helps no one.
Buy a really cheap domain at GoDaddy.com, they are like... $10... Even if it's just for a month. Godaddy is #1 on domain registrations. They're really easy to use also.
Also, you can also use a lab environment to test this.
LAB
2 cheap routers from Usedcisco.com
INTERNET SIDE
1 Linux Server/Client for DNS, Sendmail, and LDAP for user/email config.
DOMAIN SIDE
1 Routing and Remote Access Server with 2 Network Interfaces
1 Exchange Server
1 Domain Controller
1 Windows Client
View my test lab for an idea of what I'm talking about.
1) Get the two routers... routing... very easy to do.
2) Get one client on the dns side with linux and a self-controlled email server. Configure DNS/Bind and Sendmail on that server... Create a second zone on that DNS Bind server to create your external DNS(as if you purchased at registrar).
3) Create DMZ on your new cheap client to route and filter traffic... plus importantly scan for viruses... very important or your exchange server will experience a lot of SPAM......
It's very important to use a front-end exchange server. If the front end goes down... you'll still be able to use email tomorrow, but you need to re-setup the front-end.... What happens if you lose all the mailboxes and email storage? Who will be taking your job the next week?
4) Establish TLS security between ISA make-shift(cheap starter) server to encrypt the communication between front-end and back-end server.
5) Configure all DNS settings. Make sure Front-End Server only points interface configuration only points to the INTERNAL DNS server from the INTERNAL side Interface. No DNS on External interface(to router).
6) Configure DNS Forwarding on Domain Controller to Internet DNS Server(your linux box with DNS) I can help you with any of this stuff.
7) Configure MX records for both internal and external mail recipients.
Configure alias to point to host record internal to domain on internet side DNS.
8) Send a test email to Linux user mailbox from the Domain configured Windows Client.
9) Send a test email to Windows client from the Linux box. Even though its the server, email still works. It will find your server and communicate. Which is what you need.
If you need additional Help on how to do this...
http://www.trainsignal.com/Exchange-Server-Training-C16.aspx
Trainsignal is awesome... you ever feel that if you had someone to take the time to show you over your shoulder instead of go over theory and let you have at it? Trainsignal goes above and beyond by showing you how and what to expect for problems when doing it.