--- email.inc.orig	2009-06-23 20:40:48.000000000 -0700
+++ email.inc	2009-06-23 21:05:02.000000000 -0700
@@ -144,6 +144,12 @@
   if (!empty($form_element['#value']) && !valid_email_address($form_element['#value'])) {
     form_error($form_element, t('%value is not a valid email address.', array('%value' => $form_element['#value'])));
   }
+  $domain = substr($form_element['#value'], strrpos($form_element['#value'], "@") + 1);
+  if ( !(checkdnsrr($domain,"MX") || checkdnsrr($domain, "A")) )
+  {
+    // domain not found in DNS
+    form_error($form_element, t('Domain %value doesn\'t exist in DNS. Did you make a mistake?', array('%value' => $domain)));
+  }
 }
 
 /**
