nslookup for validate e-mail

Da hat mich Chef doch mal wieder auf eine Interessante Idee gebracht. Um zu überprüfen ob eine E-Mail Adresse existiert, haben wir einen nslookup auf den MX Eintrag der Domain gemacht. So finden wir heraus ob eine E-Mail überhaupt zugestellt werden kann.

Dies könnte man jetzt noch weiter übertreiben, indem man eine Verbindung nach 25 aufmacht und testet ob der Empfänger existiert. Dies ist aber auf Grund von Graylisting und co. nicht möglich.

function nslookupMX($email)
{
  list($user,$domain) = split("@",$email);
  //TODO: NSLOOKUP php function nutzen
  exec('nslookup -q=mx '. $domain, $nslookup);
  // Non-authoritative answer
  // NXDOMAIN
  foreach($nslookup as $value)
  {
    // Schlüssel wörter von nslookup feddora 9 ggf. anpassen. 
    if(strpos($value, 'NXDOMAIN') || strpos($value, 'Non-authoritative'))
    {
      return false;
    }
  }
  return true;
}

Beispiel Code! Code so nicht im Einsatz! Durch die excec function ist die function anfällig für hecking.

Tags: