Feedback

C# - MX Record einer Domain mit nslookup ermitteln

Veröffentlicht von am 3/10/2011
(1 Bewertungen)
Ein MX-Record (http://de.wikipedia.org/wiki/MX_Resource_Record) enthält die Adressen der E-Mail-Server einer Domain. Diese Adressen braucht ein MTA (http://de.wikipedia.org/wiki/Mail_Transfer_Agent), um E-Mails zum Empfänger wiederzuleiten. Der MX Record ist auf dem Nameserver einer Domain hinterlegt. Dieser wird im Snippet per nslookup abgefragt.
public static String[] GetMxRecordsByDomain(String domain)
{
    ProcessStartInfo start = new ProcessStartInfo("nslookup");
    start.RedirectStandardOutput = true;
    start.UseShellExecute = false;
    start.Arguments = "-type=MX " + domain;

    Process nslookup = Process.Start(start);

    List<String> output = new List<String>();
    List<String> mx = new List<String>();

    while (!nslookup.StandardOutput.EndOfStream)
    {
        output.Add(nslookup.StandardOutput.ReadLine());
        if (output.Last().Contains("mail exchanger = "))
        {
            mx.Add(output.Last().Remove(0, output.Last().IndexOf("mail exchanger = ") + "mail exchanger = ".Length));
        }
    }

    return mx.ToArray();
}
Abgelegt unter dns, mx record, domain, nslookup.

Kommentare zum Snippet

 

Logge dich ein, um hier zu kommentieren!