What we require now is to put all these users under a single domain name , company.com
How can we use one single domain for all these different mail servers?
We wish to have separate in house mail servers at each country so that the local mails can be locally delivered.

We wish to have separate in house mail servers at each country so that the local mails can be locally delivered.

We have a basic idea as follows,

We will register a new domain www.company.com and will point its MX records as

MX 10 maila
MX 10 mailb
MX 10 mailc

Hence maila.company.com is in country A with users a1@company.com, a2@company.com,mailb.company.com is in country B with users b1@company.com, b2@company.com and so on

Each server should be aware of its peers and their accounts, For example maila.company.com must know b1@company.com and c1@company.com belongs to mailb.company.com and mailc.company.com respectively.

So when a mail for c2@company.com comes to maila.company.com, the server knows that its not for my account, it is for my peer mailc.company.com and the mail will be forwarded to mailc.company.com
Does this plan is possible with zimbra collaboration suite? if its possible how I begin ? Please advise me..

Note:- As the offices are geographically separated, we have different set of public ips

The situation you describe is quite standard for a multi-server setup. You'll have one master-ldap server at your head-office, possibly a slave-ldap in each branch office, and one mailbox-server per office. All the functionality you describe will work by default.

Begin by reading the multi-server install guide and do a test setup on a LAN:Table of Contents

We tried the method you mentioned above.. It worked well in our test environment.
But what we exactly need is to implement zimbra mail server for 12000+ users spread across 4 counties with an average of 3000 mailusers per a country.