Load balancing für Windows XP Home ?

Fragen rund um die Themen Netzwerk und Technik, die keinem Betriebssystem zuzuordnen sind. Beiträge rund um Hardware gehören auch hier rein (ausser bei Treiber-Fragen, diese dann im jeweiligen Subforum des passenden Betriebssystemes stellen).

Beitragvon wavenetuser » Mi 21 Jun, 2006 05:53

hahaaa - zumindest hab ich jetzt rausgefunden wie ich bestimmte ranges an die jeweilige netzwerkkarte binde ;)
Als beispiel: alles was zu 213.*.*.* geht, läuft jetzt über den wavenet-anschluss. der Rest über Inode.
Dh. ich müsste mir da nen Dienst zusammenschrauben um regelmäßig abzufragen ob Anschluss A gerade online ist und wenn nicht, alles auf anschluss B zu leiten. (ich denke mit " route CHANGE 0.0.0.0 MASK 0.0.0.0 192.168.2.1 " müsste dann alles über die Karte A gehen )

Edit: Was ich nicht verstehe, route zeigt mir an dass beide karten aktiv sind.
Code: Alles auswählen
Aktive Routen:
     Netzwerkziel    Netzwerkmaske          Gateway   Schnittstelle  Anzahl
          0.0.0.0          0.0.0.0     82.218.6.254     82.218.X.X     30
          0.0.0.0          0.0.0.0      192.168.2.1     192.168.2.2     25

0.0.0.0 bedeutet doch "alles" (oder ? ).

Wobei ganz unten steht:
Standardgateway: 192.168.2.1 - dh. es wird wohl immer die standardgateway angewählt wenn 2 gleiche einträge drinn sind mit verschiedenen routen ( ? )

Ok, langsam scheine ich ansatzweise dahinter zu kommen.
Ich könnte mein neu gewonnenes Wissen nun zb. für VPN-Verbindungen zu externen Netzwerken einsetzen.
Dies würde bedeuten, ich könnte das eine Netzwerk unter Volllast laufen lassen während aber der Rest nicht davon betroffen wäre.

Hmm, was gibts sonst noch für Anwendungsbeispiele...
Hamachi ließe sich damit gut einsetzen für Lan-Spiele an Anschluss A während Anschluss B frei bleibt usw ...

Aber um es richtig nutzen zu können, müsste ich nen Weg finden um wirklich alles raus zu löschen und nur einzusetzen wenn der eine Anschluss nicht läuft.


Hmm, noch ein Edit: Natürlich bräuchte ich dann nen zweiten Router denn das Gateway kann sich ja ändern... Also müsste ich es dann auch lokal routen.

Und hier der Ablauf:

2 Internetanschlüsse, 2 Bridges, 1 Router und ein alter PC mit 2 Netzwerkkarten. Kostenpunkt: Hardware - 160 € herum zzgl. PC - was aber so gut wie jeder irgendwo in ner Ecke stehen hat.


Gestartet wird mit Anschluss 1.
Der PC prüft laufend die Verbindung. Sobald Anschluss 1 ausfällt, ändert er die route auf Anschluss 2.
Leitet dann das ganze an die nächste Netzwerkkarte, von dort gehts in den Wlan-Router und das Signal kann verteilt werden.

Käme das so hin ?
Bild
wavenetuser
Board-User Level 3
Board-User Level 3
 
Beiträge: 1266
Registriert: Do 09 Feb, 2006 02:35

Beitragvon superracer » Mi 21 Jun, 2006 06:15

wavenetuser hat geschrieben:Wobei ganz unten steht:
Standardgateway: 192.168.2.1 - dh. es wird wohl immer die standardgateway angewählt wenn 2 gleiche einträge drinn sind mit verschiedenen routen ( ? )

du kannst nie zwei völlig identische routen drin haben. manche OSn lassen es gar nicht zu, zwei identische routen anzulegen, andere schon, aber es zieht immer nur die erste. in deinem fall hast du aber nicht zwei identische routen, sondern sie unterscheiden sich durch ein merkmal: die "anzahl", was eine absolut grauenhafte übersetzung von "metric" ist. die metric ist mit dem "cost" einer route gleichzusetzen, sprich wenn du mehrere routen zur gleichen destination mit unterschiedlicher metric hat, zieht immer die mit der niedrigsten metric. wenn diese route rausgelöscht wird, zieht automatisch die mit der nächst höheren metric, usw.
superracer
Board-User Level 3
Board-User Level 3
 
Beiträge: 1073
Registriert: So 04 Jul, 2004 11:18

Beitragvon jutta » Mi 21 Jun, 2006 06:44

jutta hat geschrieben:um die 2 verbindungen zu nuetzen, wuerde route aber ausreichen. das eigentlichen "balancing" macht in dem fall der mensch.

damit meinte ich loesungen aehnlich dieser: http://www.funkwerk-ec.de/faq_bintec_07 ... 0,194.html

backup (dh wenn ein anschluss ausfaellt, wird der andere verwendet) geht mit den boardmitteln von win xp jedenfalls (habe ich voriges jahr gemacht, ich muss nur wieder draufkommen, wie ;) ) allerdings hab ichs wieder deaktiviert, weil windows und auch die router, mit denen ich das versucht habe, alle der meinung waren, dass mein @work mit 5gb-limit viel besser erreichbar ist als das @home mit beinahe-flat :twisted:

tipp:die konfigurationsbeispiele von bintec sind anschaulich und lassen sich mit ein bisschen tuefteln auch mit anderen geraeten nachvollziehen (obwohl ein vpn 25 schon ein nettes ding ist)
http://www.funkwerk-ec.de/index.php?sei ... ation=5859
jutta
Administrator
Administrator
 
Beiträge: 30485
Registriert: Do 15 Apr, 2004 10:48
Wohnort: wien

Beitragvon wavenetuser » Mi 21 Jun, 2006 10:04

Naja, das scheint einfacher zu laufen als ich dachte...

Code: Alles auswählen
Option Explicit
On Error Resume Next
Function GetFirstMatch(PatternToMatch, StringToSearch)
   Dim regEx, CurrentMatch, CurrentMatches
   Set regEx = New RegExp
   regEx.Pattern = PatternToMatch
   regEx.IgnoreCase = True
   regEx.Global = True
   regEx.MultiLine = True
   Set CurrentMatches = regEx.Execute(StringToSearch)
   GetFirstMatch = ""
   If CurrentMatches.Count >= 1 Then
      GetFirstMatch = "true"
   End If
   Set regEx = Nothing
End Function
Dim serverIp
Dim oExec
Dim oExec1
Dim oExec2
Dim oShell
Dim oShell1
Dim oShell2
Dim Creturn
Dim oLogFile
Dim objShell
Dim gatNeu
Dim CreturnG
Dim FoundMatch
Dim GetDatabaseName
Dim interneLanIP1
Dim interneLanIP2
Dim regexTextMatch


regexTextMatch = "Standardgateway:(.*)192\.168\.2\.1" 'HauptIP
serverIp = "xxx.xxx.xxx.xxx" 'Ip des Zielrechners um rauszufinden ob noch online
interneLanIP1 = "192.168.2.1"  'Ip des Lan1
interneLanIP2 = "192.168.3.1"  'Ip des Lan2


Set oShell = CreateObject("WScript.Shell")
Set oExec = oShell.Exec("C:\WINDOWS\system32\ping.exe -n 2 -w 50 " & serverIp)
Creturn = LCase(oExec.StdOut.ReadAll)
oLogFile = Creturn
If InStr(Creturn , "antwort") Then
   Creturn = "   Server erreichbar      " & vbCRLF
Else
Set oShell1 = CreateObject("WScript.Shell")
Set oExec1 = oShell1.Exec("c:\windows\system32\route.exe print")
   CreturnG = LCase(oExec1.StdOut.ReadAll)   
   GetDatabaseName = GetFirstMatch(regexTextMatch, CreturnG)
   If  GetDatabaseName = "true" Then
      gatNeu = interneLanIP1
   Else
      gatNeu = interneLanIP2
   End If
   ' Hier wird ausgelesen, welches Gateway derzeit aktiv ist um auf den zweiten auszuweichen !
   Set oShell2 = CreateObject("WScript.Shell")
   Set oExec2 = oShell2.Exec("c:\windows\system32\route.exe change 0.0.0.0 MASK 0.0.0.0 192.168.2.1")
End If

RET = MsgBox(" _____" & GetDatabaseName & "_____ " & gatNeu & " : " & CreturnG, vbOKOnly, "Antwort")

Zwar noch nicht fertig, aber es wird ...

Was ich aber leider nicht verstehe, wie ich route wirklich routen soll damit die neue Internetverbindung auch wirklich komplett genutzt wird.
Muss ich da alles raus löschen ?
Etwas schwer ohne richtigem Regex :( (wenns wirklich sein muss, greife ich wohl hier auf den php-intepreter zurück)

Ich wäre für Tipps dankbar bez. route CHANGE
Bild
wavenetuser
Board-User Level 3
Board-User Level 3
 
Beiträge: 1266
Registriert: Do 09 Feb, 2006 02:35

Vorherige

Zurück zu TECHNIK, NETZWERK & HARDWARE

Wer ist online?

Mitglieder in diesem Forum: DotNetDotCom [Crawler] und 44 Gäste