Gibt es einen Webservice oder eine Datenbank im Web für alle Top-Level Domains?
Hallo,
Wir haben in unserer Kunden-Datenbank eine Menge E-Mail Adressen, leider auch mit Tippfehlern bei der Top-Level-Domain.
Da MX-Record Abfragen häufig nicht zufriedenstellend funktionieren, wollen wir zumindest die Fehler in der Top-Level-Domain Endung bereinigen.
Mittlerweile gibt es aber unzählige von .de, .com bis .mobil, . xyz usw.
Man kommt da schon gar nicht mehr hinterher, geschweige denn ein Mitarbeiter.
Frage:
Gibt es im Internet irgendwo eine Datenbank, Verzeichnis, Web-Service den man real-time Fragen kann, bzw. wo man sich die Endung regelmäßig zum verarbeiten herunterladen kann?
Wenn jemand weitere schaue funktionierende E-Mail Validierungen kennt wäre ich auch dankbar.
Wir setzen bis jetzt regular expression, und Bounce-Auswertungen ein.
Bei MX-Record Abfragen bekommen wir leider zu oft falsche aussagen, vor allem bei den großen Provider wie .gmx etc., da diese solche Abfragen nicht zulassen.
Besten Dank,
Rene
Wir haben in unserer Kunden-Datenbank eine Menge E-Mail Adressen, leider auch mit Tippfehlern bei der Top-Level-Domain.
Da MX-Record Abfragen häufig nicht zufriedenstellend funktionieren, wollen wir zumindest die Fehler in der Top-Level-Domain Endung bereinigen.
Mittlerweile gibt es aber unzählige von .de, .com bis .mobil, . xyz usw.
Man kommt da schon gar nicht mehr hinterher, geschweige denn ein Mitarbeiter.
Frage:
Gibt es im Internet irgendwo eine Datenbank, Verzeichnis, Web-Service den man real-time Fragen kann, bzw. wo man sich die Endung regelmäßig zum verarbeiten herunterladen kann?
Wenn jemand weitere schaue funktionierende E-Mail Validierungen kennt wäre ich auch dankbar.
Wir setzen bis jetzt regular expression, und Bounce-Auswertungen ein.
Bei MX-Record Abfragen bekommen wir leider zu oft falsche aussagen, vor allem bei den großen Provider wie .gmx etc., da diese solche Abfragen nicht zulassen.
Besten Dank,
Rene
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 244984
Url: https://administrator.de/forum/gibt-es-einen-webservice-oder-eine-datenbank-im-web-fuer-alle-top-level-domains-244984.html
Ausgedruckt am: 09.04.2025 um 10:04 Uhr
15 Kommentare
Neuester Kommentar
Hallo Rene,
http://www.iana.org/domains/root/db
Die IANA bietet auch einen WHOIS Service auf Port 43 an: whois.iana.org. Diesen kann man mit Anfragen füttern, und bekommt dann eine entsprechende Rückmeldung.
Für die Abfrage kannst du z.B. folgendes Powershell-Script verwenden: http://poshcode.org/4405
Oder ein vereinfachtes Script das je nach Erfolg True oder False zurückgibt:
Die Function lässt sich dann mit der TLD als Parameter aufrufen, und liefert $true zurück wenn die TLD gefunden wurde, ansonsten $false. Bei einem Fehler liefert sie "ERROR" zurück.
Grüße Uwe
http://www.iana.org/domains/root/db
Die IANA bietet auch einen WHOIS Service auf Port 43 an: whois.iana.org. Diesen kann man mit Anfragen füttern, und bekommt dann eine entsprechende Rückmeldung.
Für die Abfrage kannst du z.B. folgendes Powershell-Script verwenden: http://poshcode.org/4405
Oder ein vereinfachtes Script das je nach Erfolg True oder False zurückgibt:
function get-tld {
<#
.SYNOPSIS
Query IANA ROOT-TLD Whois Server
.DESCRIPTION
Check if a TLD exists. If YES the function returns TRUE otherwise FALSE. On Error it returns "ERROR"
.EXAMPLE
get-tld -query "de"
.PARAMETER query
The TLD to search
#>
param(
[parameter(mandatory=$true)][ValidateNotNullOrEmpty()][string]$query
)
end{
Try {
$query = $query.Trim()
$client = new-object System.Net.Sockets.TcpClient "whois.iana.org",43
$stream = $client.GetStream()
$data = [System.Text.Encoding]::Ascii.GetBytes($query + "`r`n")
$stream.Write($data,0,$data.Length)
$reader = New-Object System.IO.StreamReader $stream, [System.Text.Encoding]::ASCII
$response = $reader.ReadToEnd()
if ($response -match 'This Query returned (\d+) objects?'){
if ([int]$matches[1] -gt 0 ){
$response
$result = $true
}else{
Write-host "Die TLD '$query' existiert nicht!" -ForegroundColor Yellow
$result = $false
}
}else{
$response
$result = "ERROR"
}
}
catch [System.Exception] {
write-host $_ -ForegroundColor Red
$result = "ERROR"
}
finally{
$stream.Close()
$stream.Dispose()
$client.Close()
$client.Dispose()
}
return $result
}
}
get-tld "de"
Da gibts ne ganze Latte an Webservices: http://blog.mashape.com/list-of-25-email-validation-apis/
Um die Echheit einer Mailadresse zu überprüfen, bleibt am Ende leider nur eine Mail an die Adresse zu schicken. Wenn sie nicht existiert oder fehlerhaft ist, bekommt man einen Unzustellbarkeitsbericht, den man auswerten könnte, allerdings würde man die echten Mailadressen vollspammen, was nicht sehr seriös wäre.
Ich würde hier, wenn es um eine Registrierung geht, eher zum Opt-IN Opt-Out Verfahren mit einer Bestätigungsmail an
den Kunden greifen, dann brauchst du diese Überprüfungsroutine der Mailadresse nicht. Der Kunde muss auf einen Link in der Mail klicken um den Dienst zu aktivieren.
Filtere die Mails grob aus, und lass den Rest so, ist doch kein Problem wenn die ins Nirvana laufen. Diese Mailadressen kannst du dann aus den Logs fischen, korrigieren, feddich.
Grüße Uwe
den Kunden greifen, dann brauchst du diese Überprüfungsroutine der Mailadresse nicht. Der Kunde muss auf einen Link in der Mail klicken um den Dienst zu aktivieren.
Filtere die Mails grob aus, und lass den Rest so, ist doch kein Problem wenn die ins Nirvana laufen. Diese Mailadressen kannst du dann aus den Logs fischen, korrigieren, feddich.
Grüße Uwe
Na ja, nslookup verhält sich zu ping wie Telefonbuch zu Telefon. Wenn ich im Telefonbuch nach der Nummer von Herrn Müller nachschaue, dann weis ich zwar das er die Nummer 12345 hat, aber erst mit dem Telefon kann ich überprüfen, ob er auch wirklich erreichbar ist.
Mit nslookup überprüfe ich erst einmal, ob überhaupt die Domain existiert, bevor ich Datenpakete wild durch die Gegend schicke.
Mit nslookup überprüfe ich erst einmal, ob überhaupt die Domain existiert, bevor ich Datenpakete wild durch die Gegend schicke.
Wenn ich dann E-Mails mit NICHT erreichbaren Subdomains über Ping haben, könnte ich diese dann definitiv als alte nicht erreichbare E-Mails löschen?
PING(ICMP)-Anfragen kann ein Admin auf seiner Firewall blockieren, damit kannst du also keine richtige Aussage treffen !! Versuch mal administrator.de zu pingen Grüße Uwe