-
15. 02. 2006, 09:00 #1
[Batch] IP Adresse erneuern + überprüfen
Hallo
Um meine IP Adresse zu wechseln benutze ich eine einfach bat-Datei, die das Programm Routercontrol aufruft und dann kurz wartet. Also so:
Nun kommt es aber vor, dass mein liiieber Internet Provider mir manchmal keine neue IP Adresse zuweist, sondern nur einfach die Leitung kurz unterbricht. Deshalb möchte ich die bat-Datei so ausbauen, dass der RouterControl solange wiederholt wird bis die IP Adresse wirklich geändert hat. Leider bin ich kein Held beim Programmieren und somit auf euch angewiesen. Mit dem durch Google gefundenem BefehlCode:C:\Programme\RouterControl\RouterControl.exe /DISCONNECT /CONNECT /QUIT ipconfig /renew ping -n 5 127.0.0.1 > NUL
kriege ich schon mal meine IP angezeigt, wie das ganze aber in eine Schleife mit IF und THEN zu verpacken weiss ich nicht. Kann mir jemand einen Ansatz geben?Code:@echo off echo set /a s=%%s%%+1 > ip.bat echo set ip%%s%%=%%1 >> ip.bat echo Deine IP Adressen sind: echo. ipconfig/all | findstr "IP-Ad" > ip.txt set s=0 for /f "tokens=14*" %%i in (ip.txt) do call ip %%i%%j del ip.txt del ip.bat echo %ip1% echo %ip2% echo. pause
:edit Bin mal soweit:Bei AB und CD ist mir nichts besseres eingefallen. Nun werden aber immer noch nicht die Beiden Variabeln verglichen.Code:@echo off ipconfig/all | findstr "IP-Ad" > ip.txt for /f "tokens=14*" %%i in (ip.txt) do set AB=&&i :AGAIN C:\Programme\RouterControl\RouterControl.exe /DISCONNECT /CONNECT /QUIT ipconfig /renew ipconfig/all | findstr "IP-Ad" > ip2.txt set s=0 for /f "tokens=14*" %%j in (ip2.txt) do set CD=&&j IF AB==CD GOTO AGAIN GOTO ENDE :ENDE del ip.txt del ip2.txt
Geändert von weierles (15. 02. 2006 um 11:17 Uhr)
-
15. 02. 2006, 11:41 #2
Re: [Batch] IP Adresse erneuern + überprüfen
du kannst dir die Variable %IP% per
setzen, nun musst du diese nur mehr abgleichen.Code:for /F "tokens=13,*" %%i in ('ipconfig^|find "IP-Ad"') do set IP=%%j
if %IP% == %IPNEW% goto Anfang
mal das als Code-Schnippsel:
Code::AGAIN @for /F "tokens=13,*" %%i in ('ipconfig^|find "IP-Ad"') do @set IP=%%j @echo Deine IP Adresse ist: %IP% C:\Programme\RouterControl\RouterControl.exe /DISCONNECT /CONNECT /QUIT ipconfig /renew @for /F "tokens=13,*" %%i in ('ipconfig^|find "IP-Ad"') do @set IPNEW=%%j if %IP% == %IPNEW% GOTO AGAIN :END @echo Deine neue IP Adresse ist: %IPNEW% pauseGeändert von frogger9 (15. 02. 2006 um 12:29 Uhr)
-
15. 02. 2006, 12:32 #3
Re: [Batch] IP Adresse erneuern + überprüfen
jetzt Funkts. Vielen Dank frogger9 !

-
15. 02. 2006, 12:43 #4
Re: [Batch] IP Adresse erneuern + überprüfen
durch das direkte setzen von Variablen ersparst du dir den Umweg über Abfrage in Ausgabe-Dateien.
musste selbst erst etwas probieren, das es richtig funktioniert.
-
15. 02. 2006, 13:50 #5
Re: [Batch] IP Adresse erneuern + überprüfen
Ich habe mir an den Schluss noch ein
gehängt um eine kleine Statistik zu machen.Code:@echo %IPNEW% %date% %time% >> IP-History.txt
-
15. 02. 2006, 14:25 #6
Re: [Batch] IP Adresse erneuern + überprüfen
den Log kannst du dir auch noch etwas "Aufwerten"
Code:@echo IP gewechselt am %date% um %time% & @echo Neue IP war: %IPNEW%>>IP-History.txt
-
14. 03. 2006, 21:58 #7
Re: [Batch] IP Adresse erneuern + überprüfen
Back@topic
Die Batch läuft einwandfrei. Nur mein Router ist eine Spur zu langsam. Wenn nämlich das Programm RouterControl ihm sagt "wechsle du mal deine IP" dann macht er das ganz schön gemächlich. Ein kurzes "ipconfig /renew" macht ihm aber Beine und der IP-Wechsel geht vorwärts.
Frage: Kann ich in einer Batch naben einem Befehl für ein laufendes Programms einen zweiten Befehl (endlos Schleife für "ipconfig /renew" ) durchführen?
-
15. 03. 2006, 12:04 #8
Re: [Batch] IP Adresse erneuern + überprüfen
du kannst im Batch noch einen anderen Batch(per CALL) einbauen.
set COUNT=5
:Loop
ipconfig /renew
set /a COUNT=%COUNT%-1
if %COUNT% == 1 GOTO End
GOTO Loop
:End
exit
hierbei wird der Befehl "Ipconfig" 5x wiederholt.
-
15. 03. 2006, 18:17 #9
Re: [Batch] IP Adresse erneuern + überprüfen
Danke für die Antwort, es löst mein Problem leider nicht. So startet zwar die zweite Batch, jedoch läuft die erste in der Zeit nicht weiter. Ist das überhaupt möglich, in einer Batch zwei Befehle (Programm starten und "ipconfig /renew") zur selben Zeit zu starten oder muss ein Befehl immer auf den anderen warten?
-
16. 03. 2006, 13:45 #10
Re: [Batch] IP Adresse erneuern + überprüfen
Batches arbeiten zeilenorientiert(Schritt für Schritt)
aber du kann es auch mit "Start" machen.
Start /B "C:\Programme\RouterControl\RouterControl.exe /DISCONNECT /CONNECT /QUIT"
Start /B "C:\Batches\iprenew.bat"
-
16. 03. 2006, 13:55 #11
Re: [Batch] IP Adresse erneuern + überprüfen
Damit gehts! Danke.
-
16. 03. 2006, 14:31 #12Mitglied
- Registriert seit
- Dec 2005
- Beiträge
- 8
Re: [Batch] IP Adresse erneuern + überprüfen
ne frage dazu
so wie ichs verstanden habe has du kein router sondern ein modem und verbindest dich mit einem programm von deinem anbieter und deine ip wird automatisch vergeben..
so jetzt die frage wie kann ich das machen wenn ich feste ip adresse habe und über router ins netz gehe??
-
16. 03. 2006, 14:37 #13
Re: [Batch] IP Adresse erneuern + überprüfen
Router Control ist ein Programm, um DSL Router zu steuern. Hätte er nur ein Modem, braucht er nur auf die Verbindung klicken und "Trennen" auswählen.
Was verstehst du unter einer "festen IP"??(192.168.xxx.xxx)
-
16. 03. 2006, 15:10 #14Mitglied
- Registriert seit
- Dec 2005
- Beiträge
- 8
Re: [Batch] IP Adresse erneuern + überprüfen
genau das (192.168.*.*)
ich neme immer über browser die verbindung zum router auf (deswegen gedacht dass er ein modem hat und die ip automatisch vergeben wird)
-
16. 03. 2006, 15:18 #15
Re: [Batch] IP Adresse erneuern + überprüfen
192.168.xxx.xxx ist eine lokale Netzwerk-Adresse, also hat nichts mit einer von ISP vergebenen Adresse zu tun.
gib mal folgendes in der Console(Start - Ausführen - cmd) ein:
ipconfig /all
dann werden dir alle vergebenen IPs angezeigt.
-
16. 03. 2006, 15:22 #16Mitglied
- Registriert seit
- Dec 2005
- Beiträge
- 8
Re: [Batch] IP Adresse erneuern + überprüfen
habe ich da wurde mir meine ip angezeigt und von dem router aber nichts von meiner i-net adresse
ip routig ist deaktiviert und dhcp auch
-
16. 03. 2006, 15:27 #17
Re: [Batch] IP Adresse erneuern + überprüfen
aber der PPPoE Adapter.
-
16. 03. 2006, 15:34 #18Mitglied
- Registriert seit
- Dec 2005
- Beiträge
- 8
Re: [Batch] IP Adresse erneuern + überprüfen
wenn das in der ipconfig /all stehen sollte sehe nichts davon
Hostname. . . . . . . . . . . . . : bla
Primäres DNS-Suffix . . . . . . . :
Knotentyp . . . . . . . . . . . . : Unbekannt
IP-Routing aktiviert. . . . . . . : Nein
WINS-Proxy aktiviert. . . . . . . : Nein
Ethernetadapter LAN-Verbindung:
Verbindungsspezifisches DNS-Suffix:
Beschreibung. . . . . . . . . . . : SiS 900-basierte PCI-Fast Ethernet-A
dapter
Physikalische Adresse . . . . . . :
DHCP aktiviert. . . . . . . . . . : Nein
IP-Adresse. . . . . . . . . . . . : 192.168.+.+
Subnetzmaske. . . . . . . . . . . : 255.255.255.0
Standardgateway . . . . . . . . . : 192.168.+.+
DNS-Server. . . . . . . . . . . . : 192.168.+.+
-
16. 03. 2006, 15:40 #19
Re: [Batch] IP Adresse erneuern + überprüfen
stimmt, also holt der Router deine IP vom ISP.
Deshalb auch dein Gateway.
aber deshalb hast du auch keine "feste IP" zum Internet, sondern die holt sich der Router beim ISP.
-
16. 03. 2006, 15:44 #20Mitglied
- Registriert seit
- Dec 2005
- Beiträge
- 8
Re: [Batch] IP Adresse erneuern + überprüfen
na bischen falsch ausgedrückt
habe feste ip am pc zum router und natürlich holt der router sich die ip adresse vom isp
und deswegen wollte ich wissen wie ich dem router sagen kann das er sich ne neue ip holen soll...
-


Zitieren
mehr lesen...







Resident Evil 6 erscheint in...
Heute, 15:21 in gulli:news