You still seem to have incorrect DNS records (at least the external ones). Is dreamhost the host for your domain name? If it is, do they have any DNS configuration that would allow you to set-up A & MX records? If they can't do that is there a facility to forward your DNS requests to your new DNS hosting provider?
This command 'dig mail.jzeller.com' isn't correct, you run all the dig commands against your domain name i.e. 'dig jzeller.com any' and that should tell you whether your records are correct. From here that command gives the following:
Code:
dig jzeller.com any
; <<>> DiG 9.3.2 <<>> jzeller.com any
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 25628
;; flags: qr rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 3, ADDITIONAL: 3
;; QUESTION SECTION:
;jzeller.com. IN ANY
;; ANSWER SECTION:
jzeller.com. 121726 IN NS ns2.dreamhost.com.
jzeller.com. 121726 IN NS ns3.dreamhost.com.
jzeller.com. 121726 IN NS ns1.dreamhost.com.
;; AUTHORITY SECTION:
jzeller.com. 121726 IN NS ns1.dreamhost.com.
jzeller.com. 121726 IN NS ns2.dreamhost.com.
jzeller.com. 121726 IN NS ns3.dreamhost.com.
;; ADDITIONAL SECTION:
ns1.dreamhost.com. 12870 IN A 66.33.206.206
ns2.dreamhost.com. 12870 IN A 66.201.54.66
ns3.dreamhost.com. 171270 IN A 66.33.216.216
;; Query time: 1 msec
;; SERVER: 192.168.1.15#53(192.168.1.15)
;; WHEN: Sat Mar 31 09:20:57 2007
;; MSG SIZE rcvd: 183
which, as you can see, gives you no valid A or MX records. They all stop at your domain hosting provider - that's why you need to forward your DNS to dynDNS.org. That's certainly why it won't work from the 'outside'.
Post the configuration files that you're actually using on your DSN server.