Назад | Перейти на главную страницу

Как создать балансировщик исходящей нагрузки с Linux?

У нас есть 2 фиксированных тарифа и теоретически двойная пропускная способность. В доме есть локальная сеть, которая все связывает.

Но когда я один, мне интересно, как я могу использовать оба соединения одновременно.

Я хочу создать решение, в котором я могу просматривать веб-страницы, а запросы страниц распределяются между двумя подключениями.

Я предполагаю, что есть дорогие маршрутизаторы, которые могут разделить трафик между 2 линиями (Edit: которые я не хочу покупать или устанавливать). Но есть ли хороший способ сделать это с помощью Linux (Edit: что я предпочитаю)?

Решение, которое я ищу, разделит запросы уже для одной страницы (несколько изображений, файлы css, файлы javascrfipt) между двумя строками.

Я думаю, что "ip route default equalize" может решить вашу проблему.

ip route replace default equalize nexthop dev ppp0 weight 1 nexthop dev ppp1 weight 1   

ppp0 - это устройство, ppp1 - другое устройство
вес 1 означает вероятность того, что пакет выберет

Я слышал о роутерах Dual-WAN. Не могли бы вы купить один из них для работы?

Я подозреваю, что можно использовать дистрибутив Linux под названием Vyatta, который выполняет балансировку нагрузки WAN, я думаю: http://www.vyatta.com/downloads/doc_registration.php

Я думаю, что другое название такого рода вещей - «Связь» или «Транкинг».

Вы не можете сделать это только с машинами в вашем доме, если оба соединения не подключены к одному и тому же интернет-провайдеру и этот провайдер не поддерживает балансировку нагрузки между двумя множественными подключениями, что было бы редкостью для бытовой службы.

Если у вас есть доступ к компьютеру с Linux, который находится в Интернете, вы могли бы сделать следующее (это не в моей голове, это недостаточно хорошо изучено, поэтому я не имею в виду конкретное программное обеспечение).

  • C1, C2: дома две клиентские машины.
  • R1: Домашний компьютер с Linux, работающий как маршрутизатор в Интернет.
  • R2: Linux-компьютер, виртуальный сервер, все, что есть в Интернете.
  • L1, L2: две фиксированные ссылки на вашего интернет-провайдера.
  • R1 устанавливает два канала VPN, PPP или L2TP через L1 / L2 к R2.
  • Установите программное обеспечение для балансировки нагрузки на обоих концах. Что-то вроде драйвера связывания Linux через два виртуальных интерфейса, которые создает VPN или что-то еще.
  • Настройте C1 и C2, чтобы R1 был шлюзом по умолчанию
  • Настройте R1, чтобы он перенаправлял трафик от C1 и C2 к R2 через связанное соединение.
  • Настройте R2 так, чтобы он перенаправлял трафик из C1 / C2 / R1 в Интернет.

Теперь, когда я все это написал, у меня меньше уверенности, что это действительно сработает, но это может привести вас на верный путь.