Ok, in order to make this how to work for me at all i had to remove the proxy: from the mysql statements in main.cf virtual_mailbox_maps=proxy:mysql:/etc/postfix/mysql-virtual_mailboxes.cf and make it look like this virtual_mailbox_maps=mysql:/etc/postfix/mysql-virtual_mailboxes.cf which is copied from Christoph Haas's tutorial falko has linked to in his tutorial. and figure out that if i have virtual domains example.com and example2.com then my server is still mail.mydomain.tld for all my virtual domains. The system is now creating mailboxes for domains i have created in mysql there are a couple of problems im encountering now, i can send and receive emails from my firstname.lastname@example.org using mail.mydomain.tld and i can send emails to my new virtualdomains.com to activate them. i can mail in to mydomain.tld from outside my network but if i send a mail to email@example.com and firstname.lastname@example.org then somewhere from the other day is a cached email forwarding address that i inputted wrong and the emails fail and get returned to the external email address. Does anyone know in which file or db these cached addresses are so i can delete it, and no its not in mysql mail database. see below from hotmail mailer-daemon email@example.com(generated from firstname.lastname@example.org)SMTP error from remote mail server after RCPT TO:<email@example.com>:host mx3.hotmail.com [126.96.36.199]: 550 Requested action not taken:mailbox unavailable now from this line above i think in know that this domain is working (generated from firstname.lastname@example.org) and i have email@example.com working and sending and receiving emails into and out of my network so it has to be this hidden cached file from the other day. Hope what i have done might work for others who have difficulty with this how to aswell but like always no guarantees.