Це, безумовно, можливо. Багато з нас працювали змішаними широкосмуговими широкосмуговими конфігураціями для корпоративних років тому, і вони працювали дуже добре. Багато хто, мабуть, все ще робить!
Це можна зробити різними способами, включаючи використання iptables
правил та / або iproute2
( ip(8)
команди) для настройки маршрутизації політики.
Балансування навантаження здійснюється не на рівні пакету, а на рівні з'єднання . Тобто всі пакети з'єднання виходять з одного інтерфейсу. Який інтерфейс це залежить від політики маршрутизації. Без співпраці ваших перших маршрутизаторів за межами власної інфраструктури, це єдиний спосіб зробити це. Віддалені комп'ютери не можуть сказати, що ваші дві IP-адреси фактично належать одному і тому ж комп'ютеру. У TCP з'єднання однозначно ідентифікується 4-канальним (Remote-IP, Remote-Port, Local-IP, Local-Port). Якщо ви надсилаєте пакети з різних IP-адрес, віддалений сервер вважає, що вони належать до двох різних з'єднань і безнадійно плутається.
Очевидно, що подібні речі мають більше сенсу в корпоративному середовищі, або у багатьох, хто має багато користувачів, які спільно використовують одне з'єднання. На роботі ми поєднували ADSL-лінію 256 кбіт / с з кабельною лінією 512 кбіт / с (так, тоді), і все це спрацювало надзвичайно добре, завдяки додатковій перевазі високої доступності.
Для отримання реальної практичної допомоги, ось один із способів зробити цеiproute2
. Він призначений для Debian, але він працює, звичайно, і на Ubuntu.