Kategorien
Windows

Nameserver abfragen in Windows Systemen

Du kannst unter Windows nslookup verwenden um DNS-Einträge abzufragen.

Um nslookup zu starten öffnest Du zuerst den Ausführen Dialog. Drücke gleichzeitig die Tasten [⊞ Win] + [R]. Es erscheint ein Eingabefeld “Öffnen”. Gib den Programmnamen ‘nslookup‘, ‘nslookup.exe’ oder ‘C:\Windows\System32\ nslookup.exe’ ein. Schließe die Eingabe mit dem drücken der Taste [enter] oder dem Klick auf den Knopf [OK] ab.

Es erscheint der nslookup-Dialog mit folgenden Ausgabe:

Standardserver: google-public-dns-a.google.com
Address: 8.8.8.8

> _

Du hast direkt die Möglichkeit mit der Eingabe einer Domain, in der beim nslookup Aufruf erschienenen Shell, die A- und die AAAA-Records der eingegebenen Domain abzufragen.:

> loteks.de
Standardserver:  google-public-dns-a.google.com
Address:  8.8.8.8

Nicht autorisierende Antwort:
Name:    loteks.de
Address:  178.254.44.129

> google.de
Standardserver:  google-public-dns-a.google.com
Address:  8.8.8.8

Nicht autorisierende Antwort:
Name:    google.de
Addresses:  2a00:1450:400e:80b::2003
          172.217.17.67

Du kannst mit der Eingabe einer IP-Adresse in dieser nslookup-Shell auch den PTR Record zu der eingegebenen IP-Adresse anzeigen lassen.:

> 178.254.44.129
Server:  google-public-dns-a.google.com
Address:  8.8.8.8

Name:    s01.angststalt.de
Address:  178.254.44.129

Mit Eingabe von “server IP-ADRESSE” kann in den folgenden Anfragen auch ein anderer Nameserver angefragt werden. Beispielsweise kann mit der Eingabe von “server 85.214.20.141” der Nameserver des digitalcourage e.V. verwendet werden.
Alternativ kann bei der Anfrage des A-Records für die Domain auch der Nameserver als zweite Option übergeben werden “Domain Nameserver“.

Um andere DNS-Einträge als den A- bzw. AAAA-Record zu erfragen kann vor der Frage am nslookup mittels “set querytype=” oder kürzer “set q=” der zu liefernde Record übergeben werden:

Die interessanten Optionen für q= habe ich in der folgenden Tabelle hinterlegt:

A, ANY
fragt den A und AAAA Record ab (default option)
TXTTXT-Record abfragen (z.B. SPF und Domainkey)
SOASpecifies the start-of-authority for a DNS zone.
PTR
Specifies a computer name if the query is an IP address
MX
Specifies the mail exchanger
NS
Specifies a DNS name server for the named zone
CNAME
Specifies a canonical name for an alias.

Bei einer entsprechenden Abfrage des MX-Records ergibt sich die folgende Ausgabe im nslookup Dialog.:

> set q=mx
> loteks.de
Server:  [8.8.8.8]
Address:  8.8.8.8

Nicht autorisierende Antwort:
loteks.de       MX preference = 100, mail exchanger = s01.angststalt.de

Sollte bei einer Abfrage verboten werden sollen das der nameserver andere Nameserver befragt kann mittels “set norecurse” die Anfrage auf den aktuell angegebenen Nameserver begrenzt werden. Diese Limitierung kann mittels “set recurse” wieder aufgehoben werden.

Kategorien
Linux Windows

Textdateien mit Windows & DOS Zeilenumbrüchen für Linux korrigieren

Shellscripte mit Windows / DOS Zeilenumbrüchen funktionieren leider nur eingeschränkt unter Linux. Die einfache Zeile “wget bla” in einer Textdatei mit DOS Zeilenumbrüchen führt zu der Fehlermeldung das die Datei “bla%0D” nicht gefunden wurde.
Dies entsteht da die Linux Zeilenumbrüche nur aus einem Zeilenumbruch-Zeichen (newline[\n]) bestehen. Unter DOS und Windows steht am ende jeder Zeile vor dem Zeilenumbruch-Zeichen noch ein Wagenrücklauf-Zeichen (carriage return [CR, \r, 0x0d}). (Merkhilfe für die Reihenfolge beim Zeilenumbruch return)

Ich habe mit mehrere Beispiele herausgesucht wie die Zeilenumbrüche korrigiert werden können.

Die Original Datei:

$ cat infile
Hallo
Tschues

Der Inhalt der Datei:

$ od -c infile
0000000 H a l l o \r \n T s c h u e s \r \n
0000020

Die mir bekannten Varianten die Zeilenumbrüche in der Datei zu korrigieren:

dos2unix (Der Standard weg um die Zeilenumbrüche umzuwandeln!)

$ cat infile |dos2unix |od -c
0000000 H a l l o \n T s c h u e s \n
0000016

Umwandlung mit Hilfe von sed (stream editor):

$ cat infile | sed 's/\r$//' | od -c
0000000 H a l l o \n T s c h u e s \n
0000016

Wenn es auch kein sed auf dem System geben sollte geht auch tr:

$ cat infile|tr -d '\r'|od -c
0000000 H a l l o \n T s c h u e s \n
0000016

oder awk:

$ cat infile| awk '{sub("\r$", ""); print}' | od -c
0000000 H a l l o \n T s c h u e s \n
0000016

und in Perl:

$ cat infile| perl -pe 's/\r//'|od -c
0000000 H a l l o \n T s c h u e s \n
0000016

im Editor vi und vim geht es mit folgender Eingabe:
:%s/\r//g
oder
:1,$ s/^M//

Es gibt noch viele weitere Möglichkeiten!
Ich freue mich über Deinen Kommentar, welche Möglichkeit Du gefunden hast die Zeilenumbrüche zu korrigieren!

Kategorien
Windows

Windows Schriftart ohne Administratorrechte

Um unter Windows eine neue Schriftart zu verwenden muss diese Installiert sein. Leider ist die Installation von Schriftarten unter Windows eine Aufgabe des Administrators und ohne Administrator Rechten nicht möglich.

Es ist mit einer kleinen Software möglich Schriftarten temporär unter Windows zu registrieren. Die Schriftarten bleiben bis zur Abmeldung oder dem Neustart des Computers verfügbar.

Das fragliche Werkzeug heisst “RegisterFonts” und kann hier heruntergeladen werden.
Bei Interesse findest Du den Quellcode hier! In dem Zip-Container ist ein “Microsoft Visual Studio 2008” Projekt welches den kurzen c++ Quellcode des Projets enthält. (Die Datei enthält ohne header und leerzeilen nur 61 Zeilen)

Um Schriftarten unter Windows ohne die dazugehörigen Rechte zu beauftragen Entpacke die Zip-Datei RegisterFont.zip in einen Ordner und lege die Dateien der gewünschten Schriftarten in den gleichen Ordner.

Klicke mit der rechten Maustaste auf die Datei “RegisterFont.exe” and wähle “Verknüpfung erstellen” aus.

Nun klicke mit der rechten Maustaste auf die neu entstandene Verknüpfung und wähle “Eigenschaften” aus. In dem Eingabefeld “Ziel” geben Sie dann nach dem Dateiname “RegisterFont.exe” noch zusätzlich die Zeichenfolge “add” gefolgt von den Dateinamen der Schriftarten, mit Leerzeichen getrennt an.

In meinem Beispiel gebe ich die Schriftarten 1979.ttf und 28days.ttf ein.
Dies sieht unter Windows7 bei mir wie folgt aus.:

Schriftart mit RegisterFonts einstellen Fenster unter Windows 7

Um die Schriftarten zu laden reicht ein doppelklick auf die Verknüpfung.

Wenn die Schriftarten beim Start von Windows automatisch geladen werden sollen kann die Verknüpfung im Startmenü in den “Autostart” Ordner verschoben oder kopiert werden.

Kategorien
Linux Windows

iperf nutzen die Netzwerkgeschwindigkeit zu ermitteln

TCP Netzwerk-Geschwindigkeit via iPerf zwischen einem Windows und einem Linux Server prüfen.

Unter Windows den iPerf-Server starten

C:\iperf>iperf.exe -s
------------------------------------------------------------
Server listening on TCP port 5001
TCP window size: 64.0 KByte (default)
------------------------------------------------------------

durch die Option -s startet iperf im Servermodus und lauscht auf Port 5001. Alternativ kann via -p oder –port ein Port angegeben werden auf dem iperf lauschen soll.

Unter Linux mit dem iPerf Client auf den Server zugreifen

[root@LinuxTest ~]# iperf -c 10.0.0.5
------------------------------------------------------------
Client connecting to 10.0.0.5, TCP port 5001
TCP window size: 16.0 KByte (default)
------------------------------------------------------------
[  3] local 10.0.0.4 port 47326 connected with 10.0.0.5 port 5001
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0-10.0 sec   308 MBytes   258 Mbits/sec

Interval: Wie lange der Test ausgeführt wurde
Transfer: Welche Datenmenge übertragen wurde
Bandwidth: Die bei der Übertragung erreichte Bandbreite

Auch hier kann wieder mit der Option -p oder –port der Port angegeben werden den iperf verwenden soll.

iPerf startet dann eine Netzwerkverbindung zum angegebenen Server und überträgt Zufallsdaten.

iPerf ist aktuell für Windows, Linux, Android, MacOS X, FreeBSD, OpenBSD, NetBSD, VxWorks und Solaris verfügbar.

Download des Quellcodes unter https://iperf.fr/

Kategorien
Windows

Hörbücher vom mp3 nach AAC umwandeln

Ich versuche mich hier an einer einfach zu folgenden Anleitung nach der das umwandeln eines im mp3 Format gespeicherten Hörbuchs in das AAC Format jedem gelingen Sollte.

Vorbereitungen

Voraussetzungen das dies gelingt sind zwei Tools, der Nero AAC Encoder und das Tool “sox”.:

In meinem Beispiel habe ich die im Ordner “win32” des Zip-Archives NeroAACCodec-1.5.1.zip enthaltene Datei “neroAacEnc.exe” auf einen USB Stick “e:” entpackt. Die Datei sox-14.4.2-win32.zip entpackte ich ebenfalls nach “e:” und benannte den entstandenen Ordner “sox-14.4.2” um in “sox”, das ist schneller zu tippen.

SOX kann leider nicht ohne weiteres mp3 Dateien lesen. In das SOX-Verzeichnis muss noch die Bibliothek LibMAD (Lib Mpeg Audio Decoder) kopiert werden, welche unter dem folgenden Link gefunden werden kann:
http://ossbuild.googlecode.com/svn/trunk/Shared/Build/Windows/Win32/bin/libmad-0.dll

Für den Fall das wir irgendwann einmal mp3 Dateien mit Sox erzeugen möchten brauchen wir auch die Biblithek mp3 Lame Encoder. Diese wird genau wie die LibMAD direkt in das Verzeichnis sox auf Laufwerk e: kopiert.
http://ossbuild.googlecode.com/svn/trunk/Shared/Build/Windows/Win32/bin/libmp3lame-0.dll

mp3 in Wave Dateien “Entpacken”

Hörbuch Ordner mit e: auf das Laufwerk des Hörbuchs wechseln, im Anschluss mit cd “hörbuch” in den Hörbuch Ordner wechseln und die beiden Ordner “mp3” und “wav” anlegen.

mkdir mp3 wav

Im Anschluss die mp3 Dateien in den Ordner mp3 verschieben:

move *.mp3 mp3

Die MP3 Dateien entpacken, hier wird je nach Länge des Hörbuchs sehr viel Platz beanschlagt, um die 10 MB je Minute Audiomaterial.

FOR %A IN ("mp3\*.mp3") DO e:\sox\sox.exe "%A" "wav\%~nA.wav"

Wave Dateien AAC Codieren

Nach dem das Audiomaterial wieder entpackt vorliegt kann der nero AAC Encoder NeroAacEnc auch wieder etwas mit dem Material anfangen. Mit der folgenden Schleife werden alle auf “.wav” endenden Dateien von neroAacEnc in das aktuelle Verzeichnis als .aac Datei mit einer Qualität von 0,25 gespeichert.:

FOR %A IN ("wav\*.wav") DO e:\neroAacEnc.exe -q .25 -if "%A" -of "%~nA.aac"

Die Dateierweiterung “.aac” hat es keine nähere bewandnis. Die legitimen Dateierweiterungen für das MPEG-2 Dateiformate der Ausgabedatei sind .aac, .3gp, .mp4, .m4a, .m4b, .mpg und .mpeg jedoch spielt die Dateierweiterung für den Inhalt der Datei keine Rolle.

Zusatzinformationen

Ich habe mit dem zusammenzufügen der AAC Dateien und mit Kapietelmarkern und Covern in den zusammengefügten Audiobüchern experimentiert, genau wie dies im “m4b” Audiobook Format von Apple vorgesehen ist. Leider bietet dies keine vorteile im von mir präferierten “Smart AudioBook Player”

Kategorien
Linux Windows

Für jede Datei Namens…

Um wiederholt gleiche Befehle für mehrere Dateien auszuführen kann das folgende Snippet verwendet werden.

Unter Windows

FOR %A IN ("D*.avi") DO mkvmerge.exe -o "%~nA.mkv" "%A"
  • %A ist die verwendete Variable, sie nimmt Nacheinander den Dateinamen der gefundenen Dateien an.
  • “D*.avi” ist der Suchausdruck, welcher auf alle zu verwendenden Dateien, und nur auf diese, zutreffen muss (Fängt mit einem Großen “D” an, dann kommen beliebig viele beliebige Zeichen, Der Dateiname endet mit der Zeichenfolge “.avi”)
  • nach dem “DO” folgt der wiederholt auszuführende Befehl, hier mkvmerge
  • der Ausgabename der Datei (-o) ist gleich dem der Eingabedatei (%A), die Dateiendung wird weggelassen und “.mkv” wird dem Dateinamen angehängt
  • Die Anführungsstriche ermöglichen Leerzeichen in den Dateinamen, ohne würden die Leerzeichen als nächster Befehl gedeutet.

Linux

find . -iname "D*.avi" | while read A; do
 B=$(/usr/bin/basename "$A" .avi);
 mkvmerge -o "$B".mkv "$A";
done
  • Zeile1
    • Schleifenanfang mit “find” zur Aufzählung aller Dateinamen die mit einem “D” beginnen dem beliebig viele beliebige Zeichen folgen und mit “.avi” enden.
    • “-iname” Groß/Kleinschreibung wird beim Vergleich berücksichtigt, alternativ “-name” wenn dies nicht gewünscht ist
  • Zeile2
    • Der Dateiname sind um die Dateierweiterung “.avi” gekürzt
  • Zeile3
    • mkvmerge ausführen, Ausgabe-Dateiname ist der Name der Eingabedatei mit der Dateierweiterung “.mkv”
  • Zeile4
    • Ende der Schleife