8

У меня есть Mac, на котором работает Mac OS X 10.6 или Ubuntu 9.10 или Windows XP (Multiboot). Решение может быть для любой системы, которая работает лучше.

У меня есть два интернет-провайдера, к одному можно получить доступ через Wi-Fi, к одному можно получить доступ через локальную сеть. В Mac OS XI можно определить приоритет, какую сеть выбрать в первую очередь. Но я хочу сбалансировать нагрузку на обе сети.

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

Компиляция и настройка программ в Linux для меня не проблема.

Аналогичный вопрос: балансировка нагрузки с несколькими шлюзами

6 ответов6

1

В Connectify Dispatch есть решение, которое будет делать именно то, что вам нужно. В настоящее время только для Windows, но люди успешно виртуализировали и использовали свое программное обеспечение на OS X.

Поскольку вы уже запускали (работали) Windows XP, я подумал, что вы сможете разобраться с этой частью самостоятельно.


Самая большая проблема заключается в том, что Windows легко предлагает поддержку нескольких сетевых карт, в то время как в OS X это не так просто реализовать.

1

Закрытой темой для linux будет настройка метрики для маршрутов. Меньшие числа предпочтительнее более высоких чисел. Если вы дадите обоим маршрутам одну и ту же метрику, я думаю, они будут выбраны с равной вероятностью.

Я думаю, что техника, которую вы пытаетесь достичь, называется многоходом. У меня нет прямого опыта с этим. Тем не менее, несколько вещей, которые вы, вероятно, должны иметь в виду.

  • По умолчанию, я думаю, у вас будет только один маршрут по умолчанию. Это означает, что весь исходящий трафик предпочтет один интерфейс по умолчанию. Вам необходимо изучить наличие нескольких маршрутов по умолчанию или динамическое изменение этого маршрута с течением времени.
  • Для жизни отдельного входящего (TCP) соединения оно должно оставаться на том же интерфейсе, на котором оно было установлено. Я думаю.

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

1

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

Входящий трафик в ответ на ваши запросы также должен быть сбалансирован, поскольку он вернется к интерфейсу (Public IP), из которого поступил запрос.

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

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

0

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

Причина в том, что оба трафика разделяются на две отдельные сети, не похоже, что они вернутся. Если бы у вас было 2 канала от 1 провайдера, это могло бы стать возможным.

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

Пример: запустить обновления, используя 192.168.2.* Интернет-провайдер Wi-Fi работает с периодом полураспада, используя 192.168.1.* LAN ISP.

0

Существует своего рода обходной путь: мое приложение может балансировать нагрузку, я могу определить 2 соединения, которые затем используются оба.

Затем я направляю один из IP-адресов сервера на один из IPS.

на Mac OS 10.6:

маршрут добавить -хост XXX.XXX.XXX.XXX 192.168.1.1

Я знаю, это очень специфично, и работает, только если ips сервера всегда одинаковы. И если приложение может балансировать нагрузку любым способом.

0

URL, упомянутый ниже, специально предназначен для победы 7, но вы должны получить представление о нем. Он изменяет метрику шлюза по умолчанию в зависимости от нагрузки на интерфейс, что приводит к распределению нагрузки.

http://www.youtube.com/watch?v=Qh5Eb8sXvuk

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .