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


Следите за новостями русскоязычного сообщества Ubuntu в Twitter-ленте @ubuntu_ru_loco

Автор Тема: Интернет шлюз 3 сетевых адаптера 2 провайдера  (Прочитано 3007 раз)

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

Оффлайн MonoLife

  • Автор темы
  • Активист
  • *
  • Сообщений: 349
  • "Пилите, Шура, пилите!" ©
    • Просмотр профиля
    • Under sky of Half-Life
Доброго времени суток всем!
Жил-не тужил, тут нужда заставила создать шлюз с 2-мя провайдерами на Ubuntu server 14.04. Цель - резервный канал должен включаться только при отсутствии основного.
В сети много скриптов для переключения, но меня волнует сейчас вопрос:
Один канал eth0 ч/з шлюз 192.168.1.1 Ростелекома подключен и клиент за шлюзом и-нет получает. Второй канал (Инфорта) eth1 настроен но не подключен (eth1 при этом должен быть RUNNING, если кабель не подключен?). Eth2 - LAN 192.168.2.1. Возможности проверить нет, но настроить шлюз надо. Я просто не знаю что будет если воткнуть кабель со вторым провайдером? Будет ли интернет и по какому каналу? Или нужно настраивать уже сейчас маршрутизацию (iproute2, iptables). И как сделать, чтобы после подключения кабеля в eth1 "Инфорта" пока не использовался, а работал сразу основной? И можно ли в iptables указывать маскарадинг, проброс портов и т.п. сразу для 2-х внешних интерфейсов?
Спасибо, и извините за кашу в голове:)


Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 26055
    • Просмотр профиля
Можно настраивать уже сейчас, главное, не ошибиться в маршрутизации.
Пока вы не начали играться со шлюзами по умолчанию, второй кабель использоваться не будет.
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

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

Оффлайн MonoLife

  • Автор темы
  • Активист
  • *
  • Сообщений: 349
  • "Пилите, Шура, пилите!" ©
    • Просмотр профиля
    • Under sky of Half-Life
А с чего начинать и что настраивать? Тут уже просто после перезагрузки по дефолту вдруг основным стал 2-й интерфейс (eth1, это где нет кабеля). Интернет, естественно, потерялся:(
Подскажите плиз как при загрузке указать основным eth0 (IP 119.168.1.90 getway 192.168.1.1)?
Что-то после ввода команды  ip route add default via 192.168.1.1 dev eth0 пинг во внешку все равно не проходит

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 26055
    • Просмотр профиля
А с чего начинать и что настраивать? Тут уже просто после перезагрузки по дефолту вдруг основным стал 2-й интерфейс (eth1, это где нет кабеля). Интернет, естественно, потерялся:(
Как настроили, так и работает…
Цитировать
плиз
Чо?
Цитировать
как при загрузке указать основным eth0 (IP 119.168.1.90 getway 192.168.1.1)?
А как сейчас настроено?
Цитировать
Что-то после ввода команды  ip route add default via 192.168.1.1 dev eth0 пинг во внешку все равно не проходит
А почему должен проходить?
Вы же добавили маршрут, а не заменили.
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

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

Оффлайн MonoLife

  • Автор темы
  • Активист
  • *
  • Сообщений: 349
  • "Пилите, Шура, пилите!" ©
    • Просмотр профиля
    • Under sky of Half-Life
Цитировать
Как настроили, так и работает…
ну да, указал маскарадинг без интерфейса, сразу на eth1 по дефолту стало, почему интересно?
Цитировать
Чо?
please
Цитировать
А как сейчас настроено?
как в interfaces:
(Нажмите, чтобы показать/скрыть)
Цитировать
Вы же добавили маршрут, а не заменили.
точно!
Можно в interfaces добавить строчку?
post-up route change default 192.168.1.1 dev eth0

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13750
    • Просмотр профиля
Вы же сами себе на хвост наступаете, указывая в interfaces 2 гетвея. Уберите  неиспользуемый и пребудет Вам щастье
Принимаю благодарности в WMR и WMZ на кошельки:
R158160676909 и Z313280060764

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 26055
    • Просмотр профиля
Можно в interfaces добавить строчку?
Можно из interfaces убрать строчку… про второй gw, как вам уже подсказали.
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

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

Оффлайн MonoLife

  • Автор темы
  • Активист
  • *
  • Сообщений: 349
  • "Пилите, Шура, пилите!" ©
    • Просмотр профиля
    • Under sky of Half-Life
Цитировать
Уберите  неиспользуемый
Ага, спасибо, на сей момент понятно. Это сейчас он не используется, в боевом режиме кабель будет подключен. Значит, при старте системы его нужно добавить динамически после загрузки eth0 и eth1?

Пользователь добавил сообщение 18 Июль 2016, 03:50:47:
Уточнить хотелось бы: убрать только строчку про gw? Описание самого eth1 оставить?
« Последнее редактирование: 18 Июль 2016, 03:50:47 от MonoLife »

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13750
    • Просмотр профиля
Значит, при старте системы его нужно добавить динамически после загрузки eth0 и eth1?
Зависит от алгоритма переключения между каналами

Уточнить хотелось бы: убрать только строчку про gw? Описание самого eth1 оставить?
Зависит от задачи, которую Вы решаете, настраивая данный интерфейс.
Принимаю благодарности в WMR и WMZ на кошельки:
R158160676909 и Z313280060764

Оффлайн MonoLife

  • Автор темы
  • Активист
  • *
  • Сообщений: 349
  • "Пилите, Шура, пилите!" ©
    • Просмотр профиля
    • Under sky of Half-Life
Задача такова:
Раздавать и-нет в локальную сеть посредством основного интерфейса eth0 и при отсутствии связи с 1-м провайдером - переключать на 2-го (eth1).
Алгоритм действий мне сейчас не понятен:(
1. Как нужно оформить конфигурацию в interfaces, чтобы при старте системы активным был eth0 (1-м провайдер), а 2-й активировался бы при потере связи с 1-м
2. Нужно ли создавать правила маршрутизации в iproute2, если да то как предварительно нужно оформить конфигурацию в interfaces для интерфейсов.
3. Как я думаю, скрипт переключения при запуске должен пытаться активировать основной интерфейс и при отсутствии связи активировать 2-й

Помогите разобраться, добрый гуру!
PS: осложняется, имхо, сейчас еще тем, что для 2-го провайдера у меня только "зарезервирован" интерфейс, и проверить работу не могу.
« Последнее редактирование: 18 Июль 2016, 08:04:20 от MonoLife »

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13750
    • Просмотр профиля
Раздавать и-нет в локальную сеть посредством основного интерфейса eth0 и при отсутствии связи с 1-м провайдером - переключать на 2-го (eth1).
Это мы поняли. Непонятно только какой алгоритм выявления "отсутствия связи" Вы хотите применять.

Самый простой - "упал линк до провайдера". Решается изменением метрики дефолтного маршрута через второго провайдера. При падении  линка основного канала, удаляется дефолтный маршрут и вступает в работу второй.

Второй вариант: проверять пингом доступность один из ресурсов(а ещё лучше несколько) в интернете. В случае отсутствия связи с ними переходим на резервный канал. Ну и не забывать механизм возврата при восстановлении основного канала. Механизм собственно так же сводится к смене дефолтного маршрута

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

Реализация: пишите скрипты, ищите готовые и пилите под себя. Не можете сделать то или другое - нанимайте специалиста.
Принимаю благодарности в WMR и WMZ на кошельки:
R158160676909 и Z313280060764

Оффлайн MonoLife

  • Автор темы
  • Активист
  • *
  • Сообщений: 349
  • "Пилите, Шура, пилите!" ©
    • Просмотр профиля
    • Under sky of Half-Life
Я склоняюсь ко второму варианту. Меня интересует алгоритм действий
1. Как нужно оформить конфигурацию в interfaces? 2-й, вероятно, активировался бы при потере связи с 1-м с пм. скрипта по 2-му варианту
2. Применительно ко 2-му варианту - нужно ли создавать правила маршрутизации в iproute2, если да то как предварительно нужно оформить конфигурацию в interfaces для интерфейсов.
Сейчас в interfaces я закомментировал gw в интерфейсе eth1.

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13750
    • Просмотр профиля
2. Применительно ко 2-му варианту - нужно ли создавать правила маршрутизации в iproute2
Зависит от реализации алгоритма

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


Сейчас в interfaces я закомментировал gw в интерфейсе eth1.
молодец, чо..
Принимаю благодарности в WMR и WMZ на кошельки:
R158160676909 и Z313280060764

Оффлайн MonoLife

  • Автор темы
  • Активист
  • *
  • Сообщений: 349
  • "Пилите, Шура, пилите!" ©
    • Просмотр профиля
    • Under sky of Half-Life
Цитировать
молодец, чо..
а то!:)
Спасибо за уделенное время.

Оффлайн MonoLife

  • Автор темы
  • Активист
  • *
  • Сообщений: 349
  • "Пилите, Шура, пилите!" ©
    • Просмотр профиля
    • Under sky of Half-Life
это опять я!
сейчас логика такова: если один упал - переключается на другой (replace default).
Нужна ли маркировка трафика, если я не собираюсь балансировать и-нет или распределять трафик по пользователям, и если в локальной сети будет сервис, слушающий определенные порты?

 

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