?
With that said the scope of this document is to provide a background on how dual delivery works because even after reading the help articles the concept may be hard to wrap your head around.? mydomain.com is used as an example.
Pointers/Tips/Things I got hung up on and then learned.
- The receiving of mail is somewhat passive; the receiving mail server inthis scenario mail1.mydomain.com just waits and hangs out till aconversation is initiated by a sending server.
- In most cases the receiving mail server is oblivious to MX records it just knows it supposed to handle mail for mydomain.com, I believe that this is mostly true for single domain email server - any isp want to chime in here -
- In scenario 2 there are no mx records that point to your personal mail server
- In scenario 2 mail is set up in google apps to be routed to mail1.mydomain.com
- References to "your personal email server" mean the server you were using for mail.?
?
The DNS records are as follows:?
www.mydomain.com A 10.11.12.5 ? <-- this record is just for illustration purposes to show what a a record to a web server looks like
mydomain.com MX 1 mail1.mydomain.com
- An email is created and sent on a desktop in a far away land addressed to john.doe@mydomain.com, from now on we will call that email "Edward".
- Edward travels through the internet on port 25 to the sending email server we will call this server "Outbound".
- Outbound looks at the email and sees who Edward is addressed to, in this case Edward is addressed to john.doe@mydomain.com.
- Outbound then using DNS looks to see what computer handles mail for mydomain.com in this case the MX record points to mail1.mydomain.com.
- Outbound then initiates a conversation with mail1.mydomain.com and delivers the message to mail1.mydomain.com's queue where it awaits for a user to pick it up.
- If mail server could speak english this is how the conversation might go
- Sending Server (after using DNS to resolve the MX records): Helo receiving server I see that you are set to receive mail for mydomain.com
- Receiving Server: Yep I am I see here in my config files that i am
- Sending Server: Ok here is a message
- Receiving Server: Thanks, got it, BYE
?
?
The DNS records are as follows:
www.mydomain.com A 10.11.12.5
mail1.mydomain.com A 10.11.12.6 <-- Notice the addition of this A record this is important this is the record that google will use to deliver mail to your personal email server
mydomain.com MX 1 ASPMX.L.GOOGLE.COM. <-- notice the change of MX records
mydomain.com MX 5 ALT1.ASPMX.L.GOOGLE.COM.?
Now lets follow that same email:
- Edward travels through the internet on port 25 to the sending email server we will call this server "Outbound".
- Outbound looks at the email and sees who Edward is addressed to, in this case Edward is addressed to john.doe@mydomain.com.
- Outbound then using DNS looks to see what computer handles mail formydomain.com in this case the MX record now points to 1 ASPMX.L.GOOGLE.COM.
- Outbound then initiates a conversation with 1 ASPMX.L.GOOGLE.COM. anddelivers the message to 1 ASPMX.L.GOOGLE.COM. queue where it awaits fora user to pick it up.
- Google then (this is where it gets cool) sees your google apps settings and notices that the email is to be routed to an additional server in this case mail1.mydomain.com
- Google resolves the address mail1.mydomain.com to ip address 10.11.12.6 where your personal email server is on and patiently waiting for connections.
- Google initiates a conversation with mail1.mydomain.com / 10.11.12.6 and delivers the message.
- If mail server could speak English this is how the conversation might go
- Google Server (after using DNS to resolve the A record for your personal email server that was set in google apps): Helo receiving server I'm pretty smart I checked an A record that I was configured to check and see that you should get this mail for mydomain.com you don't even know that there isn't an MX record for you.
- Receiving Server: What whats and A record, whats an MX record Oh well who cares moving on, I can see that the message you have here is addressed to john.doe@mydomain.com and according to my config files i handle mail for mydomain.com so hand me the message.
- Google Server: Ok here is a message
- Receiving Server: Thanks, got it, BYE
?
?