Hello,

Am trying to send mail to outside world but i get errors "no route to host" in the logs.

i can send mail from one zimbra user to another and receive mails from outside(eg. gmail) but i cant send to gmail.

This server is behind router (NAT)

Here are the outputs of the following commands.
DNS
/etc/bind/named.conf.options
Code:
options {
        directory "/var/cache/bind";

        // If there is a firewall between you and nameservers you want
        // to talk to, you might need to uncomment the query-source
        // directive below.  Previous versions of BIND always asked
        // questions using port 53, but BIND 8.1 and later use an unprivileged
        // port by default.

         query-source address * port 53;

        // If your ISP provided one or more IP addresses for stable
        // nameservers, you probably want to use them as forwarders.
        // Uncomment the following block, and insert the addresses replacing
        // the all-0's placeholder.

         forwarders {
                196.45.42.100; 41.221.41.101;
         };

        auth-nxdomain no;    # conform to RFC1035
        listen-on-v6 { any; };
};
/etc/bind/named.conf.local
Code:
//
// Do any local configuration here
        zone "ardhi.go.tz"  {
                type master;
                file "/etc/bind/db.ardhi.go.tz";
        };

// Consider adding the 1918 zones here, if they are not used in your
// organization
//include "/etc/bind/zones.rfc1918";
/etc/bind/db.ardhi.go.tz
Code:
;
; BIND data file for ardhi.go.tz
;
$TTL    604800
@       IN      SOA     mail.ardhi.go.tz. admin.ardhi.go.tz. (
                       20100909         ; Serial
                         604800         ; Refresh
                          86400         ; Retry
                        2419200         ; Expire
                         604800 )       ; Negative Cache TTL
;
@       IN      NS      mail
        IN      MX      10 mail
        IN      A       172.16.16.2
mail    IN      A       172.16.16.2



cat /etc/hosts
Code:
127.0.0.1       localhost.localdomain   localhost
172.16.16.2     mail.ardhi.go.tz        mail

# The following lines are desirable for IPv6 capable hosts
::1     ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts
cat /etc/resolv.conf
Code:
search mail.ardhi.go.tz
nameserver 172.16.16.2
dig ardhi.go.tz mx
Code:
; <<>> DiG 9.4.2-P2.1 <<>> ardhi.go.tz mx
;; global options:  printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 22607
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1

;; QUESTION SECTION:
;ardhi.go.tz.                   IN      MX

;; ANSWER SECTION:
ardhi.go.tz.            604800  IN      MX      10 mail.ardhi.go.tz.

;; AUTHORITY SECTION:
ardhi.go.tz.            604800  IN      NS      mail.ardhi.go.tz.

;; ADDITIONAL SECTION:
mail.ardhi.go.tz.       604800  IN      A       172.16.16.2

;; Query time: 0 msec
;; SERVER: 172.16.16.2#53(172.16.16.2)
;; WHEN: Tue Sep 21 21:49:08 2010
;; MSG SIZE  rcvd: 80
dig ardhi.go.tz any
Code:
; <<>> DiG 9.4.2-P2.1 <<>> ardhi.go.tz any
;; global options:  printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 53316
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 4, AUTHORITY: 0, ADDITIONAL: 1

;; QUESTION SECTION:
;ardhi.go.tz.                   IN      ANY

;; ANSWER SECTION:
ardhi.go.tz.            604800  IN      SOA     mail.ardhi.go.tz. admin.ardhi.go.tz. 20100909 604800 86400 2419200 604800
ardhi.go.tz.            604800  IN      NS      mail.ardhi.go.tz.
ardhi.go.tz.            604800  IN      MX      10 mail.ardhi.go.tz.
ardhi.go.tz.            604800  IN      A       172.16.16.2

;; ADDITIONAL SECTION:
mail.ardhi.go.tz.       604800  IN      A       172.16.16.2

;; Query time: 0 msec
;; SERVER: 172.16.16.2#53(172.16.16.2)
;; WHEN: Tue Sep 21 21:50:21 2010
;; MSG SIZE  rcvd: 138
host `hostname`
Code:
mail.ardhi.go.tz has address 172.16.16.2

What is wrong with my configuration?