Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

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

Script zum wechseln der IP-Adresse mehrerer IP-Adressbereiche

Frage Entwicklung Batch & Shell

Mitglied: 91630

91630 (Level 1)

28.06.2010, aktualisiert 30.06.2010, 4842 Aufrufe, 6 Kommentare

Im Unternehmen sollen mehrere IP-Adressbereiche umgestellt werden. Nun bastel ich an einem Script was das den alten Adressbereich ausliest und je nach Ergebnis eine neue IP Adresse setzt.

Hallo zusammen,

ich möchte in meinem Unternehmen Computer von einem IP-Adressbereich in einen anderen umziehen. Dabei ist es wichtig das ein gewisses Schema eingehalten wird. Damit meine ich:
Alte IP: 192.168.1.x soll in den Bereich 192.168.100.x überführt werden.
Alte IP: 192.168.2.x soll in den Bereich 192.168.200.x überführt werden.
Alte IP: 192.168.3.x soll in den Bereich 192.168.300.x überführt werden, usw.

Dafür habe ich mir ein Script überlegt, welches so aber noch nicht ganz rund funktioniert:
01.
for /F "tokens=13,*" %%i in ('ipconfig^|find "IP-Ad"') do set IP=%%j  
02.
echo %IP%>c:\ip.txt 
03.
 
04.
 
05.
echo %IP% 
06.
for /f "tokens=1 delims=." %%a in (C:\ip.txt) do set ip1=%%a 
07.
echo %ip1% 
08.
for /f "tokens=2 delims=." %%a in (C:\ip.txt) do set ip2=%%a 
09.
echo %ip2% 
10.
for /f "tokens=3 delims=." %%a in (C:\ip.txt) do set ip3=%%a 
11.
echo %ip3% 
12.
for /f "tokens=4 delims=." %%a in (C:\ip.txt) do set ip4=%%a 
13.
echo %ip4% 
14.
 
15.
 
16.
if %ip3%==1 ( goto gw100 ) 
17.
if %ip3%==2 ( goto gw200 ) 
18.
if %ip3%==3 ( goto gw300 ) 
19.
 
20.
 
21.
:gw100  
22.
netsh interface ip set address "LAN-Verbindung" static %ip1%.%ip2%.100.%ip4% 255.255.255.0 192.168.100.1 1 
23.
 
24.
:gw200  
25.
netsh interface ip set address "LAN-Verbindung" static %ip1%.%ip2%.200.%ip4% 255.255.255.0 192.168.200.1 1 
26.
 
27.
:gw300  
28.
netsh interface ip set address "LAN-Verbindung" static %ip1%.%ip2%.300.%ip4% 255.255.255.0 192.168.300.1 1
Das Problem ist das jede Zeile vom Script abgearbeitet wird, d.h. in diesem Fall wird die IP-Adresse dreimal hintereinander geändert.
Was mache ich da genau falsch?


Vielen Dank für Eure Hilfe

Stefan
Mitglied: 60730
28.06.2010 um 18:39 Uhr
moin,
Zitat von 91630:
01.
for /F "tokens=13,*" %%i in ('ipconfig^|find "IP-Ad"') do set IP=%%j  
02.
echo %IP%>c:\ip.txt 
03.
echo %IP% 
04.
 
05.
for /f "tokens=1 delims=." %%a in (C:\ip.txt) do set ip1=%%a 
06.
echo %ip1% 
07.
for /f "tokens=2 delims=." %%a in (C:\ip.txt) do set ip2=%%a 
08.
echo %ip2% 
09.
for /f "tokens=3 delims=." %%a in (C:\ip.txt) do set ip3=%%a 
10.
echo %ip3% 
11.
for /f "tokens=4 delims=." %%a in (C:\ip.txt) do set ip4=%%a 
12.
echo %ip4% 
13.
 
14.
 
15.
if %ip3%==1 ( goto gw100 ) 
16.
if %ip3%==2 ( goto gw200 ) 
17.
if %ip3%==3 ( goto gw300 ) 
18.
echo dieser Rechner ist in einem IP Bereich, fuer den dieses Script nicht erdacht wurde 
19.
echo ich breche ab.... 
20.
pause 
21.
goto end  
22.
  
23.
:gw100  
24.
netsh interface ip set address "LAN-Verbindung" static %ip1%.%ip2%.100.%ip4% 255.255.255.0 192.168.100.1 1 
25.
echo hier fehlt entweder 
26.
echo exit  
27.
echo oder 
28.
echo goto end 
29.
 
30.
:gw200  
31.
netsh interface ip set address "LAN-Verbindung" static %ip1%.%ip2%.200.%ip4% 255.255.255.0 192.168.200.1 1 
32.
  
33.
:gw300  
34.
netsh interface ip set address "LAN-Verbindung" static %ip1%.%ip2%.300.%ip4% 255.255.255.0 192.168.300.1 1 
35.
:end 
36.
ping %computername% -n1 -a >c:\ip.txt


wobei das nur deine Version um den Bock beseitigt ist. Ich würds ganz anders machen.....


Gruß
Bitte warten ..
Mitglied: 91630
28.06.2010 um 19:46 Uhr
Mhm danke.
Ich arbeite zum ersten Mal mit If-Bedinungen. Also kann ich für mich festhalten: Jeder Einstiegspunkt braucht eine End-Anweisung?
Na fürs erste Mal gehts ja dann

Wie würdest Du den Wechsel vornehmen?
Bitte warten ..
Mitglied: 60730
28.06.2010 um 20:44 Uhr
Zitat von 91630:
Mhm danke.
Ich arbeite zum ersten Mal mit If-Bedinungen. Also kann ich für mich festhalten: Jeder Einstiegspunkt braucht eine End-Anweisung?
ja, aber andersherum, nicht jede if anweisung braucht einen einstiegspunkt.
Und auch das ist nur ein Weg, von denen es viele gibt......
01.
if %ip3%==1 netsh interface ip set address "LAN-Verbindung" static %ip1%.%ip2%.100.%ip4% 255.255.255.0 192.168.100.1 1 
02.
if %ip3%==2 netsh interface ip set address "LAN-Verbindung" static %ip1%.%ip2%.200.%ip4% 255.255.255.0 192.168.200.1 1 
03.
if %ip3%==3 netsh interface ip set address "LAN-Verbindung" static %ip1%.%ip2%.300.%ip4% 255.255.255.0 192.168.300.1 1
Na fürs erste Mal gehts ja dann

Wie würdest Du den Wechsel vornehmen?
Anhand der Mac Adresse Aber jetzt nehme ich erstmal feste Nahrung auf...

Gruß
Bitte warten ..
Mitglied: 2hard4you
28.06.2010 um 21:14 Uhr
Zitat von 91630:
Alte IP: 192.168.3.x soll in den Bereich 192.168.300.x überführt werden, usw.


Moin,

sorry, hast Du IPv5? - eine 300er bei maximal 255

Respekt

wie wäre es mit, sich mal hinsetzen und erst mal nachdenken??

Danke

24
Bitte warten ..
Mitglied: Dani
28.06.2010 um 21:25 Uhr
Hi Stefan,
DHCP Funktionsumfang mit Reservierung ist keine Option?! Macht vieles einfacher... auch in Zukunft bei OS-Installationen über PXE oder Software (z.B. Matrix42, CA, etc...).


Grüße,
Dani
Bitte warten ..
Mitglied: 91630
29.06.2010 um 09:20 Uhr
@Timo Beil
Danke, klappt alles supi.

@2hard4you
Du Nase! Das ist doch ein Beispiel um nicht meinen wahren Adressraum zu nennen.

@Dani
Leider nein. Wir sind durch eine Unternehmensrichtlinie gezwungen keinen DHCP einzusetzen.
Bitte warten ..
Neuester Wissensbeitrag
CPU, RAM, Mainboards

Angetestet: PC Engines APU 3a2 im Rack-Gehäuse

(1)

Erfahrungsbericht von ashnod zum Thema CPU, RAM, Mainboards ...

Ähnliche Inhalte
Windows Server
gelöst Wie füge ich diesem Script die Email Adresse hinzu (16)

Frage von rainergugus zum Thema Windows Server ...

LAN, WAN, Wireless
gelöst TP-Link WA501G als Client einrichten - Keine IP Adresse wir bezogen (14)

Frage von bestelitt zum Thema LAN, WAN, Wireless ...

E-Mail
gelöst Falsche SMTP Server IP Adresse (6)

Frage von laster zum Thema E-Mail ...

Heiß diskutierte Inhalte
DSL, VDSL
DSL-Signal bewerten (13)

Frage von SarekHL zum Thema DSL, VDSL ...

Switche und Hubs
Trunk für 2xCisco Switch. Wo liegt der Fehler? (9)

Frage von JayyyH zum Thema Switche und Hubs ...

Windows Server
Mailserver auf Windows Server 2012 (9)

Frage von StefanT81 zum Thema Windows Server ...

Backup
Clients als Server missbrauchen? (9)

Frage von 1410640014 zum Thema Backup ...