[2000] Script voor netwerk routering (route add)

Pagina: 1
Acties:
  • 300 views sinds 30-01-2008
  • Reageer

  • Mathadon
  • Registratie: Februari 2004
  • Laatst online: 13-01 13:37
even een vraagje voor de script guru's hier....

Wat ik probeer is te internetten via de gateway van mijn ISP en tegelijkertijd een Terminal Sessie te maken met de TS op me werk m.b.v. VPN verbinding. (dus via de gateway van de VPN verbinding). Dit is uiteindelijk gelukt (zie hieronder). Maar het probleem is dat de gateway adressen van beide verbindingen elke keer verschillend zijn wanneer ik opnieuw verbinding maak. Is het mogelijk d.m.v een dosbatch scriptje of een VB scriptje deze aanpassingen dynamisch te laten uitvoeren? Dus dat ik bijvoorbeeld alleen hoef te dubbelklikken op een script en de aanpassingen in de routering zijn gemaakt...

Het gaat om de volgende commando's die uitgevoerd moeten worden:

route add 0.0.0.0 mask 0.0.0.0 10.7.196.93 metric 1
route add 0.0.0.0 mask 0.0.0.0 192.168.1.69 metric 2
route add 172.21.145.22 mask 255.255.255.255 192.168.1.69 metric 2

De dikgedrukte adressen zijn de variable gateway-adressen.

Of weet iemand anders een andere mogeljkheid om de routering permanent icm dynamische gateways aan te passen?


Ik zal ff hier plaatsen wat ik precies heb uitgevoerd aan veranderingen in de routering:

C:\>ipconfig

Windows 2000 IP Configuration

Ethernet adapter Local Area Connection:

Media State . . . . . . . . . . . : Cable Disconnected

PPP adapter Vodafone NL Connection:

Connection-specific DNS Suffix . :
IP Address. . . . . . . . . . . . : 10.7.196.93
Subnet Mask . . . . . . . . . . . : 255.255.255.255
Default Gateway . . . . . . . . . : 10.7.196.93 (elke keer verschillend)

PPP adapter: (VPN VERBINDING)

Connection-specific DNS Suffix . :
IP Address. . . . . . . . . . . . : 192.168.1.69
Subnet Mask . . . . . . . . . . . : 255.255.255.255
Default Gateway . . . . . . . . . : 192.168.1.69 (elke keer verschillend)


C:\>route print
===========================================================================
Interface List
0x1 ........................... MS TCP Loopback interface
0x2 ...00 08 74 4c 4e db ...... 3Com EtherLink PCI
0x2000004 ...00 53 45 00 00 00 ...... WAN (PPP/SLIP) Interface
0x3000005 ...00 53 45 00 00 00 ...... WAN (PPP/SLIP) Interface
===========================================================================
===========================================================================
Active Routes:
Network Destination Netmask Gateway Interface Metric
0.0.0.0 0.0.0.0 10.7.196.93 10.7.196.93 2
0.0.0.0 0.0.0.0 192.168.1.69 192.168.1.69 1
10.6.0.1 255.255.255.255 10.7.196.93 10.7.196.93 1
10.7.196.93 255.255.255.255 127.0.0.1 127.0.0.1 1
10.255.255.255 255.255.255.255 10.7.196.93 10.7.196.93 1
127.0.0.0 255.0.0.0 127.0.0.1 127.0.0.1 1
192.168.1.69 255.255.255.255 127.0.0.1 127.0.0.1 1
192.168.1.255 255.255.255.255 192.168.1.69 192.168.1.69 1
213.53.107.140 255.255.255.255 10.7.196.93 10.7.196.93 1
224.0.0.0 224.0.0.0 10.7.196.93 10.7.196.93 1
224.0.0.0 224.0.0.0 192.168.1.69 192.168.1.69 1
255.255.255.255 255.255.255.255 10.7.196.93 2 1
Default Gateway: 192.168.1.69
===========================================================================
Persistent Routes:
None

C:\> Nu ga ik de Metric omdraaien.... waardoor de default gateway veranderd omgewisseld wordt.

C:\>route add 0.0.0.0 mask 0.0.0.0 10.7.196.93 metric 1

C:\>route add 0.0.0.0 mask 0.0.0.0 192.168.1.69 metric 2

C:\>route print
===========================================================================
Interface List
0x1 ........................... MS TCP Loopback interface
0x2 ...00 08 74 4c 4e db ...... 3Com EtherLink PCI
0x2000004 ...00 53 45 00 00 00 ...... WAN (PPP/SLIP) Interface
0x3000005 ...00 53 45 00 00 00 ...... WAN (PPP/SLIP) Interface
===========================================================================
===========================================================================
Active Routes:
Network Destination Netmask Gateway Interface Metric
0.0.0.0 0.0.0.0 10.7.196.93 10.7.196.93 1
0.0.0.0 0.0.0.0 192.168.1.69 192.168.1.69 2
10.6.0.1 255.255.255.255 10.7.196.93 10.7.196.93 1
10.7.196.93 255.255.255.255 127.0.0.1 127.0.0.1 1
10.255.255.255 255.255.255.255 10.7.196.93 10.7.196.93 1
127.0.0.0 255.0.0.0 127.0.0.1 127.0.0.1 1
192.168.1.69 255.255.255.255 127.0.0.1 127.0.0.1 1
192.168.1.255 255.255.255.255 192.168.1.69 192.168.1.69 1
213.53.107.140 255.255.255.255 10.7.196.93 10.7.196.93 1
224.0.0.0 224.0.0.0 10.7.196.93 10.7.196.93 1
224.0.0.0 224.0.0.0 192.168.1.69 192.168.1.69 1
255.255.255.255 255.255.255.255 10.7.196.93 2 1
Default Gateway: 10.7.196.93
===========================================================================
Persistent Routes:
None

C:\> Nu ga ik een route maken zodat ik de Terminal Server kan bereiken via de gateway van de VPN verbinding.

C:\>route add 172.21.145.22 mask 255.255.255.255 192.168.1.69 metric 2

Maar deze aanpassingen wil ik dus zeg maar dynamisch hebben, zodat ik niet elke keer een ander gatewayadres hoef in te vullen. Liefst door middel van een bat-file of vb script die ik 1x moet dubbelklikken wanneer de verbindingen tot stand zijn gekomen....

  • Mathadon
  • Registratie: Februari 2004
  • Laatst online: 13-01 13:37
jammer dat niemand me kan helpen....

  • bigbeng
  • Registratie: Augustus 2000
  • Laatst online: 26-11-2021
Ja, dat is zeker jammer.
Ik kan je ook niet echt verder helpen, behalve dat ik denk dat je met VBScript aan de slag moet. Vervolgens zul je daarmee de uitvoer van het route print commando moeten analyseren. Mijn eerste gedachte gaat dan uit naar reguliere expressies, maar je kunt ook met instr al een aardige analyse erop los laten.

Ben je uberhaupt bekend met programmeren? Zo ja, dan zou ik als ik jou was eens iets gaan proberen en dan als je vastloopt je vragen hier eens gaan stellen. Het is dan ook makkelijker om gericht antwoord te geven.
Zo niet, dan zul je je dat eerst eigen moeten gaan maken en dan iets gaan proberen te schrijven en vervolgens je vragen hier stellen.

En lees gelijk ook Welkom in P&W: FAQ en Beleid *updated: 19 nov* even door :) Vooral het stuk over een goede topicstart.

  • Equator
  • Registratie: April 2001
  • Laatst online: 25-03 08:35

Equator

Crew Council

#whisky #barista

Met een WMI query kan je de IP adressen wel achterhalen.
Daarna kan je deze wel weer gebruiken om een commando aante vullen.

M.a.w: met VBscript gaat dat prima werken.

  • curry684
  • Registratie: Juni 2000
  • Laatst online: 17-12-2025

curry684

left part of the evil twins

Windows scripting + config -> Windows Operating Systems

Professionele website nodig?


  • sanfranjake
  • Registratie: April 2003
  • Niet online

sanfranjake

Computers can do that?

(overleden)
Ik zet nog even het OS, Windows 2000 in de titel omdat dit in Windows Operating Systems verplicht is :)

Mijn spoorwegfotografie
Somda - Voor en door treinenspotters


Verwijderd

kan wel met cmdline :)

code:
1
2
3
4
5
6
7
8
9
10
11
for /f "tokens=2 delims=:" %%a in ('ipconfig /all^|find /i "gateway"') do call :setroute %%a
goto :eof

:setroute
set gw=%1
if %gw:~0,2%==10 route ADD x.x.x.x MASK x.x.x.x  %gw% METRIC 1
if %gw:~0,2%==19 route ADD x.x.x.x MASK x.x.x.x  %gw% METRIC 2
.
.
.
goto :eof

[ Voor 21% gewijzigd door Verwijderd op 04-03-2005 16:33 ]


  • Mathadon
  • Registratie: Februari 2004
  • Laatst online: 13-01 13:37
Beetje late reply...... maar ja... hopelijk krijg ik nog een reply terug ;)

Maar ik moet nu de volgende commando's intypen: (Gateway adres is veranderd)

route add 0.0.0.0 mask 0.0.0.0 192.168.2.1 metric 1
route add 0.0.0.0 mask 0.0.0.0 192.168.1.69 metric 2
route add 172.21.145.22 mask 255.255.255.255 192.168.1.69 metric 2


Hoe vul ik dat stukje script uit welke jij gemaakt hebt? Want ik weet niet hoe je het precies moet lezen.. die 10 staat zeker voor 10.7.196.93 welke ik eerst had aangegeven. Maar dit adres is nu veranderd naar 192.168.2.1. Moet ik dan die "10" veranderen in ook "19" ? Dan gaat het zeker fout....

Ik heb nu een bat-file gemaakt met de volgende code erin:

for /f "tokens=2 delims=:" %%a in ('ipconfig /all^|find /i "gateway"') do call :setroute %%a
goto :eof

:setroute
set gw=%1
if %gw:~0,2%==19 route ADD 0.0.0.0 MASK 0.0.0.0 %gw% METRIC 1
if %gw:~0,2%==19 route ADD 0.0.0.0 MASK 0.0.0.0 %gw% METRIC 2
.
.
.
goto :eof

Maar als ik deze bat file uitvoer krijg ik het volgende:


C:\>route_bsg

C:\>for /F "tokens=2 delims=:" %a in ('ipconfig /all|find /i "gateway"') do call
:setroute %a

:\>call :setroute 192.168.2.1

C:\>set gw=192.168.2.1

C:\>if 19 == 19 route ADD 0.0.0.0 MASK 0.0.0.0 192.168.2.1 METRIC 1

C:\>if 19 == 19 route ADD 0.0.0.0 MASK 0.0.0.0 192.168.2.1 METRIC 2

C:\>goto :eof

:\>call :setroute 192.168.1.68

C:\>set gw=192.168.1.68

C:\>if 19 == 19 route ADD 0.0.0.0 MASK 0.0.0.0 192.168.1.68 METRIC 1

C:\>if 19 == 19 route ADD 0.0.0.0 MASK 0.0.0.0 192.168.1.68 METRIC 2

C:\>goto :eof

C:\>goto :eof

C:\>route print
===========================================================================
Interfacelijst
0x1 ........................... MS TCP Loopback interface
0x10005 ...00 01 24 b1 f7 0b ...... WNC 802.11b USB300 - Pakketplanner-minipoort

0x80006 ...00 53 45 00 00 00 ...... WAN (PPP/SLIP) Interface
===========================================================================
===========================================================================
Actieve routes:
Netwerkadres Netmask Gateway Interface Metric
0.0.0.0 0.0.0.0 192.168.1.68 192.168.1.68 2
0.0.0.0 0.0.0.0 192.168.2.1 192.168.2.100 2
127.0.0.0 255.0.0.0 127.0.0.1 127.0.0.1 1
192.168.1.68 255.255.255.255 127.0.0.1 127.0.0.1 50
192.168.1.255 255.255.255.255 192.168.1.68 192.168.1.68 50
192.168.2.0 255.255.255.0 192.168.2.100 192.168.2.100 30
192.168.2.100 255.255.255.255 127.0.0.1 127.0.0.1 30
192.168.2.255 255.255.255.255 192.168.2.100 192.168.2.100 30
213.53.107.140 255.255.255.255 192.168.2.1 192.168.2.100 1
224.0.0.0 240.0.0.0 192.168.2.100 192.168.2.100 30
224.0.0.0 240.0.0.0 192.168.1.68 192.168.1.68 1
255.255.255.255 255.255.255.255 192.168.1.68 192.168.1.68 1
255.255.255.255 255.255.255.255 192.168.2.100 192.168.2.100 1
Standaard-gateway: 192.168.2.1
===========================================================================
Permanente routes:
Geen
C:\>

Nu zijn allebei de gateways op METRIC 2 gezet en dit is niet de bedoeling. De 192.168.2.1 gateway moet op metric 1 blijven, maar door het 2e gedeelte van het script wordt de 192.168.2.1 ook op metric 2 gezet.

Hoe moet ik het script aanpassen zodat het wel correct werkt?
Ik waardeer het heel erg als je me hiermee verder kon helpen...

Alvast bedankt!!!

  • alt-92
  • Registratie: Maart 2000
  • Niet online

alt-92

ye olde farte

Mathadon schreef op woensdag 21 september 2005 @ 19:08:
Beetje late reply...... maar ja... hopelijk krijg ik nog een reply terug ;)

Maar ik moet nu de volgende commando's intypen: (Gateway adres is veranderd)

route add 0.0.0.0 mask 0.0.0.0 192.168.2.1 metric 1
route add 0.0.0.0 mask 0.0.0.0 192.168.1.69 metric 2
route add 172.21.145.22 mask 255.255.255.255 192.168.1.69 metric 2


Hoe vul ik dat stukje script uit welke jij gemaakt hebt? Want ik weet niet hoe je het precies moet lezen.. die 10 staat zeker voor 10.7.196.93 welke ik eerst had aangegeven. Maar dit adres is nu veranderd naar 192.168.2.1. Moet ik dan die "10" veranderen in ook "19" ? Dan gaat het zeker fout....
Zo op het eerste oog leest iis5_rulez de eerste 2 posities van het IP uit.
Dus 19 == 192.x.x.x.

Nu wat jij doet: je hebt 2x 19, en daarmee zorg je dat de uitkomst altijd hetzelfde is ipv actie 1 bij uitkomst1 en actie 2 bij uitkomst2.

Je zal dus moeten zorgen dat je script verder naar achteren kijkt in plaats van tussen de posities 0 en 2 (~0,2% ).

ik heb een 864 GB floppydrive! - certified prutser - the social skills of a thermonuclear device


  • Mathadon
  • Registratie: Februari 2004
  • Laatst online: 13-01 13:37
ja zoiets dacht ik ook al, maar ik heb er nu 0,99% gemaakt. Ik snap dat procent tekentje nog niet echt.

Hoe krijg ik de laatste add route erin? Die moet zoiets worden denk ik:

if %gw:~0,2%==19 route ADD 172.21.145.22 MASK 255.255.255.255 %gw% metric 2

Maar waar ik dit precies in het script moet zetten, weet ik niet.....

  • alt-92
  • Registratie: Maart 2000
  • Niet online

alt-92

ye olde farte

Mathadon schreef op woensdag 21 september 2005 @ 19:42:
ja zoiets dacht ik ook al, maar ik heb er nu 0,99% gemaakt. Ik snap dat procent tekentje nog niet echt..
Je gaat nu kijken van positie 0 tot en met 99?
Een IP adres heeft 12 posities (punten niet meegerekend) ;)

ik heb een 864 GB floppydrive! - certified prutser - the social skills of a thermonuclear device


  • Mathadon
  • Registratie: Februari 2004
  • Laatst online: 13-01 13:37
dus 192.168.001.x = ~0, 9% ?

ik heb nu dit staan:

for /f "tokens=2 delims=:" %%a in ('ipconfig /all^|find /i "gateway"') do call :setroute %%a
goto :eof

:setroute
set gw=%1
if %gw:~0,9%==192.168.2 route ADD 0.0.0.0 MASK 0.0.0.0 %gw% METRIC 1
if %gw:~0,9%==192.168.1 route ADD 0.0.0.0 MASK 0.0.0.0 %gw% METRIC 2
if %gw:~0,9%==192.168.1 route ADD 172.21.145.22 MASK 255.255.255.255 %gw% metric 2

goto :eof

Is dit nou correct? of moeten die puntjes er niet tussen staan?

Ik heb het net getest, en het werkt!!
Allemaal heel hartelijk bedankt!

[ Voor 102% gewijzigd door Mathadon op 21-09-2005 22:20 ]

Pagina: 1