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


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

Автор Тема: Помогите определить переменные для интерфейсов.  (Прочитано 3357 раз)

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

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13763
    • Просмотр профиля
Вы понимаете на что влияет метрика маршрута? и на что влияет параметр weight в балансировке?

Оффлайн ivsatel

  • Автор темы
  • Активист
  • *
  • Сообщений: 336
    • Просмотр профиля
Да спасибо, теперь все понял.

Оффлайн ivsatel

  • Автор темы
  • Активист
  • *
  • Сообщений: 336
    • Просмотр профиля
Появилась такая ошибка:
not replacing existing default route through ppp1
Подскажите как (правильно написать) и куда, правильно добавить команду о удалении маршрута по умолчанию в этом скрипте IP-Балансировка: объединяем несколько интернет-каналов в один?

(Нажмите, чтобы показать/скрыть)
Или я не в правильном направлении?

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

  • Гость
Цитировать
Помогите определить переменные для интерфейсов.
Если реализовываешь через ip-up,посмотри /etc/ppp/ip-up, там указаны все необходимые переменные. Вот часть моего скрипта балансировки, ситуация та же, ppp0 и ppp1
/etc/ppp/ip-up.d/route
Код: (bash) [Выделить]
if [ $6 = "nbn" ] && [ -f /var/run/ppp1.pid ]; then
  if [ $(ip r | grep nexhop | wc -l) != 2 ]; then
    ip r d default
    ip r a default nexthop dev $1 weight 10 nexthop dev ppp1 weight 1
    konsulrt
    comlanrt
    nbnrt
  fi
$6 - имя соединения
$1 - имя устройства
« Последнее редактирование: 27 Августа 2011, 22:38:59 от KT315 »

Оффлайн ivsatel

  • Автор темы
  • Активист
  • *
  • Сообщений: 336
    • Просмотр профиля
KT315
С переменными не разобрался...
При учете что ip динамический + нет шлюза по умолчанию.
Вот так не работает.
(Нажмите, чтобы показать/скрыть)
« Последнее редактирование: 23 Июня 2012, 11:57:06 от ivsatel »

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

  • Гость
И не будет. Я тоже поначалу обратился на wiki, почитав статью. На первый взгляд всё понятно, но если интерфейсы физические, а не виртуальные, как в твоём или моём случае, это несколько не годится, поэтому расскажу как делал я.  Мне пришлось писать свои скрипты /etc/ppp/ip-(down|up).d/route
Суть их в следующем: когда поднимается виртуальный интерфейс, срабатывают скрипты /etc/ppp/ip-up.d/* и скрипт /etc/ppp/ip-up.d/route опрашивает систему на наличие еще одного виртуального интерфейса, и в зависимости от состояния применяет те или иные правила для маршрутизации. Состояния сдедующие:
/etc/ppp/ip-up.d/route
а) Если другой интерфейс уже поднят, смотрим таблицу маршрутов, на предмет default gate
  а.1) Если default gate не соответствует шаблону, записываем маршруты, иначе оставляем как есть.
  а.2) Записываем маршруты в таблицы маршрутизации (ip route ... table T1), и правила маршрутизации (ip rule)
б) Если другой интерфейс опущен, применяем default gate через тот интерфейс, который поднялся.
/etc/ppp/ip-down.d/route
a) Удаляем маршруты в таблицах маршрутизации и правила маршрутизации ( ip route flush table N)
6) в зависимости, какой интерфейс опускается, применяем маршрут по умолчанию через другой, или удаляем default gate совсем, если других интерфейсов нет.

Получилось что, когда первое P-t-P соединение лежит, маршрутизация направлена через второе, то есть по сути проверку делает сам pppd.
Такая схема у меня работает месяцев 7 на домашнем VLAN-маршрутизаторе, пока без нареканий.

Оффлайн ivsatel

  • Автор темы
  • Активист
  • *
  • Сообщений: 336
    • Просмотр профиля
Во первых огромное спасибо KT315 за предоставленный материал и наработки.
(Нажмите, чтобы показать/скрыть)
KT315 Еще раз спасибо! Все получилось! Действительно параметр ipparam не отрабатывал, явно указал его в /etc/ppp/peers/dsl-provider и в /etc/ppp/peers/dsl-provider2. И все запустилось!

Вот как выглядит сейчас:

(Нажмите, чтобы показать/скрыть)

(Нажмите, чтобы показать/скрыть)

ip r
195.2.238.18 dev ppp1  proto kernel  scope link  src 46.148.136.151
195.2.238.18 dev ppp0  proto kernel  scope link  src 195.2.238.226
192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.1
default
        nexthop dev ppp0 weight 8
        nexthop dev ppp1 weight 2
« Последнее редактирование: 23 Июня 2012, 11:56:07 от ivsatel »

 

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