Форум русскоязычного сообщества Ubuntu


Считаете, что Ubuntu недостаточно дружелюбна к новичкам?
Помогите создать новое Руководство для новичков!

Автор Тема: использование нескольких каналов интернет  (Прочитано 2239 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн meinung

  • Автор темы
  • Активист
  • *
  • Сообщений: 310
  • in nomine patris et fili et spiritus sancti amen.
    • Просмотр профиля
здравствуйте! всех  с Новым годом!  :D
  в общем  вот такой  вот сабж!
вопрос: каим образом можно явно задать, какой компьютер   с какого внешнего интерфейса должен  брать интернет.
знаю что вопрос поставлен  странно,    поэтому  позволю пояснить.
 существует сеть  10.117.254.0/255.255.255.0
 это   локальная сеть, соединяющаяя все   компьютеры, ADSL  модем. Модем настроен в режиме моста. на этом его роль заканчивается.  Один из компьютеров сети  работает в  роли маршрутизатора. На нем установлена UBUNTU-SERVER 11.10  когда на нем был подключен  один интерфейс для доступа в интернет  все работало идеально. теперь их 2 и я не могу заставить их работать. Вы скажете,  что в вики есть  соответсвующая тема, но моя задача несколько иная. при  необходимости  указывать компьютерам- клиентам из какого интерфейса  они  бут брать интернет с помощью  IP   
итак  список  интерфейсов
eth0 -локалка
ra0  беспроводная сеть
ppp10  основной  канал
ppp11  вторй канал
когда  я поднял  2 PPP   все  рухнуло и  понятно почему.  не  настроены  роуты.
я думал,  что   помогут следующие записи:
iptables -t nat -A PREROUTING -s адреса  компьютеров, которые  надо подключить сюда  через запятую -o ppp10 -j MAQUERADE
  у кого есть какие  идеи ???? заранее спасибо!

(Нажмите, чтобы показать/скрыть)
(Нажмите, чтобы показать/скрыть)
забыл добавить, что  шлюзы у PPP соединений иногда меняются  :o
« Последнее редактирование: 01 Январь 2012, 21:55:27 от meinung »
just read this flowing manual

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13746
    • Просмотр профиля
Метим таблесами по source-адресу и маршрутизируем по меткам средствами iproute2
Понять механизм работы можно из местного wiki
Принимаю благодарности в WMR и WMZ на кошельки:
R158160676909 и Z313280060764

Оффлайн meinung

  • Автор темы
  • Активист
  • *
  • Сообщений: 310
  • in nomine patris et fili et spiritus sancti amen.
    • Просмотр профиля
 а  для  этого  нужно ведь ставить  дополнительные модули  к  таблзу ?!
 и как  еще  и  ra0   маршрутизировать мне не свосем   ясно(((
iptables -t mangle -A POSTROUTING -o pppx -m connmark --mark 0 -j ROUTE
 
как   видно из   кода тут  нада  ROUTE   а как наложить патч на  ядро я не  знаю(
« Последнее редактирование: 02 Январь 2012, 01:33:23 от meinung »
just read this flowing manual

Гарри Кашпировский

  • Гость
Вообще-то тут надо две таблицы маршутизации создать, для каждого из провайдеров, например ISP1 и ISP2 (в /etc/iproute2/rt_tables). Кроме того, в таблице main, записывается два шлюза (nexthop).
Таблица main
Код: Text
  1. default
  2.         nexthop dev ppp10 weight 1
  3.         nexthop dev ppp11 weight 1
Первая таблица (ISP1)
Код: Text
  1. default dev ppp10  scope link
Вторая таблица (ISP2)
Код: Text
  1. default dev ppp11  scope link

Код: Text
  1. iptables -t mangle -A PREROUTING -s one_net/28 -j MARK --set-xmark 0x1 # маркируем первую сетку
  2. iptables -t mangle -A PREROUTING -s two_net/28 -j MARK --set-xmark 0x2 # маркируем вторую сетку
  3. ip rule add from $(внешн_ip_ppp10) table ISP1 # добавляем адреса ppp10 и ppp11, что бы пакет пришедший
  4. ip rule add from $(внешн_ip_ppp11) table ISP2 # на них, уходил через эту же таблицу
  5. ip rule add fwmark 0x1 table ISP1 # добавляем маркер первой сети в таблицу ISP1
  6. ip rule add fwmark 0x2 table ISP2 # то же самое для второй сети в таблице ISP2

Вот примерно так, первая сеть - one_net пойдет через таблицу ISP1, вторая - two_net, через таблицу ISP2.
Для трёх провайдеров (или трех сетей) будет три таблицы и три марки, три шлюза в main, для четырёх - четыре и т.д.
« Последнее редактирование: 02 Январь 2012, 02:48:31 от KT315 »

Оффлайн meinung

  • Автор темы
  • Активист
  • *
  • Сообщений: 310
  • in nomine patris et fili et spiritus sancti amen.
    • Просмотр профиля
про   команды на маркировку  понятно. а вот  с таблицами  я так и не могу  понять
  сразу  после объявления таблицы  писать  прямо в rt_tables  "default  dev ..."  или  надо в этой папке  создать файлы  с этим содержанием.  пс я понимаю  вопрос наиглупейший наверно, но я  просто хочу вникнуть, в  решаемый  сабж, и у меня    не особо  получается,  маскировку как  я понимаю  надо добавлять с учетом   того   на какой  ppp  вешается  клиент ?
just read this flowing manual

Гарри Кашпировский

  • Гость
Сразу после объявления таблиц маршутизации в /etc/iproute2/rt_tables, надо записывать маршруты в эти таблицы.
К примеру пусть в /etc/iproute2/rt_tables будут две таблицы
Код: Text
  1. root@localhost:~# cat /etc/iproute2/rt_tables
  2. #
  3. # reserved values
  4. #
  5. 255     local
  6. 254     main
  7. 253     default
  8. 252     ISP1 # 1-я
  9. 251     ISP2 # 2-я
  10. 0       unspec
  11.  
Следовательно записываем
Код: Text
  1. ip r a default dev ppp10 t ISP1
  2. ip r a default dev ppp11 t ISP2
  3. ip r a default nexthop dev ppp10 weight 1 nexthop dev ppp11 weight 1
И дальше маркируем и записываем правила прохождения пакетов (ip rule).
Поскольку внешние интерфейсы создаются демоном pppd, то автоматизировать весь процесс, в том числе переключение канала в случае падения одного из линков, лучше всего в /etc/ppp/ip-up|down.d/
Цитировать
маскировку как  я понимаю  надо добавлять с учетом   того   на какой  ppp  вешается  клиент ?
Совершенно верно. Только следует учесть что сети записываются как CIDR.
Например есть внутренняя сетка 192.168.0.0/24, делим на два:
192.168.0.0/25 - все клиенты пойдут через ISP1
192.168.0.128/25 - пойдут через ISP2
Вот так, нехитрыми манипуляциями можно получить решение, которое у известных брендов позицинируется как small enterprise solution.
« Последнее редактирование: 02 Январь 2012, 13:45:02 от KT315 »

Оффлайн meinung

  • Автор темы
  • Активист
  • *
  • Сообщений: 310
  • in nomine patris et fili et spiritus sancti amen.
    • Просмотр профиля
Цитировать
Цитировать
маскировку как  я понимаю  надо добавлять с учетом   того   на какой  ppp  вешается  клиент ?
Совершенно верно. Только следует учесть что сети записываются как CIDR.
Например есть внутренняя сетка 192.168.0.0/24, делим на два:
192.168.0.0/25 - все клиенты пойдут через ISP1
192.168.0.128/25 - пойдут через ISP2
Вот так, нехитрыми манипуляциями можно получить решение, которое у известных брендов позицинируется как small enterprise solution.
вот  только сетей в ви де локалки у нас  2-е
ra0  и eth0.
just read this flowing manual

Гарри Кашпировский

  • Гость
Это ничего не меняет. У меня, вообще три подсети в локалке.

Оффлайн meinung

  • Автор темы
  • Активист
  • *
  • Сообщений: 310
  • in nomine patris et fili et spiritus sancti amen.
    • Просмотр профиля
огромное спасибо,  наконец-то  все понятным русским языком,  и так, как я хотел    оказалось что никого  метить не надо  все  заработало  на одной маскировке после того, как   протисал таблицы что  вы дали  :D
just read this flowing manual

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13746
    • Просмотр профиля
Вообще-то изначально вопрос несколько иначе:
но моя задача несколько иная. при  необходимости  указывать компьютерам- клиентам из какого интерфейса  они  бут брать интернет с помощью  IP
В приведённом решении используется распределение траффика без указания "кому откуда брать"
Принимаю благодарности в WMR и WMZ на кошельки:
R158160676909 и Z313280060764

Оффлайн meinung

  • Автор темы
  • Активист
  • *
  • Сообщений: 310
  • in nomine patris et fili et spiritus sancti amen.
    • Просмотр профиля
Re: использование нескольких каналов интернет
« Ответ #10 : 02 Январь 2012, 22:50:58 »
опять  все рухнуло
 после  создания второй  записи
iptables -t nat -A POSTROUTING -o ppp10 -s 10.117.254.4,10.117.0.0/24 -j MASQUERADE
iptables -t nat -A POSTROUTING -o ppp11 -s 10.117.254.5 -j MASQERADE
  теперь отказывается  работать  пока не  убью  один из PPP

meinung@ubuntu:~$ cat /etc/iproute2/rt_tables
#
# reserved values
#
255     local
254     main
253     default
252     ISP1
251     ISP2
0       unspec
#
# local
#
#1      inr.ruhep
meinung@ubuntu:~$
« Последнее редактирование: 02 Январь 2012, 22:53:01 от meinung »
just read this flowing manual

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 25973
    • Просмотр профиля
Re: использование нескольких каналов интернет
« Ответ #11 : 03 Январь 2012, 06:08:10 »
существует сеть  10.117.254.0/255.255.255.0
 это   локальная сеть, соединяющаяя все   компьютеры, ADSL  модем. Модем настроен в режиме моста.
Настройте сеть нормально, потом будем разговаривать дальше.
Модем вынести отдельно от локальной сети, либо переключить в режим роутера.
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

Прежде чем [Отправить], нажми [Просмотр] и прочти собственное сообщение. Сам-то понял, что написал?…

Оффлайн meinung

  • Автор темы
  • Активист
  • *
  • Сообщений: 310
  • in nomine patris et fili et spiritus sancti amen.
    • Просмотр профиля
Re: использование нескольких каналов интернет
« Ответ #12 : 03 Январь 2012, 10:18:15 »
 а чем мешает наличие  модема  в одной  сети ?   :o  у нас ведь есть  компьютер с Ubuntu    про него идет речь во всех клиентских компх  как  о  default gateway про модем из них никто не знает    даже и сама Ubuntu.
пожалуйста поясните    ваш  аргумент, утверждающий,  что   адсл  модем, находящийся со всеми  компьютерами  а одном сегменте  сети  мешает работе  указаных   правил!
« Последнее редактирование: 03 Январь 2012, 19:56:33 от meinung »
just read this flowing manual

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 25973
    • Просмотр профиля
Re: использование нескольких каналов интернет
« Ответ #13 : 03 Январь 2012, 21:03:56 »
ADSL модем  _в режиме бриджа_.
Учимся читать ответы полностью, а не агриться на первую фразу.
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

Прежде чем [Отправить], нажми [Просмотр] и прочти собственное сообщение. Сам-то понял, что написал?…

Оффлайн meinung

  • Автор темы
  • Активист
  • *
  • Сообщений: 310
  • in nomine patris et fili et spiritus sancti amen.
    • Просмотр профиля
Re: использование нескольких каналов интернет
« Ответ #14 : 03 Январь 2012, 23:41:10 »
 и все равно я не понимаю чем вам  мешает ADSL modem  настроеный в режиме   моста, суть его настройки как раз состоит в возведении прозрачного моста между eth  и nas  интерфейсами модема (я  через тельнет подсмотрел )
just read this flowing manual

 

Страница сгенерирована за 0.065 секунд. Запросов: 24.