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
GELÖST

Netzwerkerkennung per Batch

Frage Entwicklung Batch & Shell

Mitglied: SamTrex

SamTrex (Level 1) - Jetzt verbinden

14.05.2006, aktualisiert 17.05.2006, 7697 Aufrufe, 9 Kommentare

Hallo mal wieder!

Ich habe folgendes Problem:
Ich sitze an einem XP Pro Rechner in einem kleinen Netzwerk. Für die Anmeldung habe ich mir ein Batchfile gebastelt, welches mir meine Laufwerke wenn vorhanden verbindet.
Jetzt kommt es aber vor, das ich mit dem Rechner auch mal das Netzwerk wechsle.

Habe jetzt mal etwas rumprobiert...
Abfrage des Standartgateway via IPCONFIG

Um das Netzwerk in meinem Batch zu identifizieren... Allerdings finde ich die identifikation per IP nicht so richtig gut.
Kann ich nicht irgendwie den Router per MAC identifizieren? Denn der Standartgateway kann ja u.U. gleich sein.
Zudem gehe ich mal per Kabel mal per WLAN online.

Danke schon mal für die Hilfe!

MfG Sam
Mitglied: filippg
14.05.2006 um 21:09 Uhr
Hallo,

ein Auslesen der IP-Adresse des Standardgateways hast du bereits? Dann kannst du in der ARP-Tabelle anhand der IP-Adresse die MAC-Adresse des Standardgateways herausbekommen, der Befehl heisst einfach "arp". Um sicherzustellen, dass ein entsprechender Eintrag für das Gateway vorhanden ist (Einträge in die Tabelle werden erst bei Bedarf vorgenommen und in regelmässigen Abständen wieder gelöscht) solltest du das Gateway vorher nochmal pingen.

Filipp
Bitte warten ..
Mitglied: superboh
15.05.2006 um 02:01 Uhr
Hi,

ich hab mir so was auch mal "gebastelt". Allerdings viel einfacher gestrickt:

--- schnipp ---
@echo off
if exist "\\Winserver1\home" goto Verbinden
if not exist "\\Winserver1\home" goto Trennen
goto Ende

:Verbinden
net use h: \\Winserver1\home\thomas
net use k: \\Winserver1\daten
net use m: \\Winserver1\bilder
goto Ende

:Trennen
net use h: /delete
net use k: /delete
net use m: /delete
goto Ende

:Ende
exit
--- schnipp ---

Die Batch liegt im Autostart und wenn die Freigabe "home" auf dem Server mit dem Namen "Winserver1" gefunden wird, werden die Laufwerke verbunden, andernfall getrennt (falls noch vorhanden).
Dass es in einem andern Netz einen gleichen Server mit gleicher Freigabe gibt ist unwahrscheinlich.
Die Batch funktioniert egal ob ich per Kabel oder WLan verbunden bin.

Gruß,
Thomas
Bitte warten ..
Mitglied: SamTrex
15.05.2006 um 09:35 Uhr
Hallo nochmal und danke für die Vorschläge! Die Sache mit ARP ist genau das was ich gesucht habe!

Als kleine jedoch lange Info hab ich die Batch mal angehängt.
Ist für 3 User bei uns z.H. und für den Systemstart oder zwischendurch parametrierbar.
Falls jemand noch grundsäzliches an Tipps hat..... Bitte!

Danke nochmal!

MfG Sam



@ECHO OFF

:: NETZWERKKONFIGURATIONS-BATCH
:: NETZWERK: LNWA
:: v5.4

:: --------------------------------------------------PARAMETERCHECK

IF "%1"=="" (GOTO HELP)
IF /I "%1"=="DIRK" (GOTO CHECK_P2)
IF /I "%1"=="HATHOR" (GOTO CHECK_P2)
IF /I "%1"=="PEACEMAKER" (GOTO CHECK_P2)
GOTO HELPIP1

:CHECK_P2
IF NOT "%2"=="" (IF /I NOT "%2"=="SYSTEMSTART" (GOTO HELPIP2))
SET P1=%1
SET P2=%2

:: --------------------------------------------------START

IF /I "%P2%"=="SYSTEMSTART" title Warte auf Dienste ...
IF /I "%P2%"=="SYSTEMSTART" SLEEP 10
IF /I "%P2%"=="SYSTEMSTART" title Vorhandene Netzwerkverbindungen
NET USE /p:no >NUL
IF /I "%P2%"=="" (IF /I "%P1%"=="DIRK" (FOR %%i IN (B L M N O P Q R S T U) DO NET USE %%i: /del >NUL 2>NUL))
IF /I "%P2%"=="" (IF /I "%P1%"=="HATHOR" (FOR %%i IN (N O P Q) DO NET USE %%i: /del >NUL 2>NUL))
IF /I "%P2%"=="" (IF /I "%P1%"=="PEACEMAKER" (FOR %%i IN (N O P Q) DO NET USE %%i: /del >NUL 2>NUL))

:: --------------------------------------------------INTERNET PR?FEN

title Internet prfen ...
ping www.google.de -n 1 -w 100 >NUL 2>NUL
if not errorlevel 1 (SET INTERNET= Internet: OK) ELSE (SET INTERNET= Internet: N/A)
if not errorlevel 1 goto PROGRAMME
if errorlevel 1 goto LNWA

:PROGRAMME
IF /I "%P1%"=="DIRK" (TASKLIST |FIND /I "TRILLIAN.EXE" >NUL 2>NUL)
IF /I "%P1%"=="DIRK" (IF "%ERRORLEVEL%"=="1" (IF EXIST C:\Programme\Trillian\Trillian.exe (START /B C:\Programme\Trillian\Trillian.exe)))

:: --------------------------------------------------LAUFWERKE VERBINDEN

:LNWA
IF /I "%P1%"=="DIRK" (IF /I "%P2%"=="SYSTEMSTART" (IF EXIST E:\Memo.txt (START MEMO.EXE show 2>NUL)))
title LNWA: Laufwerke werden verbunden


:: MEDIACENTER

SET MEDIACENTER= Laufwerke an MediaCenter:
ping 192.168.0.3 -n 1 -w 1 >NUL 2>NUL
if "%errorlevel%"=="1" (goto MEDIACENTER_ENDE)
IF /I "%P1%"=="DIRK" (NET USE B: \\192.168.0.3\Verwaltung >NUL 2>NUL) & (DIR B: >NUL 2>NUL) & (IF "%ERRORLEVEL%"=="0" (SET MEDIACENTER=%MEDIACENTER% B)
NET USE N: \\192.168.0.3\Eingehend >NUL 2>NUL & (DIR N: >NUL 2>NUL) & (IF "%ERRORLEVEL%"=="0" (SET MEDIACENTER=%MEDIACENTER% N)
NET USE O: \\192.168.0.3\Auditorium >NUL 2>NUL & (DIR O: >NUL 2>NUL) & (IF "%ERRORLEVEL%"=="0" (SET MEDIACENTER=%MEDIACENTER% O)
NET USE P: \\192.168.0.3\Theater >NUL 2>NUL & (DIR P: >NUL 2>NUL) & (IF "%ERRORLEVEL%"=="0" (SET MEDIACENTER=%MEDIACENTER% P)
NET USE Q: \\192.168.0.3\Lektorat >NUL 2>NUL & (DIR Q: >NUL 2>NUL) & (IF "%ERRORLEVEL%"=="0" (SET MEDIACENTER=%MEDIACENTER% Q)
:MEDIACENTER_ENDE
IF /I "%MEDIACENTER%"==" Laufwerke an MediaCenter:" (SET MEDIACENTER=)

:: ONLINESERVER

SET ONLINESERVER= Laufwerke an OnlineServer:
ping 192.168.0.4 -n 1 -w 1 >NUL 2>NUL
if "%errorlevel%"=="1" (goto ONLINESERVER_ENDE)
IF /I "%P1%"=="DIRK" (NET USE L: \\192.168.0.4\Web >NUL 2>NUL) & (DIR L: >NUL 2>NUL) & (IF "%ERRORLEVEL%"=="0" (SET ONLINESERVER=%ONLINESERVER% L)
IF /I "%P1%"=="DIRK" (NET USE M: \\192.168.0.4\Intern >NUL 2>NUL) & (DIR M: >NUL 2>NUL) & (IF "%ERRORLEVEL%"=="0" (SET ONLINESERVER=%ONLINESERVER% M)
SET LASER= HP LaserJet 1100 ist verfgbar
:ONLINESERVER_ENDE
IF /I "%ONLINESERVER%"==" Laufwerke an OnlineServer:" (SET ONLINESERVER=)

:: NOTEBOOK

IF /I NOT "%P1%"=="DIRK" (GOTO NOTEBOOK_ENDE)
SET NOTEBOOK= Laufwerke an NoteBook:
ping 192.168.0.5 -n 1 -w 1 >NUL 2>NUL
if "%errorlevel%"=="1" (goto NOTEBOOK_ENDE)
NET USE R: \\192.168.0.5\C$ >NUL 2>NUL & (DIR R: >NUL 2>NUL) & (IF "%ERRORLEVEL%"=="0" (SET NOTEBOOK=%NOTEBOOK% R)
NET USE S: \\192.168.0.5\D$ >NUL 2>NUL & (DIR S: >NUL 2>NUL) & (IF "%ERRORLEVEL%"=="0" (SET NOTEBOOK=%NOTEBOOK% S)
:NOTEBOOK_ENDE
IF /I "%NOTEBOOK%"==" Laufwerke an NoteBook:" (SET NOTEBOOK=)

:: HP PSC 2610

ping 192.168.0.10 -n 1 -w 1 >NUL 2>NUL
if "%errorlevel%"=="1" (goto HPPSC_ENDE)
IF /I "%P1%"=="DIRK" (NET USE K: \\192.168.0.10\memory_card >NUL 2>NUL & (DIR K: >NUL 2>NUL) & (IF "%ERRORLEVEL%"=="0" (SET HPPSC= Laufwerke an HP PSC 2610: K))
IF /I NOT "%P1%"=="DIRK" (SET HPPSC= HP PSC 2610 ist verfgbar)
:HPPSC_ENDE


:: --------------------------------------------------NETZWERK?BERSICHT

title Netzwerkstatus I %DATE% I %TIME:~0,5% I
cls
echo.
echo Eingerichtet fr: %P1%
IF DEFINED P2 (echo Typ: %P2%)
echo.
echo.
IF DEFINED INTERNET (echo %INTERNET%)
echo.
IF DEFINED MEDIACENTER (echo %MEDIACENTER%)
IF DEFINED ONLINESERVER (echo %ONLINESERVER%)
IF DEFINED NOTEBOOK (echo %NOTEBOOK%)
IF DEFINED SILVERFOX (echo %SILVERFOX%)
echo.
echo.
IF DEFINED HPPSC (echo %HPPSC%)
IF DEFINED LASER (echo %LASER%)
echo.
SLEEP 15
GOTO :EOF


:HELPIP1
cls
echo.
echo Parameter [1] wurde entweder falsch angegeben,
echo oder ist nicht in der Liste unter USERNAME eingetragen!
GOTO HELP

:HELPIP2
cls
echo.
echo Parameter [2] wurde falsch angegeben!
GOTO HELP

:HELP
echo.
echo Syntrax: LNWA [1] [2]
echo.
echo [1] USERNAME
echo [DIRK]
echo [HATHOR]
echo [PEACEMAKER]
echo.
echo [2] [SYSTEMSTART]
echo.
echo Soll die Anwendung im laufenden Betrieb starten,
echo entf?llt [2].
echo.
PAUSE >NUL
GOTO :EOF
Bitte warten ..
Mitglied: Biber
15.05.2006 um 10:37 Uhr
Moin SamTrex,

kleiner Verbesserungsvorschlag:

Alle Sequenzen
... & (IF "%ERRORLEVEL%"=="0" (
kannst und musst Du kürzer schreiben als simples
&&

Beispiel hier:
NET USE P: \\192.168.0.3\Theater >NUL 2>NUL & (DIR P: >NUL 2>NUL) & (IF "%ERRORLEVEL%"=="0" (SET MEDIACENTER=%MEDIACENTER% P)

-------> das letzte IF "%ERRORLEVEL%"=="0" ...würde den Errorlevelwert zu Beginn der Zeile, vor Start des NET USE-Kommandos liefern.
Das willst Du aber nicht, sondern Du meintest ja den Errorlevelwert der DIR-Anweisung.

Also besser so:
NET USE P: \\192.168.0.3\Theater >NUL 2>NUL & (DIR P: >NUL 2>NUL) && SET MEDIACENTER=%MEDIACENTER% P:

Grüße
Biber
Bitte warten ..
Mitglied: SamTrex
15.05.2006 um 17:15 Uhr
Hallo Biber,
Das && steht demnach für wenn Fehlerfrei ausgeführt dann.... Seh ich das richtig?

Besten Dank für den Tipp!
Bitte warten ..
Mitglied: Biber
15.05.2006 um 18:21 Uhr
Jepp, SamTrex

&& bedeutet "logisches UND", sprich: der vorangegangene Befehl muss OHNE Fehler, mit Errorlevel 0 beendet worden sein.


Das einfache "&" wie von Dir verwendet, beinhaltet gar keine logische Verknüpfung, sondern heißt soviel wie "mache danach auf jeden Fall..."
Also egal, ob der voran gegangene Befehl erfolgreich war oder ins Mett gehauen hat.

Grüße
Biber
Bitte warten ..
Mitglied: SamTrex
16.05.2006 um 22:04 Uhr
Hallo Biber,
ich habe da leider doch ein kleines Problem mit der Umsetzung von dem &&.

Wenn ich jetzt den Router auf MAC checken will habe ich folgendes geschrieben:

(PING xxx.xxx.xxx.xxx >NUL 2>NUL) && (ARP -a xx-xx-xx-xx-xx-xx |FIND /I "xx-xx-xx-xx-xx-xx") && (SET LAN=EXTERN)

Wenn ich den Befehl so in der Batch laufen lasse wird der Parameter %LAN% nie gesetzt.
Woran liegt das???

Besten Dank
Sam
Bitte warten ..
Mitglied: Biber
17.05.2006 um 08:28 Uhr
Moin SamTrex,

Du musst, wenn dieser Oneliner in einem Batch ist, das Pipe-Zeichen ("|") maskieren.
......&& (ARP -a xx-xx-xx-xx-xx-xx ^|FIND /I "xx-xx-xx-xx-xx-xx") && ...

Gruß
Biber
Bitte warten ..
Mitglied: SamTrex
17.05.2006 um 18:00 Uhr
...das Pipe-Zeichen ("|") maskieren.
......&& (ARP -a xx-xx-xx-xx-xx-xx ^|FIND /I "xx-xx-xx-xx-xx-xx") && ...

Hm, ich hatte da einen kleinen Fehler in meiner Beschreibung, wie mir gerade aufgefallen ist. Es heißt: ...&& (ARP -a |FIND /I "xx-xx-xx-xx-xx-xx") && ....

In diesem Fall dann: ...&& (ARP -a ^|FIND /I "xx-xx-xx-xx-xx-xx") && ....
Wenn ich das so als Batch laufen lasse beschwert sich ARP.

???
Aber danke für Deine Geduld Biber!

Gruß Sam
Bitte warten ..
Ähnliche Inhalte
Windows Netzwerk
Netzwerkerkennung über NCSI.txt
Frage von ribrobWindows Netzwerk11 Kommentare

Hallo, vor folgendem Problem stehe ich: - Windows-Netzwerk mit ca 200 Clients (Win7 Prof. 64Bit) - einige Clients haben ...

LAN, WAN, Wireless
Windows Netzwerkerkennung: Problem bei VPN
Frage von FirewireLAN, WAN, Wireless4 Kommentare

Hallo Kollegen, ich habe folgendes Problem auf einem Windows 7 Prof. Notebook: Auf dem Gerät soll die Einwahl ins ...

Windows Server
Netzwerkerkennung unter Windows Server 2012R2
Frage von FirewireWindows Server3 Kommentare

Hallo Zusammen, ich stehe gerade vor folgendem Problem. Kunde soll einen neuen Server bekommen mít Windows Server 2012R2. Dieser ...

Windows Server
Netzwerkerkennung über VPN-Verbindungen ausschalten bzw. deaktivieren
gelöst Frage von KLinnebankWindows Server7 Kommentare

Moin beisammen, ich habe folgendes Anliegen: Zwei Standorte sind über eine VPN-Verbindung zweier Draytek-Router miteinander verbunden. Alles läuft super. ...

Neue Wissensbeiträge
Batch & Shell

Open Object Rexx: Eine mittlerweile fast vergessene Skriptsprache aus dem Mainframebereich

Information von Penny.Cilin vor 1 TagBatch & Shell9 Kommentare

Ich kann mich noch sehr gut an diese Skriptsprache erinnern und nutze diese auch heute ab und an noch. ...

Humor (lol)

"gimme gimme gimme": Automatischer Test stolpert über Easter Egg im man-Tool

Information von Penny.Cilin vor 1 TagHumor (lol)6 Kommentare

Interessant, was man so alles als Easter Egg implementiert. Ist schon wieder Ostern? "gimme gimme gimme": Automatischer Test stolpert ...

MikroTik RouterOS

Mikrotik - Lets Encrypt Zertifikate mit MetaROUTER Instanz auf dem Router erzeugen

Anleitung von colinardo vor 1 TagMikroTik RouterOS8 Kommentare

Einleitung Folgende Anleitung ist aus der Lage heraus entstanden das ein Kunde auf seinem Mikrotik sein Hotspot Captive Portal ...

Sicherheit

Sicherheitslücke in HP-Druckern - Firmware-Updates stehen bereit

Information von BassFishFox vor 1 TagSicherheit1 Kommentar

Ein weiterer Grund, dass Drucker keinerlei Verbindung nach "auswaerts" haben sollen. Unter Verwendung spezieller Malware können Angreifer aus der ...

Heiß diskutierte Inhalte
Off Topic
Fachkräftemangel in Deutschland? - Talentschmiede schreibt alle 2 Tage die gleichen Stellen aus
Frage von Penny.CilinOff Topic12 Kommentare

Hallo, haben wir in Deutschland Fachkräftemangel? Die Talentschmiede schreibt gefühlt alle zwei Tage dieselben Stellen aus. Und das schon ...

Windows Server
Windows Store Apps
gelöst Frage von PeterleBWindows Server11 Kommentare

Gibt es einen Weg, auf Windows Server 2016 Windows Store Apps wie zum Beispiel die HP Smart App zu ...

Microsoft Office
Outlook Cache Mode Frage
Frage von GwaihirMicrosoft Office11 Kommentare

Hallo zusammen, bin gerade neu in der Firma und lerne hier einige neue Dinge kennen. Zum Beispiel, dass die ...

Microsoft
Erfahrungen mit Webcam over RDP gesucht
Frage von DerWoWussteMicrosoft10 Kommentare

Moin Kollegen. Bekanntlich kann man Webcams nur mit Drittanbietersoftware in RDP reinschleifen. Was nutzt Ihr dazu? Wie stabil funktioniert ...