wescraven07
Goto Top

Batch für Verbindungscheck und VPN anpassen

Hallo Leude,

habe mir mit Hilfe eine Batch zusammengebaut, die bei Start einen Verbindungscheck ausführt und bei Bedarf VPN aufbaut und Netzlaufwerke mappt.
Das funktioniert auch gut, jetzt benötige ich eine Art continue der batch, dass die batch nochmal bzw, solange ausgeführt wird, überhaupt eine Netzwerkverbindung besteht.

Also kurz formuliert:

Wenn ich das Netbook boote und es noch nicht in einem Netzwerk angemeldet ist, soll das script in einer schleife ausgeführt werden, bis eine Netzwerkverbindung besteht und die eigenlichen Funktionen ausgeführt werden.

das kann auch so aussehen, dass gleich am anfang geprüft wird, ob eine Verbindung besteht und wenn nicht, solange in einer Schleife geprüft wird, bis eben eine Verbindung besteht und dann das eigentliche Script ausgeführt wird.

Das Script ist dieses hier:

@echo off
ping -n 5 127.0.0.1 >nul
ECHO Hallo , Ihre Verbindung wird geprueft, bitte warten Sie...
PING -n 3 Serverip |findstr "TTL">nul && (
ECHO Sie sind im Netzwerk. Es ist keine VPN-Verbindung noetig.
ping -n 3 127.0.0.1 >nul
ECHO Ihre Netzwerkordner werden verbunden
ping -n 3 127.0.0.1 >nul
net use k: \\Server\Daten
net use L: \\Server\Daten2
net use m: \\Server\Daten3/persistent:no
ping -n 3 127.0.0.1 >nul
ping -n 3 127.0.0.1 >nul
ECHO Sie sind nicht im Netzwerk
ECHO VPN-Einwahl wird gestartet ...
rasdial "VPN" Nutzer passwort
ping -n 3 127.0.0.1 >nul
ECHO Ihre Netzwerkordner werden verbunden...
ping -n 3 127.0.0.1 >nul
net use k: \\Server\Daten
net use L: \\Server\Daten2
net use m: \\Server\Daten3/persistent:no
)

Wäre prima, wenn mir jemand hier weiterhelfen kann.

Freu mich auf eure Tips

Greetz der Wes

Content-Key: 224965

Url: https://administrator.de/contentid/224965

Printed on: April 20, 2024 at 14:04 o'clock

Member: schmitzi
schmitzi Dec 19, 2013 at 17:58:41 (UTC)
Goto Top
hmm, ich glaube ich habe das Problem nicht verstanden (?)
Member: Endoro
Endoro Dec 19, 2013 at 19:17:15 (UTC)
Goto Top
Hey, dein Script prüft doch schon, ob eine Netzverbindung steht; wenn nicht, wird das VPN aufgebaut.
lg.
Member: wescraven07
wescraven07 Dec 20, 2013 at 08:05:13 (UTC)
Goto Top
Ok, dann beschreibe ich es besser.

Das Script an sich funktioniert wunderbar.

Folgendes ist jetzt der Fall:

Wenn ich mit dem Notebook in einem bis Dato fremden Netzwerk bin oder unterwegs und dementsprechend nicht automatisch in einem Netzwerk eingebunden beim Start, wird das Script ausgeführt, und gibt eine Fehlermeldung zurück, da ich ich ja in keinem Netzwerk bin und das Script einmalig aus dem Autostart ausgeführt wird.

Ich möchte jetzt folgende Funktion hinzufügen:

Wenn das Script beim Start ausgeführt wird und ich befinde mich "noch nicht" in einem Netzwerk oder Hotspot, soll das Script keinen Fehler ausgeben und gestoppt werden, sondern einfach in einer Schleife wiederholt ausgeführt werden, bis eine Netzerkverbindung besteht und die eingentlichen Funktionen des Scriptes durch geführt werden.

Nochmal so zur Verdeutlichung:

PC wird hochgefahren und ist nicht im Netzwerk:

Script wird ausgeführt und gib eigentlich eine Fehlemeldung aus, das Script führt aber statt dessen alle Schritte nochmal durch, bis ich mich im Netzwerk oder Hotspot angemeldet habe, Scritp führt die normalen Aktionen durch.
Member: SaschaRD
SaschaRD Dec 20, 2013 updated at 10:39:32 (UTC)
Goto Top
Hallo Wes,

versuche Mal dieses hier:
@echo off

:: Laufwerksangabe
set K=K: "\\Server\Daten"  
set L=L: "\\Server\Daten2"  
set M=M: "\\Server\Daten3/persistent:no"  

:aufanfang
:: Ping Aufruf -n"Anzahl der Echo Aufrufe".  
ping -n 5 localhost >NUL

echo Hallo, Netzwerkverbindung wird ueberprueft, bitte warten..
:: Verbindung zum Server herstellen.
ping -n 3 SERVERIP >NUL 
IF ERRORLEVEL = 1 (
	echo Verbindung zum Server nicht moeglich, gehe zu VPN-Einwahl..
	goto VPN
	) ELSE (
		echo Verbindung zum Server war erfolgreich!
		echo Binde die Laufwerke an:
		net use %K% | echo Binde %K% an.
		net use %L% | echo Binde %L% an.
		net use %M% | echo Binde %M% an.
	)
exit	
:VPN
:: Sprungziel, wenn die Verbindung zum Server nicht erfolgreich war.
echo VPN-Einwahl wird gestartet..
rasdial "VPN" Nutzer Passwort >NUL  
IF ERRORLEVEL = 1 (
	echo VPN-Einwahl ist nicht moeglich, gehe zu erneut
	goto erneut
	) ELSE (
		echo VPN-Einwahl war erfolgreich!
		echo Binde die Laufwerke an:
		net use %K% | echo Binde %K% an.
		net use %L% | echo Binde %L% an.
		net use %M% | echo Binde %M% an.
	)
exit
:erneut
:: Sprungziel, wenn die VPN-Einwahl ebenfalls fehlschlägt.
Alternative hier eine FOR-Schleife einbauen! Oder es mit 
goto aufanfang
durchführen.

Musst natürlich dann noch deine "Werte/IPs" einfügen.
Bei Fragen, bitte melden
Gruß, Sascha