Scannen verschiedener IP-Bereiche
Hallo zusammen,
ich habe hier ein kleines Problem, bei dem ich nicht mehr weiter komme.
Es soll von mehreren Rechnern die in unseren Anlagen verbaut sind ein Backup des integrierten vxworks-Controller gemacht werden.
Der Controller hat immer die IP 10.173.xxx.1 und das Betriebssystem - hier Windows XP - die 10.173.xxx.2.
Da das dritte IP-Oktett immer anders sein kann, habe ich ein Skript zum Scannen der MCs erstellt.
Scan_IPs.cmd
Die MCs.txt wird dann später eingelesen und entsprechend das Backup ausgeführt.
Das funktioniert auch so weit.
MCs.txt
Scan_IPs.cmd
In der MC_Backup.cmd hole ich mir dann die Daten per FTP vom Controller und zippe sie zusammen.
Allerdings hätte ich noch jetzt gerne die entsprechende Projektnummer in das anschließend Zip-File im Namen integriert.
Die Nummer ist bei uns im Computernamen verankert und kann da ausgelesen werden.
Das sollte dann in etwa so aussehen:
%Projektnummer%_%MC_Backup_Anlage_Datum%.zip
Leider weiß ich nicht wie ich das genau hier unterbringen kann - so dass bei dem Aufruf des Backupscripts auch der Computernamen bzw. die Projektnummer des jeweiligen Rechners mitgeht.
Ich hoffe das ich es nicht allzu kompliziert erklärt habe und hoffe das ihr mir da weiterhelfen könnt.
Thx
GW
ich habe hier ein kleines Problem, bei dem ich nicht mehr weiter komme.
Es soll von mehreren Rechnern die in unseren Anlagen verbaut sind ein Backup des integrierten vxworks-Controller gemacht werden.
Der Controller hat immer die IP 10.173.xxx.1 und das Betriebssystem - hier Windows XP - die 10.173.xxx.2.
Da das dritte IP-Oktett immer anders sein kann, habe ich ein Skript zum Scannen der MCs erstellt.
Scan_IPs.cmd
:: Settings
Set IP=10.173
Set Log=MCs.txt
:: Delete log file
If Exist %Log% Del %Log%
:: 1.Start IP, 2.Size of scan step, 3.End IP (D = Third Oktett)
For /L %%D In (0,1,150) DO (
:: 1.Start IP, 2.Size of scan step, 3.End IP (V = Forth Oktett)
For /L %%V In (1,1,1) Do (
ping -n 1 -w 5 %IP%.%%D.%%A|find "TTL=" && Echo %IP%.%%D.%%V>> %Log%
)
)
Die MCs.txt wird dann später eingelesen und entsprechend das Backup ausgeführt.
Das funktioniert auch so weit.
MCs.txt
::All available IPs
10.173.110.1
Scan_IPs.cmd
:Read IPs
:: All available IPs
For /F "tokens=1,*" %%i In (%Log%) Do Call :Action %%i
:Action
If /I "%1" == "10.173.110.1" Goto Machine1
If /I "%1" == "" Goto NoMachine
Goto :EOF
:Machine1
Set Name=Machine1
Call MC_Backup.cmd %Name% %1
In der MC_Backup.cmd hole ich mir dann die Daten per FTP vom Controller und zippe sie zusammen.
Allerdings hätte ich noch jetzt gerne die entsprechende Projektnummer in das anschließend Zip-File im Namen integriert.
Die Nummer ist bei uns im Computernamen verankert und kann da ausgelesen werden.
Das sollte dann in etwa so aussehen:
%Projektnummer%_%MC_Backup_Anlage_Datum%.zip
Leider weiß ich nicht wie ich das genau hier unterbringen kann - so dass bei dem Aufruf des Backupscripts auch der Computernamen bzw. die Projektnummer des jeweiligen Rechners mitgeht.
Ich hoffe das ich es nicht allzu kompliziert erklärt habe und hoffe das ihr mir da weiterhelfen könnt.
Thx
GW
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 189553
Url: https://administrator.de/contentid/189553
Ausgedruckt am: 26.11.2024 um 08:11 Uhr
8 Kommentare
Neuester Kommentar
Hallo,
das 1. solte so fungtionieren ;)
Bei 2. hab ich leider noch keinen Ansatz
Grüße
Darkprodukt
das 1. solte so fungtionieren ;)
:: Settings
Set IP=10.173
Set Log=MCs.txt
:: Delete log file
If Exist %Log% Del %Log%
:: 1.Start IP, 2.Size of scan step, 3.End IP (D = Third Oktett)
For /L %%D in (0,1,150) do ping -n 1 -w 5 %IP%.%%D.1|find "TTL=" && Echo %IP%.%%D.1>>%Log%
Bei 2. hab ich leider noch keinen Ansatz
Grüße
Darkprodukt
Hallo Ghost-Worker,
ich sage es mal lieber gleich, ich habe Code schreiben und scripten gar keinen plan, also bitte nicht durchdrehen.
Es gibt ein Programm von ColaSoft das heißt MacScanner und listet Dir alle IP Adressen, Mac Adressen und Hostnamen von einem Netzwerk auf wie z.B. 192.168.1.0 /24 und dann kann es das Ergebnis in eine Textdatei exportieren! Es gibt doch Programme die sich minimiert starten lassen mittels eines Kommandos
na und wenn das auch bei dem MacScanner geht dann kann dein Script ja das Programm anweisen und das Ergebnis in eine Textdatei exportieren lassen. Dann Hast Du die IP / MAC / Hostnamen in einer Textdatei!
Ok Du müsstest natürlich dein Script wohl anweisen erst einen Ordner zu erstellen mit dem derzeitigen Projektnamen, dann die IP Adressen nach und nach aus dieser Textdatei holen lassen und dann
soll es doch mal den Rest der benötigten Daten von diesem Windows XP Computer der zu dieser IP Adresse gehört holen und zum Schluss den dazugehörigen Hostnamen wieder aus der Textdatei holen und fertig. Das wird dann in einer Textdatei die den Hostnamen oder die IP Adresse trägt gespeichert in dem Projektordner gespeichert. Oder ganz wie Du das haben willst und möchtest.
Allerdings hat das auch noch einen Haken, der MacScanner ließt auch die IP / MAC / Hostnamen der Drucker, Scanner und anderer Geräte aus und die haben ja keinen vxworks-Controller und ich weiß auch nicht wie viele davon im Netz sind, aber wenn es nur ein paar sind kann man doch bestimmt mit if name
HP.. then drop IP und das Script läuft weiter durch ohne diese zu beachten.
In 6 Sekunden ca. 80 IP´s / MAC´s / Hostnamen, ich denke der Scanner ist flott.
Falls das nicht funktioniert ein Entschuldigung fürs Zeit stehlen!
Bis dann D.o.b.b.y
ich sage es mal lieber gleich, ich habe Code schreiben und scripten gar keinen plan, also bitte nicht durchdrehen.
Es gibt ein Programm von ColaSoft das heißt MacScanner und listet Dir alle IP Adressen, Mac Adressen und Hostnamen von einem Netzwerk auf wie z.B. 192.168.1.0 /24 und dann kann es das Ergebnis in eine Textdatei exportieren! Es gibt doch Programme die sich minimiert starten lassen mittels eines Kommandos
na und wenn das auch bei dem MacScanner geht dann kann dein Script ja das Programm anweisen und das Ergebnis in eine Textdatei exportieren lassen. Dann Hast Du die IP / MAC / Hostnamen in einer Textdatei!
Ok Du müsstest natürlich dein Script wohl anweisen erst einen Ordner zu erstellen mit dem derzeitigen Projektnamen, dann die IP Adressen nach und nach aus dieser Textdatei holen lassen und dann
soll es doch mal den Rest der benötigten Daten von diesem Windows XP Computer der zu dieser IP Adresse gehört holen und zum Schluss den dazugehörigen Hostnamen wieder aus der Textdatei holen und fertig. Das wird dann in einer Textdatei die den Hostnamen oder die IP Adresse trägt gespeichert in dem Projektordner gespeichert. Oder ganz wie Du das haben willst und möchtest.
Allerdings hat das auch noch einen Haken, der MacScanner ließt auch die IP / MAC / Hostnamen der Drucker, Scanner und anderer Geräte aus und die haben ja keinen vxworks-Controller und ich weiß auch nicht wie viele davon im Netz sind, aber wenn es nur ein paar sind kann man doch bestimmt mit if name
HP.. then drop IP und das Script läuft weiter durch ohne diese zu beachten.
In 6 Sekunden ca. 80 IP´s / MAC´s / Hostnamen, ich denke der Scanner ist flott.
Falls das nicht funktioniert ein Entschuldigung fürs Zeit stehlen!
Bis dann D.o.b.b.y