29

I live in a rural area with only two choices for Internet connection, 1.2 Mbit/s DSL from AT&T or 15 Mbit/s from old-style satellites with 700 ms ping time and fast only in averages.

The fast connection is OK for web access, but the shorter lag time is necessary for interactive work. I have the DSL on a wired Ethernet connection and the long-lag higher bandwidth on Wi-Fi.

I have two routers, one for each ISP. My laptop can support both connections at same time. Can Windows 10 manage to utilize both depending on some internal metrics? At same time I have local storage on only one network and a printer on only one. Can the OS act as a bridge between the two local subnets?

11
  • 1
    What exactly is your end goal? The best you can do is load balancing, but that requires specialized hardware, Windows cannot combine multiple connections.
    – Ramhound
    Aug 25, 2021 at 0:43
  • 4
    End goal is to enable download and upload of files of solar physics data while using "remote desktop" to continue my research. RemoteDesktop and other methods, X2Go, etc., need short but quick responses to avoid timeouts. Work OK at 250Kbps upload, but multi MByte files take a long time. Desire is to end up with some programs using one channel while others needing quick response use the other. Aug 25, 2021 at 1:26
  • 3
    A more convenient approach might be to use a VM - you definitely can choose which network to bridge to. Then you select which internet you want a program to use by opening it in the right VM.
    – pjc50
    Aug 25, 2021 at 11:28
  • 1
    Supposedly Starlink should be the solution for your kind of use case... provides low-ping, high-speed internet to rural communities at a relatively cheap price. Maybe you should check them out, they are extending coverage wordwide quite fast.
    – Bakuriu
    Aug 25, 2021 at 13:12
  • 4
    I'm not sure how you'd do it in Windows, so not an answer, but in linux I'd set the default route to be the satellite connection, but provide an explicit route for the remote desktop host to go over the dsl interface
    – Dezza
    Aug 25, 2021 at 13:20

8 Answers 8

28

This is possible even though Windows doesn't deal well with this on its own.
(At least in this particular use-case, where there is a limited number of connections that need the low-latency DSL connection, it is do-able.)

  1. Configure the satellite router as the normal default router to for the local LAN.
    Have it provide DHCP and DNS to the local LAN as usual.
  2. On the DSL router disable it's DHCP service and give it a static IP-address in the LAN ip-range that doesn't conflict with the DHCP pool from the satellite router.
  3. For each service/server that you want to run through the DSL connection:
    Determine the ip-address (or ip-range) for that service/server.
    On the Windows 10 PC create a static route (using the route add command, don't forget to ad a -p to make the route persistent across reboots) that sets the gateway for that ip-address (or range) to the LAN IP-address of the DSL router.

This setup will use the satellite link for all internet traffic, except for those connections, that have a route that directs that connection to the DSL. Unless you make an explicit route to point to the DSL router it will otherwise be as if the DSL router doesn't exist. It won't interfere with anything else, so local printers, NAS, etc. will keep working as usual.

Nice thing about this is that this will work via a single network interface on the Windows 10 computer. You can still use wired or Wifi as required.
And if you have multiple computers you can apply the routing to each individually as needed.
It is also OS agnostic. It will work with any OS that allows you to manually add static routes.

Only drawback is that if you wan't to use the computer on another network, you will have to remove those static routes temporarily in order to be able to use those servers/services normally while you are on the other LAN.

15

I would opt for a multi-WAN router instead.

I've seen that these offer load-balancing support, but I'm not sure if that is customizable to send certain traffic across one network versus the other; you'll have to read into the router's documentation before buying one.

This one seems to allow you to alternate WANs based on port number being used. US$179 isn't terribly expensive given the functionality.

I suggest this because even if you succeed in getting Windows 10 to do smart network switching then you'll have to repeat the process if you desire another machine to behave similarly. Also, such changes could present huge headaches if you have to use someone else's network or if your router breaks and you get a new one.

The multi-WAN router would be much more robust and reliable solution.

Getting a purpose-built networking device to achieve your goals is going to be far easier than coercing a user-oriented operating system to do something unnatural.


The other option for your "interactive" work (RDP right?) is to just get an el cheapo laptop connected to the DSL which can handle your desired monitor resolution and alternate machines as needed.

4
  • I agree with this. The only way I let W10 do this is if I create a VM for the second connection.
    – blankip
    Aug 25, 2021 at 17:55
  • @blankip Setting up a VM just to RDP somewhere else. Talk about a dummy-terminal!
    – MonkeyZeus
    Aug 25, 2021 at 19:15
  • 1
    I recommend doing this at your router, network level as @MonkeyZeus said, not only is this likely more stable, but also aggregates connections for all devices onsite.
    – studiohack
    Aug 27, 2021 at 15:37
  • 1
    This is the best way. Setup is easy and you won't screw up network if mistakes are made. These are also known as dual-wan router or load balancing router (such as TL-R470T+ $50 USD). Another alternative might be to use a router that is capable of running on OpenWRT firmware and mwan3.
    – otter.pro
    Sep 2, 2021 at 15:21
13

This is possible. I know of one program that can do this: ForceBindIP. It requires you to run each program from the command line and tell it which IP or GUID to use, if other than the default.

2
  • 4
    The "run each program from the command line" can be remedied easily by writing batch scripts for each program, and then just use them like you would use the shortcuts on your desktop
    – Hobbamok
    Aug 26, 2021 at 9:01
  • note that some programs have options for this build in, like OBS studio
    – Ferrybig
    Aug 27, 2021 at 17:10
4

Just to add to MonkeyZeus's answer.

Given the speed the internet access in your area you might be able to save a few bucks by eBay'ing a SOHO (small office home office) commercial firewall. Specifically you only need 10/100 not gigabit for internet access, so those old units are virtually worthless for corporate use, hence they usually eBay for around $20.

The setup I am envisioning is:

          +---------+
        /-| Printer |
        | +---------+
+-----+-/             +---------+ 
| SAT |---------------| Storage |
+-----+--             +---------+
        |    
        \----+----------+         +---------
             | Firewall |---------| Laptop | 
        /----+----------+         +---------
+-----+ |   
| DSL |-/
+-----+

You should continue to keep the laptop on the WIFI for the Satellite. You will need to move both the printer and the storage onto that network (reason below).

The firewalls WAN ports are each connected to the two routers. And the internal connection of the firewall is connected to the laptop. This will result in a "Double-Nat" situation. That shouldn't be a problem for internet access, but it will be a problem for the printer and the storage - which is why I said to keep the Wifi connected and move both of them onto that network.

The critical points here are:

The firewall can be configured to send traffic to the relevant route based on port used:

  • http/https -> satellite
  • RDP -> DSL

The laptop should use the wired connection as its default route as soon as its plugged in (no configuration necessary).

However since the wired connection is on a different IP range the laptop should still use the WIFI to access local services such as the printer and storage.

Back in the day I used to use old Sonicwalls for this, typically either a TZ-170 or TZ-205 - however its been over 7 years since I used them so please don't put to much weight into a particular brand.

A few final thoughts:

This setup is a little complicated, I am only really recommending it to save a few bucks - if you have the money just buy a dual wan router per MonkeyZeus's recommendation.

I have taken setups like this even further by running a VPN over each link. That allowed me to do asynchronous routing and traffic shaping. However it required a cloud server to terminate both VPN links and shape the downstream traffic - so unless you really want a "hobby project" thats probably outside the scope of what you are trying to achieve.

The nice thing about this setup is it doesn't require you to change anything on either your existing routers or the laptop. Just plug in the new firewall - if you can't get it working you just unplug it - you will be out $20 but you will be immediately back to where you were - you can't screw anything up.

2
  • 1
    Your storage device and printer are outside your firewall, and directly connected to the satellite dish ?
    – Criggie
    Aug 27, 2021 at 8:00
  • Criggie - The OP stated he had two routers one for each ISP and that the devices (storage and printer) were already connected to those. My post clearly stated that it was a ($20) budget option - as such I wasn't attempting to change the security posture of the setup, my goal was simply to use a cheap old device to provide some more intelligent routing - I don't realistically think an old ($20) firewall will significantly affect the security posture, when I have specifically put it behind the other routers to avoid exposing any vulnerabilities (it may have) to the internet.
    – DavidT
    Aug 27, 2021 at 15:56
3

This is exactly what mwan3 on OpenWRT is designed to do. I have a slower 15Mb DSL internet and a faster ~60Mb 4G connection multiplexed. I send UDP via the DSL for better latency and TCP is load balanced over both.

I use an openwrt flashed BT Home Hub, which has DSL input, and my 4g is connected via wifi to it from a 3 Wireless broadband box.

It's not super easy to setup, but the docs do cover it reasonably well and it has worked really well for me over the last couple of years

https://openwrt.org/docs/guide-user/network/wan/multiwan/mwan3

1

buy a load balance router (TL-R470T) and configure it for BINDING of two VLAN ports on the box. I am rural with hardly any phone signal, just 1 bar on phone 4G+ in some places outside. Putting two sims in each 4G device and bonding them, I can get 93 mega bits per second down load and 19 upload. I have 1 external passive ariel for a domestic router (Class 6) and another externally mounted ZYXEL router MIMO etc - POE supply so can be placed up to 100m away from the WAN router. Much cheaper faster and better than previous SAT system. No more glitch streaming - 4k costs a little for the setup but repaid in a few months by the savings.

1
  • Please add further details to expand on your answer, such as working code or documentation citations.
    – Community Bot
    Sep 7, 2021 at 18:48
0

I recommend using a service called Speedify if you need to split between 2 connections. For a subscription fee, Speedify takes 2 connections, such as those from each of your routers and essentially combines the connections to use all the bandwidth and provide redundancy between them. If either connection suddenly goes down or is otherwise unstable, Speedify will seamlessly send all data over the working connection until both are stable again.

I do not have personal experience with this app, so I cannot confirm how it deals with local network resources, especially split between the connections. I assume if the external connection associated with a network is functional then the local resource is available.

0

This is probably not a full answer, but at least a few cents.

Have you investigated Cellular (phone) Internet service. T-Mobile has one that is a flat $50/month and they provide the equipment. Verizon also has an option. Of course, it depends on your location relative to cell towers.

You added the comment:

End goal is to enable download and upload of files of solar physics data while using "remote desktop" to continue my research. RemoteDesktop and other methods, X2Go, etc., need short but quick responses to avoid timeouts. Work OK at 250Kbps upload, but multi MByte files take a long time. Desire is to end up with some programs using one channel while others needing quick response use the other.

Given this problem, I would probably get a Raspberry Pi with a giant flash memory card and configure that to do your file upload/download. It could be made to connect directly to your satelite router, but also connect to a second network, maybe wireless? to allow access from your computer.

I would avoid doing routine work over RDP. Still, 1 second latencies should not cause timeouts. I would check configuration options. But, what can you do to do your work without remote graphics. Maybe a Linux system instead. If you are doing Solar Physics you should be using Linux anyway. So, your remote system could be Linux and even your home system. RDP is the worst.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .