Anteilige IP als Systemvariable per Batch
Hallo,
ich bin noch relativ neu in dem Bereich, und habe da mal eine Frage:
Ich benötige einen Befehl, der mit optimaler Weise die IP-Adresse eines Servers im Netzwerk ausließt, diese variiert aber endet immer auf 2.
Bsp:
ip=xxx.xxx.xxx.2
das wiederum sollte als "host" definiert werden.
set host=xxx.xxx.xxx.2
Wenn das geht.
Alternativ sollte die IP des Benutzers der LAN-Verbindung (kein WLAN oder Bluetooth-Adapter, welche ebenfalls aktiv sind) ausgelesen werden. Davon aber nur die ersten 3 Teilbereiche.
ipLAN=123.456.789.xxx
Die ersten 3 Teilbereiche sollten als Variable "LNetz" zusammengefasst werden und die Endung wieder auf xxx.xxx.xxx.2 fest vorgegeben sein.
Bsp:
%LNetz.2%
Diese Varialbe mit Endung sollte dann wiederum als "host" definiert werden
Hoffe ich hab mich verständlich ausgedrückt. Geht das und wenn ja wie ?? =)
ich bin noch relativ neu in dem Bereich, und habe da mal eine Frage:
Ich benötige einen Befehl, der mit optimaler Weise die IP-Adresse eines Servers im Netzwerk ausließt, diese variiert aber endet immer auf 2.
Bsp:
ip=xxx.xxx.xxx.2
das wiederum sollte als "host" definiert werden.
set host=xxx.xxx.xxx.2
Wenn das geht.
Alternativ sollte die IP des Benutzers der LAN-Verbindung (kein WLAN oder Bluetooth-Adapter, welche ebenfalls aktiv sind) ausgelesen werden. Davon aber nur die ersten 3 Teilbereiche.
ipLAN=123.456.789.xxx
Die ersten 3 Teilbereiche sollten als Variable "LNetz" zusammengefasst werden und die Endung wieder auf xxx.xxx.xxx.2 fest vorgegeben sein.
Bsp:
%LNetz.2%
Diese Varialbe mit Endung sollte dann wiederum als "host" definiert werden
Hoffe ich hab mich verständlich ausgedrückt. Geht das und wenn ja wie ?? =)
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 210891
Url: https://administrator.de/forum/anteilige-ip-als-systemvariable-per-batch-210891.html
Ausgedruckt am: 21.04.2025 um 19:04 Uhr
8 Kommentare
Neuester Kommentar
Hallo xWuffix und willkommen im Forum!
Hat denn der Server auch einen Namen?
Für die Alternativ-Variante könntest Du mal als Ausgangspunkt diesen Beitrag nehmen ...
Grüße
bastla
Hat denn der Server auch einen Namen?
Für die Alternativ-Variante könntest Du mal als Ausgangspunkt diesen Beitrag nehmen ...
Grüße
bastla
Hallo xWuffix!
Grüße
bastla
Und wie bekomme ich nun die ausgegebene IP in eine Variable?
Na so:for /f "tokens=2 delims=" %%a in ('ping -n 1 -4 %COMPUTERNAME% ^| find /I "%COMPUTERNAME%"') do set "IP=%%a"
Ich muss vielleicht noch dazu sagen, dass die Batch-Datei auf den Clients ausgeführt werden soll UND am Server.
So what?Grüße
bastla
Hallo xWuffix!
Falls Du die gefundene Adresse wie oben beschrieben noch anpassen willst (auf "2" im letzten Oktett), könntest Du ggf in Friemlers Tutorial zur FOR-Schleife noch Hinweise finden.
Grüße
bastla
so müsste es jetzt eigentlich klappen oder?:
Das "Es" hast Du bis jetzt ja noch gar nicht beschrieben - allerdings steht in %host% so immer die Adresse des Rechners, auf dem der Batch ausgeführt wird, was den "ping
" vergleichsweise unnötig erscheinen lässt ...Falls Du die gefundene Adresse wie oben beschrieben noch anpassen willst (auf "2" im letzten Oktett), könntest Du ggf in Friemlers Tutorial zur FOR-Schleife noch Hinweise finden.
Grüße
bastla
Moin xWuffix,
trotz allem willkommen im Forum.
Ich hätte es zwar anders formuliert, aber ich sehe auch dieselben drei Ungereimtheiten, die vor einem Abschluss dieses Beitrags noch mehrfaches Nachfragen erfordern werden.
Nur für den Fall, dass bastla zu vorsichtig formuliert haben sollte, versuche ich noch mal zu übersetzen, was uns fehlt.
--> hier steht bei bastla ein gedankliches " - also mach es bitte endlich!" dahinter, falls du es nicht wahrgenommen hast.

Grüße
Biber
trotz allem willkommen im Forum.
Ich hätte es zwar anders formuliert, aber ich sehe auch dieselben drei Ungereimtheiten, die vor einem Abschluss dieses Beitrags noch mehrfaches Nachfragen erfordern werden.
Nur für den Fall, dass bastla zu vorsichtig formuliert haben sollte, versuche ich noch mal zu übersetzen, was uns fehlt.
--> hier steht bei bastla ein gedankliches " - also mach es bitte endlich!" dahinter, falls du es nicht wahrgenommen hast.
allerdings steht in %host% so immer die Adresse des Rechners, auf dem der Batch ausgeführt wird,
... was daran liegt, dass du bestimmt nicht die (immer vorhandene) Variable %COMPUTERNAME% anpingen willst, sondern eine selbst vergebene %MeinServername% - aber die wird noch nirgends gesetzt, was den "
Okay, ich hätte es eher eher mit einem Filmzitat aus "Inside Man" gesagt:ping
" vergleichsweise unnötig erscheinen lässt ..."Es stellt sich die Frage nach dem 'Warum?'.
Die Antwort ist einfach:: 'Weil ich es kann.' "
Aber die Formulierung "vergleichsweise unnötig erscheinen lässt" hat bestimmt auch manchem den Montach gerettet. Die Antwort ist einfach:: 'Weil ich es kann.' "
Grüße
Biber