# Source based Multi-WAN Routing

**URL:** <https://forum.gl-inet.com/t/source-based-multi-wan-routing/63988>\
**Category:** Router\
**Tags:** KB\
**Created:** [September 14, 2025, 8:37pm UTC](https://forum.gl-inet.com/t/source-based-multi-wan-routing/63988 "2025-09-14T20:37:47Z")\
**Posts on this page:** 1\
**Showing post:** 3

<div class="post-metadata">

**Author:** ![will.qiu](https://forum-assets.gl-inet.com/letter_avatar_proxy/v4/letter/w/b38774/32.png) [@will.qiu](https://forum.gl-inet.com/u/will.qiu)\
**Post date:** [September 15, 2025, 11:34am UTC](https://forum.gl-inet.com/t/source-based-multi-wan-routing/63988/3 "2025-09-15T11:34:13Z")

</div>

Hi

> [@Noxius](#):
>
> Load balancing makes not much sense, because of the slow ISP2 connection, right? If I'm watching a 4k video and my client is pinned to eth2/ISP2 then I'll have issues. Or does the router then switch my client to eth1/ISP1?

Yes, right. Load balancing does not make much sense in your scenario.  
The session will be randomly assigned to either ISP1 or ISP2 until disconnected.

> [@Noxius](#):
>
> Can I pin some clients to eth2, either by IP or VLAN or something else? Can I do it only in loadbalance mode or can is still use fail-over mode. I have some IoT devices which does not need much bandwidth. They can use eth2, while the bandwidth heavy clients (gaming, streaming, work) use eth1. That would be my favorite configuration

This can be achieved using **`ip rule`** in failover mode.  
Please SSH into the router and run the following commands:

```auto
# 192.168.8.201/32 is the address/subnet for devices using ETH2
# Traffic originating from this address/subnet should be matched using route table 100 with priority 10.
ip rule add from 192.168.8.201 table 100 prio 10

# Add a default route to routing table 100
# Please modify 192.168.2.1 according to your network settings.
ip route add default via 192.168.2.1 dev eth2 table 100

# If you want these devices to also have failover:
ip route add default via 192.168.2.1 dev eth2 table 100 metric 1
ip route add default via 192.168.1.1 dev eth1 table 100 metric 2

# Add local route
ip route add 192.168.8.0/24 dev br-lan scope link src 192.168.8.1 table 100

```

If this setup works as expected, you can copy these commands into **`/etc/rc.local`** to make them persistent after reboot.  
For a cleaner setup, you might also consider writing a small script to automatically retrieve IP addresses and interfaces.

---

_[View the full topic](https://forum.gl-inet.com/t/source-based-multi-wan-routing/63988)._
