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


Увидели сообщение с непонятной ссылкой, спам, непристойность или оскорбление?
Воспользуйтесь ссылкой «Сообщить модератору» рядом с сообщением!

Автор Тема: Объединение двух интернет каналов в один.  (Прочитано 3342 раз)

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

Оффлайн gaterkik

  • Автор темы
  • Новичок
  • *
  • Сообщений: 15
    • Просмотр профиля
Re: Объединение двух интернет каналов в один.
« Ответ #15 : 25 Сентября 2013, 00:25:56 »
AnrDaemon, к сожалению я тоже не знаю зачем в них пишется всякое непонятное. С сетевыми настройками, кроме вышеописанного скрипта, я ничего не делал с момента установки системы.
Если Вы мне поможете избавиться от непонятного и организовать задуманное и описанное в шапке, буду безмерно благодарен.

Оффлайн fli

  • Активист
  • *
  • Сообщений: 257
    • Просмотр профиля
Re: Объединение двух интернет каналов в один.
« Ответ #16 : 25 Сентября 2013, 00:42:05 »
У меня все работает. Почему у вас не выходит - не ясно.
Сделайте так:
-уберите скрипт из автозагрузки;
-перезагрузитесь, этим очистятся таблицы provider1 & provider2;
-выполните в терминале по очереди:
ip route add default dev wlan0 via 192.168.1.1 table provider1
ip route add default dev eth0 via 192.168.1.2 table provider2
Ошибки сюда.
Смотрим  ip route show table provider1 и 2

Прописываем два шлюза:
ip route add default scope global nexthop via $P1 dev $IF1 weight $W1 nexthop via $P2 dev $IF2 weight $W2проверяем их:
ping 8.8.8.8 -I eth0
ping 8.8.8.8 -I wlan0
« Последнее редактирование: 25 Сентября 2013, 00:44:02 от fli »

Оффлайн gaterkik

  • Автор темы
  • Новичок
  • *
  • Сообщений: 15
    • Просмотр профиля
Re: Объединение двух интернет каналов в один.
« Ответ #17 : 25 Сентября 2013, 01:04:12 »
-в авозагрузке нет, т.к. все на этапе наладки
-перезагрузка, таблизы очищены
- команды выполнены без ошибок
ip route show table provider1         default via 192.168.1.1 dev wlan0
ip route show table provider2         default via 192.168.1.2 dev eth0
-проверка пингами
ping 8.8.8.8 -I eth0
(Нажмите, чтобы показать/скрыть)

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

Т.е. через wlan не идет.
Смотрим дальше
(Нажмите, чтобы показать/скрыть)
Шлюз, на который смотрит wlan, не виден. Но если через gui  отключаю eth0(либо вытыкаю шнур), то шлюз начинает пинговаться и гугл через него тоже виден.
« Последнее редактирование: 25 Сентября 2013, 01:09:50 от gaterkik »

Оффлайн fli

  • Активист
  • *
  • Сообщений: 257
    • Просмотр профиля
Re: Объединение двух интернет каналов в один.
« Ответ #18 : 25 Сентября 2013, 01:06:06 »
факинщет.
завтра смоделирую на ВМ, выложу готовый скриптю

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 28511
    • Просмотр профиля
Re: Объединение двух интернет каналов в один.
« Ответ #19 : 25 Сентября 2013, 01:20:13 »
ip rule show
забыли.
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

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

Оффлайн gaterkik

  • Автор темы
  • Новичок
  • *
  • Сообщений: 15
    • Просмотр профиля
Re: Объединение двух интернет каналов в один.
« Ответ #20 : 25 Сентября 2013, 20:14:25 »
ip rule show
(Нажмите, чтобы показать/скрыть)

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

Оффлайн fli

  • Активист
  • *
  • Сообщений: 257
    • Просмотр профиля
Re: Объединение двух интернет каналов в один.
« Ответ #21 : 25 Сентября 2013, 20:32:24 »
Скрипт:
IF1="eth0"
IF2="wlan0"
IP1="192.168.1.15"
IP2="192.168.1.17"
P1="192.168.1.1"
P2="192.168.1.2"

P1_NET="192.168.1.0/24"
P2_NET="192.168.1.0/24"

TBL1="provider1"
TBL2="provider2"

W1="1"
W2="1"

ip rule del from $IP1 table $TBL1 > /dev/null 2>&1
ip rule del from $IP2 table $TBL2 > /dev/null 2>&1

ip rule add from $IP1 table $TBL1 > /dev/null 2>&1
ip rule add from $IP2 table $TBL2 > /dev/null 2>&1


ip route add default via $P1  dev $IF1 table $TBL1 > /dev/null 2>&1
ip route add $P1_NET dev $IF1 src $IP1 table $TBL1 > /dev/null 2>&1

ip route add default via $P2 dev $IF2  table $TBL2 > /dev/null 2>&1
ip route add $P2_NET dev $IF2 src $IP2 table $TBL2 > /dev/null 2>&1

ip route delete default
ip route add default scope global nexthop via $P1 dev $IF1 weight $W1 nexthop via $P2 dev $IF2 weight $W2



OLDIF1="0"
OLDIF2="0"

while true; do
 ping -c  2 -s 1 8.8.8.8 -I $IF1 > /dev/null 2>&1

if [ $? -ne 0 ]
then
NEWIF1="0"
else
NEWIF1="1"
fi


ping -c  2 -s 1 8.8.8.8 -I $IF2 > /dev/null 2>&1

if [ $? -ne 0 ]
then
NEWIF2="0"
else
NEWIF2="1"
fi

if (( [ $NEWIF1 -ne $OLDIF1 ] || [ $NEWIF2 -ne $OLDIF2 ] )); then
if (( [ $NEWIF1 -eq "1" ] && [ $NEWIF2 -eq "1" ] )); then

ip route delete default
ip route add default scope global nexthop via $P1 dev $IF1 weight $W1 nexthop via $P2 dev $IF2 weight $W2


elif (( [ $NEWIF1 -eq "1" ] && [ $NEWIF2 -eq "0" ] )); then
ip route flush cache
ip route delete default
ip route add default via $P1 dev $IF1

elif (( [ $NEWIF1 -eq "0" ] && [ $NEWIF2 -eq "1" ] )); then

ip route flush cache
ip route delete default
ip route add default via $P2 dev $IF2
fi

fi

OLDIF1=$NEWIF1
OLDIF2=$NEWIF2
sleep 60
done

в таблицах в rules прописывается wlan0\eth2
ip r l table provider1
default via 192.168.1.1 dev eth0
127.0.0.0/8 dev lo  scope link
192.168.1.0/24 dev eth0  scope link  src 192.168.1.15

ip r l table provider2
default via 192.168.1.1 dev eth0
127.0.0.0/8 dev lo  scope link
192.168.1.0/24 dev wlan0  scope link  src 192.168.1.17
« Последнее редактирование: 25 Сентября 2013, 20:36:50 от fli »

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 28511
    • Просмотр профиля
Re: Объединение двух интернет каналов в один.
« Ответ #22 : 25 Сентября 2013, 20:43:02 »
Скрипт:

в таблицах в rules прописывается wlan0\eth2
ip r l table provider1
default via 192.168.1.1 dev eth0
127.0.0.0/8 dev lo  scope link
192.168.1.0/24 dev eth0  scope link  src 192.168.1.15

ip r l table provider2
default via 192.168.1.1 dev eth0
127.0.0.0/8 dev lo  scope link
192.168.1.0/24 dev wlan0  scope link  src 192.168.1.17
Зачем вам правила
127.0.0.0/8 dev lo  scope link
192.168.1.0/24 dev wlan0  scope link  src 192.168.1.17
если они НИКОГДА не будут работать?

Пользователь решил продолжить мысль 25 Сентября 2013, 20:43:35:
ip rule show
(Нажмите, чтобы показать/скрыть)
Маршрутизатор у вас не смотрит в кастомные таблицы. Вообще.
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

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

Оффлайн gaterkik

  • Автор темы
  • Новичок
  • *
  • Сообщений: 15
    • Просмотр профиля
Re: Объединение двух интернет каналов в один.
« Ответ #23 : 25 Сентября 2013, 21:16:47 »
fli, поправил скрипты и файл переменных, ребутнул комп, выполнил routing.sh(прошло без ошибок)
Проверяю
ping 8.8.8.8
(Нажмите, чтобы показать/скрыть)
Теряется половина пакетов
 ping 8.8.8.8 -I eth0
(Нажмите, чтобы показать/скрыть)
По лану все нормально.
ping 8.8.8.8 -I wlan0
(Нажмите, чтобы показать/скрыть)
И по влану тоже нормально если явно указать. Но если не указывать, то все плохо.
(Нажмите, чтобы показать/скрыть)

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

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


Маршрутизатор у вас не смотрит в кастомные таблицы. Вообще.
Как ему сказать чтоб смотрел?

Оффлайн fli

  • Активист
  • *
  • Сообщений: 257
    • Просмотр профиля
Re: Объединение двух интернет каналов в один.
« Ответ #24 : 25 Сентября 2013, 22:22:01 »
Поправили или запустили мой?

Оффлайн gaterkik

  • Автор темы
  • Новичок
  • *
  • Сообщений: 15
    • Просмотр профиля
Re: Объединение двух интернет каналов в один.
« Ответ #25 : 25 Сентября 2013, 23:06:18 »
поправил vars
#!/bin/bash
IF1="eth0"
IF2="wlan0"
IP1="192.168.1.15"
IP2="192.168.1.17"
P1="192.168.1.2"
P2="192.168.1.1"

P1_NET="192.168.1.0/24"
P2_NET="192.168.1.0/24"

TBL1="provider1"
TBL2="provider2"

W1="1"
W2="1"

Остальное все ваше.


Пользователь решил продолжить мысль 26 Сентября 2013, 22:59:48:
Так что посоветуете? Может другой способ из статьи?
« Последнее редактирование: 26 Сентября 2013, 22:59:48 от gaterkik »

Оффлайн fli

  • Активист
  • *
  • Сообщений: 257
    • Просмотр профиля
Re: Объединение двух интернет каналов в один.
« Ответ #26 : 27 Сентября 2013, 12:05:59 »
Запустите мой скрипт, без vars.

Оффлайн gaterkik

  • Автор темы
  • Новичок
  • *
  • Сообщений: 15
    • Просмотр профиля
Re: Объединение двух интернет каналов в один.
« Ответ #27 : 29 Сентября 2013, 18:25:03 »
Запустите мой скрипт, без vars.
Не понимаю зачем без vars. Но делаю. Скрипт ошибок не выдает но и не выполняется - мигает курсор. Интернет при этом пропадает.

Оффлайн fli

  • Активист
  • *
  • Сообщений: 257
    • Просмотр профиля
Re: Объединение двух интернет каналов в один.
« Ответ #28 : 29 Сентября 2013, 19:38:50 »
Мой Вам совет - разберитесь сами что делает скрипт и как проверить его работу (команды выше). Так мы будем долго мусолить...Если что непонятно - пишите сюда.

 

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