You don't have a MX record on the root of your domain (i.e. no record with Type
MX and Name
@), so any emails inbound to
email@example.com will fallback to the server indicated by the A record at the root of your domain, which now points to your server B. No wonder you are not receiving email!
So the problem is not with POP access between the email client and server A; it's that incoming emails from the world are not directed to server A in the first place.
The MX record with Name
smtp would only apply to emails sent to
firstname.lastname@example.org, so it's probably a red herring.
You need the A record of the
@ to point to server B, but the MX record of the
@ to server A. HTTP access is directed by the A records only; it will completely ignore any MX records.
An email delivery, on the other hand, will first look on the MX records: it only falls back to directly using A records if an applicable MX record doesn't exist. A MX record will indirectly use the A records by specifying the name of the A record to look up for email delivery purposes.
You'll need to create the following MX record:
smtp.your.domain (i.e. the fully-qualified domain name of your server A), and priority
priority value is not very important when you have just one email server, but setting it to 10 allow you to easily add a new record with either higher or lower priority in the future, if it ever becomes necessary.)
Wait for an hour for the old DNS data to expire, and then your incoming email should work again. You might even get all the mail that was left undelivered after you made your DNS change, within a day or so.