Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Frage Entwicklung Batch & Shell

GELÖST

Traceroute in Batch auswerten

Mitglied: BBUser

BBUser (Level 1) - Jetzt verbinden

22.01.2009, aktualisiert 11:26 Uhr, 7698 Aufrufe, 8 Kommentare

Hallo,

ich möchte in einer Batch prüfen, ob ein Host nach maximal n hops erreichbar ist.
Ist dies der Fall, ist alles besten. Wenn nach dem zweiten (oder n-ten) Hopp dieser Host nicht erreichbar ist möchte ich ein GOTO :irgendwas einfügen.

Das Tracert.log schaut ja z.B. so aus:

Start Trace at Do 22.01.2009 10:25:45,23

Tracing route to Servername.local [192.168.1.8]

over a maximum of 2 hops:

1 <10 ms <10 ms <10 ms 192.168.67.8

Trace complete.

In diesem Fall ist alles bestens. 192.168.67.8 wurde gefunden. Lässt sich dies über ein FIND, eventuell in doppelter Ausführung, lösen?


Gruss
Mitglied: dis4711
22.01.2009 um 12:49 Uhr
Hi,


also ich gehe mal davon aus, dass du schon einen guten Grund haben wirst warum du's nicht selbst mit einer socket mit entsprechender TTL ausprogrammieren willst (und falls du's nicht selbst programmieren willst - gibts eine Reihe von opensource-tools die genau das für einen machen und praktischerweise auch gut script-bar sind)...

...ausserdem bin ich mir nicht sicher für welches OS du das machen willst - aber zB könnte man das wie folgt machen:

traceroute ${MY_TARGET_IP} 2>/dev/null | grep ${MY_TARGET_IP} | awk '{ print $1; }'

...obigen Ausdruck könntest du dann in einer IF-Abfrage in deiner Shell auswerten. (Falls deine Frage für Windows gedacht war - sorry - aber auch dafür gibts sicherlich eine ähnliche Lösung... vielleicht konnte dir dann ja zumindest mein Beispiel einen 'Hinweis' geben wie man's lösen könnte.)


lG
Bitte warten ..
Mitglied: BBUser
22.01.2009 um 12:58 Uhr
Das ganze sollte in der Windows Commandline laufen. Also "Batch" kompatibel sein.

Gruss
Bitte warten ..
Mitglied: dis4711
22.01.2009 um 13:08 Uhr
Sorry - kenne mich mit der Windows Shell nicht aus.

(Aber wie du schon selbst gesagt hast - und wie's auch in meinem Beispiel oben gemacht ist - kann man mit FIND oder FINDSTR (google hat mir verraten, dass es für cmd sowas seit Windows XP gibt ) sicherlich den gleichen Effekt erzielen.)
Bitte warten ..
Mitglied: BBUser
22.01.2009 um 13:12 Uhr
Richtig.

aber bei einem erfolgreichen Trace gibts die "getracete" IP dann 2x. die Auswetung dieser Situation klappte bisher nicht. Einmal FIND ist ja kein Problem.

*Grübel ;)

Gruss
Bitte warten ..
Mitglied: 60730
22.01.2009 um 13:25 Uhr
Servus,

so als ungetestete Skizze in den Raum geworfen:

01.
tracert 192.168.67.8 |findstr "192.168.67.8">c:\test.txt  
02.
if %errorlevel%==0 echo Ziel gefunden 
03.
findstr /B /c:"  6" c:\test.txt && echo Dazu waren 6 Schritte nötig
Das ganze läßt sich auch prima in eine For Schleife einbinden und das gesuchte Ziel via %1 für beliebige Ziele benutzen.

und sähe dann so aus:

Aufruf mit schnippsel.cmd Ziel IP
01.
@echo off 
02.
@cls 
03.
@tracert %1 >c:\test.txt 
04.
@findstr "%1" c:\test.txt >c:\test.ini 
05.
@if %errorlevel%==0 @title Ziel %1 gefunden 
06.
@FOR /L %%i IN (1,1,10) DO ( 
07.
 	@findstr /B /c:"  %%i" c:\test.ini && @echo Dazu waren %%i Schritte notwendig 
08.
09.
del c:\test.txt 
10.
del c:\test.ini
Gruß
Bitte warten ..
Mitglied: BBUser
22.01.2009 um 14:09 Uhr
mhm,

hab daraus mal das gemacht...
Das mit dem %1 eins verstehe ich manchmal noch nicht so ganz.

Leider liefert die .bat so kein brauchbares Ergebnis.

::echo off
cls
tracert 192.168.1.8 >c:\test.txt
findstr "192.168.1.8" c:\test.txt >c:\test.ini
if %errorlevel%==0 @title Ziel %1 gefunden
FOR /L %%i IN (1,1,10) DO (
@findstr /B /c:" %%i" c:\test.ini && @echo Dazu waren %%i Schritte notwendig
)
del c:\test.txt
del c:\test.ini
pause
Bitte warten ..
Mitglied: 60730
22.01.2009 um 14:36 Uhr
Servus again,

Das mit dem %1 eins verstehe ich manchmal noch nicht so ganz.
Ist ganz einfach...
Aufruf mit schnippsel.cmd Ziel IP
%1 ist alles das, was nach der batch ohne Leerzeichen steht.
/edit und was hinter einem Leerzeichen steht wäre %2 und noch ein Leerzeichen mehr wäre %3 usw.
Bzw. %1 in der Dosbox und %%1 usw in der Batch
/edit
Rufst du die batch - so wie ich Sie geschrieben habe - mit batch.cmd 192.168.1.8 auf und das Ziel 192.168.1.8 ist innerhalb 10 Schritten gefunden - wird dir das angezeigt.

Wobei mir allerdings nicht wirklich in den Kopf will, wie eine interne Adresse mal mit 5 oder 6 Hops dazwischen antworten kann. Die sollten immer identisch sein, außer der Ping geht über ein VPN/MPLS oder ähnlich.

Wenn du die Batch so änderst - kommst du drauf, wie Sie läuft:
01.
@echo off 
02.
@cls 
03.
@if not "%1"=="" echo %1 wird gesucht  
04.
@tracert %1 >c:\test.txt 
05.
@Echo Log1 wird geöffnet - damit die Batch weiterläuft - Notepad schliessen 
06.
@Start /wait notepad c:\test.txt 
07.
@findstr "%1" c:\test.txt >c:\test.ini 
08.
@if %errorlevel%==0 @title Ziel %1 gefunden 
09.
@Echo Log2 wird geöffnet - damit die Batch weiterläuft - Notepad schliessen 
10.
@Start /wait notepad c:\test.ini 
11.
@FOR /L %%i IN (1,1,10) DO ( 
12.
 	@findstr /B /c:"  %%i" c:\test.ini && @echo Dazu waren %%i Schritte notwendig 
13.
14.
pause 
15.
del c:\test.txt 
16.
del c:\test.ini
Gruß
Bitte warten ..
Mitglied: BBUser
22.01.2009 um 14:47 Uhr
Hintergrund ist folgender:

Ich möchte prüfen ob Notebook Benutzer in unserem LAN sind, wenn sie ein bestimmtes Backupscript ausführen.
Bestimmte Systeme sind dann nur 1 oder 2 Hops entfernt. Sind die Nutzer z.B. per UMTS / VPN Verbunden gibt es mehr Hops,
Die Anzahl der Hops soll also mit als Kriterium dienen, um zu entscheiden "Ja der Nutzer ist am Standort X" oder eben nicht. Anschliessend soll dann das Backup laufen.
Der Tracert läuft dann übrigens zu einem vorher per .ini definierten Gateway.

Werde deine .bat gleich nochmal testen.

//edit funktioniert

Danke und Gruss
Bitte warten ..
Ähnliche Inhalte
Router & Routing
Traceroute erster Hop fehlt
Frage von griss2015Router & Routing7 Kommentare

Hallo, an was kann es liegen, wenn bei einem Traceroute der erste Router nicht aufgelistet wird? Es gibt an ...

Batch & Shell
txt Listen Auswerten per Batch-Datei
gelöst Frage von Ivowie97Batch & Shell8 Kommentare

Hallo Zusammen Ich habe zwei .txt Listen mit Werten drin, die ich mit einer Batch-Datei auswerten möchte. In der ...

Netzwerke
SFlows auswerten
Frage von cgicloudNetzwerke2 Kommentare

Hallo zusammen, bin gerade am Einrichten von sFlows. Das Einsammeln und Ausgeben der Flows an sich funktioniert problemlos. Allerdings ...

Router & Routing
Tracert (traceroute) zeig Server nicht als Knotenpunkt
gelöst Frage von sebastian2608Router & Routing6 Kommentare

Guten Abend, ich bin verzweifelt :D Vielleicht finde ich hier die Hilfe, die ich im Moment dringend benötige ^^ ...

Neue Wissensbeiträge
CPU, RAM, Mainboards

Meltdown und Spectre: Intel zieht Microcode-Updates für Prozessoren zurück

Information von keine-ahnung vor 44 MinutenCPU, RAM, Mainboards1 Kommentar

Moin, extrem lutztig. Nur gut, dass ich noch nicht beim Probanden-Bingo mitgemacht habe :-) LG, Thomas

Router & Routing

PfSense als Addon auf QNAP

Information von magicteddy vor 14 StundenRouter & Routing3 Kommentare

Moin, für Spielereien eine ganz nette Idee aber ich fürchte das soetwas auch als echte Firewall genutzt wird: In ...

Datenschutz

Teamviewer kommt für IoT-Geräte wie den Raspberry Pi

Information von magicteddy vor 20 StundenDatenschutz1 Kommentar

Moin, jetzt werden IoT Geräte endgültig zur Wanze? Anscheinend kann man auf einem Dashboard seine Geräte visualisieren Ich stelle ...

Microsoft

Letzte Updates für Win10 und Server2016 müssen bei Bedarf über den Update catalogue in den WSUS importiert werden!

Tipp von DerWoWusste vor 1 TagMicrosoft1 Kommentar

automatisch kommt da nichts an im WSUS und auch nicht im SCCM. Siehe Hinweise zum Bezug der jeweils neuesten ...

Heiß diskutierte Inhalte
Netzwerkmanagement
Preis für Wartungsvertrag ok?
gelöst Frage von a-za-zNetzwerkmanagement22 Kommentare

Hallo! Mal ne Frage, weil ich mich mit dem akzeptablen Preis für einen Reaktionszeitvertrag nicht auskenne. Meine Firma hat ...

Windows Netzwerk
Ist ein Portforwarding auf einen PC ohne lauschendes Programm ein (großes) Sicherheitsproblem?
Frage von PluwimWindows Netzwerk13 Kommentare

Hallo zusammen, zur Fernwartung eines Rechners an einem anderen Ort nutze ich VNC. Da dieser Rechner einfach nur eine ...

Multimedia & Zubehör
Welches Tablet für die Verkäufer?
Frage von Hendrik2586Multimedia & Zubehör11 Kommentare

Guten Morgen meine Lieben, vielleicht könnt ihr mir ja helfen. Es geht um unsere Außendienstmitarbeiter /Verkäufer. Sie sollen demnächst ...

Windows Server
Terminal Server 2016 erkennt Berechtigungen nicht
gelöst Frage von Thomas2Windows Server10 Kommentare

Hallo Administratoren, folgendes Problem stellt sich dar: Es gibt zwei Windows Server 2016, die als Terminal Server fungieren. Jetzt ...