ENUM Abfrage von der Kommandozeile

voipd

IPPF-Promi
Mitglied seit
5 Mai 2005
Beiträge
3,187
Punkte für Reaktionen
4
Punkte
38
Hallo zusammen,

entweder habe ich es uebersehen oder die Suchfunktion hat mich im Stich gelassen.
Anbei ein kleines Script um von der Kommandozeile ENUM Abfragen zu machen.
Das ist besonders hilfreich wenn man mehrere Enum Rufnummern hat, bzw. fuer Bekannte verwaltet und die Eintraege pruefen will. Eine kleine Schleife drumherum und schon hat man eine aktuelle Uebersicht der Daten, denn ich musste heute feststellen, dass eine Rufnummer nicht mehr registriert ist.

Wenn man den ENUM Eintrag der Rufnummer "+49 89 12345678" haben moechte muss man unter Linux folgendes eingeben:
Code:
nslookup -sil -type=naptr 8.7.6.5.4.3.2.1.9.8.9.4.e164.arpa
Da das nervt geht es so mit dem Script:
Code:
enumlookup 498912345678
Code:
#!/bin/bash
# Aufruf "enumlookup 498912345678"

nummer=$1                                    #Rufnummer als CML Parameter 1 uebernehmen
#nummer="491234567"                          #Debug mit fester Nummer
enum="e164.arpa"                             #Enum Domain die abgefragt werden soll
len=`expr length $nummer`                    #Bestimmt die Laenge der Rufnummer
estr=""                                      #Bereitet leeren Ausgabestring vor

for ((a=len; a>0; a=a-1))                    #Schleife zaehlt rueckwaerts ueber die Laenge
do
#echo "Index $a - ${nummer:a-1:1}"           #Debug
estr=$estr${nummer:a-1:1}"."                 #String wird Rueckwaerts mit Punkten zusammengebaut
done
estr=$estr$enum                              #Enum Domain anhaengen
echo "Rufnummer: +$nummer - Domain: $estr"   #Displayausgabe
#nslookup -sil -type=naptr $estr |grep 'naptr ='|cut -b 35-99|sort   #So passt die Ausgabe bei mir
nslookup -sil -type=naptr $estr              #Allgemeine Ausgabe die weiter bearbeitet werden kann

Nein ich bin kein Scriptgurulein, aber es laeuft!

Beispiel:
Code:
XYZ:~# ./enumlookup 494121269006
Rufnummer: +494121269006 - Domain: 6.0.0.9.6.2.1.2.1.4.9.4.e164.arpa
Server:         217.20.116.1
Address:        217.20.116.1#53

Non-authoritative answer:
6.0.0.9.6.2.1.2.1.4.9.4.e164.arpa       naptr = 130 10 "u" "E2U+msg" "!^.*$!mailto:[email protected]!" .
6.0.0.9.6.2.1.2.1.4.9.4.e164.arpa       naptr = 100 10 "u" "E2U+sip" "!^.*$!sip:[email protected]!" .
6.0.0.9.6.2.1.2.1.4.9.4.e164.arpa       naptr = 110 10 "u" "E2U+tel" "!^.*$!tel:+494121269006!" .
6.0.0.9.6.2.1.2.1.4.9.4.e164.arpa       naptr = 120 10 "u" "E2U+tel" "!^.*$!tel:+49190833937!" .

Authoritative answers can be found from:
6.0.0.9.6.2.1.2.1.4.9.4.e164.arpa       nameserver = ns-2.shlink.de.
6.0.0.9.6.2.1.2.1.4.9.4.e164.arpa       nameserver = ns-1.shlink.de.

Mit einem grep und cut kann sich jeder das Anzeigen lassen was er benoetigt. Das kann dann so aussehen:
Code:
XYZ:~#  ./enumlookup 494121269006
Rufnummer: +494121269006 - Domain: 6.0.0.9.6.2.1.2.1.4.9.4.e164.arpa
naptr = 100 10 "u" "E2U+sip" "!^.*$!sip:[email protected].
naptr = 110 10 "u" "E2U+tel" "!^.*$!tel:+494121269006!" .
naptr = 120 10 "u" "E2U+tel" "!^.*$!tel:+49190833937!" .
naptr = 130 10 "u" "E2U+msg" "!^.*$!mailto:[email protected]!" .
voipd.

PS: Unter Windows XP habe ich selbst bei der manuellen Abfrage kein gescheites Ergebnis bekommen.
 

Anhänge

  • enumlookup.zip
    614 Bytes · Aufrufe: 29
Zuletzt bearbeitet:
Geht auch einfacher: ;)

Code:
#!/bin/bash

host -t naptr `echo $1 | rev | sed -e "s/\\\([0-9]\\\)/\\1\./g"`e164.arpa
 
Geht noch einfacher: Mit einem Search-Plugin für den Firefox, da gibst Du einfach die Rufnummer im internationalen Format ein :mrgreen:

Wurde mal irgendwo hier im Forum vorgestellt, seitdem hab ich das hier in der Suchleiste integriert.

Wenn man auf diese Seite geht, findet sich unten rechts ein Link "Install search extension" damit kriegt man das automatisch in den Firefox eingebaut.
 
voipd schrieb:
Unter Windows XP habe ich selbst bei der manuellen Abfrage kein gescheites Ergebnis bekommen.

Das Windows XP 'bordeigene' nslookup scheint keine Abfrage von NAPTR Einträgen zu unterstützen. Das Paket BIND von ISC enthält eine nslookup.exe Version, die die Abfrage von NAPTR Einträgen unterstützt.

Mit nslookup.exe aus BIND Version 9.3.2 war eine Abfrage von e164.arpa und e164.org bei mir mit folgender Syntax möglich:
Code:
nslookup -querytype=naptr NUMMER SERVER
- Als NUMMER ist die 'Domain'-Schreibweise der Rufnummer zu verwenden (z.B. 8.7.6.5.4.3.2.1.9.8.9.4.e164.arpa für die Abfrage der Rufnummer +49 89 12345678 bei e164.arpa).
- Als SERVER habe ich die IP-Adresse der Fritz!Box verwendet (Standard: 192.168.178.1, 'fritz.box' geht auch).

P.S. Für gelegentliche ENUM Abfragen ist diese Seite IMHO besser geeignet ;) .
 
cool !

Hallo,

jawohl solch ein kleines Script für die Kommandozeile hab ich noch gesucht :)

Schöne Grüße

Olav
 
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.