Sign in with
Sign up | Sign in
Your question

Windows 7 Dual WAN + Load Balancing / Teaming

Last response: in Networking
Share
May 10, 2010 3:05:30 AM

I have 2 ISPs:

- Cable:
Wired
Quote:
DHCP Enabled. . . . . . . . . . . : No
Autoconfiguration Enabled . . . . : Yes
IPv4 Address. . . . . . . . . . . : 192.168.0.10(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.255.0
Default Gateway . . . . . . . . . : 192.168.0.1
DNS Servers . . . . . . . . . . . : 10.3.1.217
10.3.1.100
208.67.222.222
208.67.220.220
NetBIOS over Tcpip. . . . . . . . : Disabled


- ADSL:
Wireless
Quote:
DHCP Enabled. . . . . . . . . . . : No
Autoconfiguration Enabled . . . . : Yes
IPv4 Address. . . . . . . . . . . : 192.168.1.10(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.255.0
Default Gateway . . . . . . . . . : 192.168.1.254
DNS Servers . . . . . . . . . . . : 192.168.1.254
200.23.242.193
200.33.146.211
200.33.146.201
NetBIOS over Tcpip. . . . . . . . : Disabled


Configured Manually, with the same network metrics:

It suggests a primary gateway, that it's not what I'm aiming for, so I place the same metric, different metrics cause to send all connections to the preferred link.

Also tried a Registry trick:
Quote:
System Key: [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NetBT\Parameters]
Value Name: RandomAdapter
Data Type: REG_DWORD (DWORD Value)
Vale Data: (0 = disabled, 1 = enabled)

Value Name: SingleResponse
Data Type: REG_DWORD (DWORD Value)
Vale Data: (0 = disabled, 1 = enabled)


No luck, it doesn't switch between connections.
Speed tests returns same results as when I have one disabled.
uTorret reports a problem with upload and I don't see any gain.

Some guidance?
May 10, 2010 6:08:25 PM

#1. A single stream can only go over one connection at a time, so all speed tests will show the max bandwidth of whichever connection it's using.

#2. You need a NAT/Router that supples translations over 2 or more connections for this to function correctly.

Google Dual WAN router or "untagle" is nice from what I hear
m
0
l
May 20, 2010 4:44:44 PM

zumm said:
I have 2 ISPs:
...
Some guidance?

as Kewlx25 mentions, you will not be able to have your computer use bother wired and wireless sources at the same time.
you may also want to look at the peplink balance series of multi-wan routers.
the entry level model supports two wired wan inputs and is less than $300
m
0
l
Related resources
November 13, 2011 11:33:57 PM

Hi, so I have beem scrumming around trying to find a workable solution and devised a workable load balancing vbs code that I wish to pass along and get feedback...

It is very "chop chop" so please no bashing. Just add some ideas, and I figure this could lead to something worth while!


The script searches the WMI for the named connections (mine are labeled Wired, and Broadcom NetXtreme 57xx Gigabit Controller - SecuRemote Miniport) Then it finds one of the nics that you want to monitor and change the metric for the balance to work...

The premise is that if the 'wired' connection exceed 50% of the max load in my case 5.6mbits, it will change the metric to a higher value than the other nic. This will cause all traffic to be routed to the alternate nic. However, what I find, that the existing connections are disconnected and when the mectric is changed all traffic is sent to the lowest metric nic. So this is where my logic ends, and I need someone to figure out how to make the connections of the 'wired' nic persistent and when the metric switch occurs so those connections are not dropped....

Anyway here it is!

-------START--------


On Error Resume Next

strComputer = "."

Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\Root\CIMV2")

Set colItems = objWMIService.ExecQuery _
("Select * From Win32_NetworkAdapter Where NetConnectionID = 'Wired'")

For Each objItem in colItems
strMACAddress = objItem.MACAddress
Wscript.Echo "MACAddress: " & strMACAddress
Next

Set colNetCard = objWMIService.ExecQuery _
("Select * From Win32_NetworkAdapterConfiguration where IPEnabled=TRUE")

For Each objNetCard in colNetCard
If objNetCard.MACAddress = strMACAddress Then
For Each strIPAddress in objNetCard.IPAddress
Wscript.Echo "Description: " & objNetCard.Description
Wscript.Echo "IP Address: " & strIPAddress
Wscript.Echo "IPConnectionMetric: " & objNetCard.IPConnectionMetric
regValueDataMetric = objNetCard.IPConnectionMetric
Next
End If
Next



For X = 0 to 1000000000000000000


Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\Root\CIMV2")
Set colItems = objWMIService.ExecQuery _
("select * from Win32_PerfFormattedData_TCPIP_NetworkInterface Where Name = 'Broadcom NetXtreme 57xx Gigabit Controller - SecuRemote Miniport'")
For Each objItem in colItems
bytesTotal = objitem.BytesTotalPersec
bandwidth = objItem.CurrentBandwidth
result = FormatNumber(( bytesTotal / 560000) * 100)
output = objitem.Name & result & " % Utilized: " & objitem.BytesTotalPersec & " " & regValueDataMetric
WScript.Echo output

NEXT



If result >= 50 Then


If regValueDataMetric = "1" Then
regValueDataMetric = "50"

Set colItems = objWMIService.ExecQuery _
("Select * From Win32_NetworkAdapter Where NetConnectionID = 'Wired'")

For Each objItem in colItems
strMACAddress = objItem.MACAddress
Wscript.Echo "MACAddress: " & strMACAddress
Next

Set colNetCard = objWMIService.ExecQuery _
("Select * From Win32_NetworkAdapterConfiguration where IPEnabled=TRUE")

For Each objNetCard in colNetCard
If objNetCard.MACAddress = strMACAddress Then
For Each strIPAddress in objNetCard.IPAddress
Wscript.Echo "Description: " & objNetCard.Description
Wscript.Echo "IP Address: " & strIPAddress
Wscript.Echo "IPConnectionMetric: " & objNetCard.IPConnectionMetric
objNetCard.SetIPConnectionMetric(regValueDataMetric)
Next
End If
Next
End if
End If


If result <= 50 Then

If regValueDataMetric = "50" Then


regValueDataMetric = "1"

Set colItems = objWMIService.ExecQuery _
("Select * From Win32_NetworkAdapter Where NetConnectionID = 'Wired'")

For Each objItem in colItems
strMACAddress = objItem.MACAddress
Wscript.Echo "MACAddress: " & strMACAddress
Next

Set colNetCard = objWMIService.ExecQuery _
("Select * From Win32_NetworkAdapterConfiguration where IPEnabled=TRUE")

For Each objNetCard in colNetCard
If objNetCard.MACAddress = strMACAddress Then
For Each strIPAddress in objNetCard.IPAddress
Wscript.Echo "Description: " & objNetCard.Description
Wscript.Echo "IP Address: " & strIPAddress
Wscript.Echo "IPConnectionMetric: " & objNetCard.IPConnectionMetric
objNetCard.SetIPConnectionMetric(regValueDataMetric)
Next
End If
Next

End if
End If


WScript.Sleep 1000

Next


-----END-----
m
0
l
!