0

我的机器有有线和无线互联网连接。它使用windows7。如何配置这台机器(使用第三方软件)以有效地使用这两个网络。

我只希望两个网络根据它们的带宽共享流量。

4

2 回答 2

0

您还没有说明您的操作系统,但无论如何您都需要有一些解复用组件,它将向应用程序公开单个接口。它应该拦截所有流量并根据负载和/或其他考虑将其路由到实际接口之一。在 Windows 中,这通常由位于实际功能驱动程序之上的过滤器驱动程序完成。在其他操作系统中,我认为这个概念是相同的。我认为有一个 3rd-party 软件可用于这些东西,但不能肯定地说。

于 2012-10-22T11:53:03.133 回答
0

您可以在 Visual Basic 中编写一个程序来执行此操作(Visual Basic 2010 Express Edition 是免费的!)。我不确定你是否了解 Visual Basic,如果不了解,我可以给你一些更具体的帮助。

使用计时器定期 ping 一个你知道会熬夜的网站。有了这个,您可以判断网络流量是否正在运行。如果 Bool 为 True,那么没关系,如果不是,那么您的网络中有问题。

    Dim Bool As Boolean
    Try
        Bool = My.Computer.Network.Ping("[URL]")
    Catch
        Bool = False
    End Try

然后让您的程序编写一个临时批处理文件,该文件将使用 netsh 切换到另一个网络。

    IO.File.WriteAllText("[filename].bat", "netsh interface ip set address [device] dhcp")

netsh 在这里更详细地讨论:http ://www.petri.co.il/configure_tcp_ip_from_cmd.htm

其中 [device] 是您要连接的设备的名称(您可以通过转到命令提示符并键入 ipconfig /all 来查看)。这必须用引号引起来,可以在 Visual Basic 中使用三引号。意思是 Visual Basic 解释这个...

"This is """ quotation """ marks in a string"

作为...

This is "quotation" marks in a string

最后,让您的程序运行批处理文件,然后在完成后将其删除。

    Dim Bat As New Process
    With Bat.StartInfo
        .FileName = "[filename].bat"
        .UseShellExecute = False
        .Verb = "runas"
        .CreateNoWindow = True
    End With
    Bat.Start()
    While Bat.HasExited = False
        Application.DoEvents()
    End While
    IO.File.Delete("[filename].bat")
于 2012-08-08T08:22:40.107 回答