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


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

Автор Тема: 2 провайдера со статическим ip, в 1 локальную сеть  (Прочитано 2994 раз)

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

Оффлайн BHE3AIIHO

  • Автор темы
  • Новичок
  • *
  • Сообщений: 24
    • Просмотр профиля
Вы не понимаете что делаете. У вас нет дополнительных таблиц и правил маршрутизации. Начните с того, что руками внесите все нужные настройки. Добейтесь того, чтобы макет работал хотя бы при вводе руками. Дальше начинайте писать нужные вам вспомогательные скрипты(программы).
каких таблиц то? и какие нужные настройки? я пока понять не могу

В общем и целом вариант похожий на Ваш выгдядит так:
(Нажмите, чтобы показать/скрыть)

и что тут? ничего не понятно, мануалом поделитесь?


Пользователь решил продолжить мысль 23 Апреля 2015, 11:00:17:
Вы остальные правила как подгружаете?
Судя по тому, что нет правил для iproute2, делаете это неким скриптом, который предварительно чистит таблицы.
какие правила то?
А судя по отсутсвию доп.таблиц маршрутизации, то скрипт вообще не отработал

так скрипт ругается на не правильный аргумент, на какой я не знаю...
« Последнее редактирование: 23 Апреля 2015, 11:00:17 от BHE3AIIHO »

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13761
    • Просмотр профиля
Видимо здесь что-то не так
P2_NET="94.180.105.254/24"

Оффлайн BHE3AIIHO

  • Автор темы
  • Новичок
  • *
  • Сообщений: 24
    • Просмотр профиля
Видимо здесь что-то не так
P2_NET="94.180.105.254/24"

и как тогда мне записать правильно?
провайдеровские настройки такие
ip 94.180.105.17
mask 255.255.255.0
gateway 94.180.105.254

dns-1 109.194.81.1
dns-2 109.194.80.1

по https://help.ubuntu.ru/wiki/ip_balancing#установка тут пишут шлюз/маска...

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13761
    • Просмотр профиля
и как тогда мне записать правильно?
ВНИМАТЕЛЬНО посмотрите, поймите что указывает данная переменная и ошибка будет очевидна

Оффлайн BHE3AIIHO

  • Автор темы
  • Новичок
  • *
  • Сообщений: 24
    • Просмотр профиля
и как тогда мне записать правильно?
ВНИМАТЕЛЬНО посмотрите, поймите что указывает данная переменная и ошибка будет очевидна

я понимаю что Вы хотите мне помочь, и чтоб я увидел ошибку, но к сожалению я не могу понять где она, в этом же пункте указывается настройка шлюз/маску провайдера2, я их и указываю, но результата нету, или мне нужно указать тут тоже шлюз/маску провайдера1 ?
тогда будет 2 строки
вида
P1_NET="80.242.71.0/24"
P2_NET="80.242.71.0/24"

это будет правильно?

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13761
    • Просмотр профиля
в этом же пункте указывается настройка шлюз/маску провайдера2,
Точно? Мне кажется название переменной P_NET говорит о другом назначении.

И что тогда показывает переменные P?
# gateway крафт
P1="80.242.71.1"
# шлюз домру
P2="94.180.105.254"
« Последнее редактирование: 23 Апреля 2015, 11:56:37 от fisher74 »

Оффлайн BHE3AIIHO

  • Автор темы
  • Новичок
  • *
  • Сообщений: 24
    • Просмотр профиля
в этом же пункте указывается настройка шлюз/маску провайдера2,
Точно? Мне кажется название переменной P_NET говорит о другом назначении.

И что тогда показывает переменные P?
# gateway крафт
P1="80.242.71.1"
# шлюз домру
P2="94.180.105.254"


тогда вообще как понять это из мануала? указали шлюзы по пунктам, а там должна быть маска

# gateway 1
P1="194.9.xx.xx"
# gateway 2
P2="195.5.xx.xx"
 
# LAN netmask
P0_NET="192.168.0.0/24"
# WAN1 netmask
P1_NET="194.9.xx.xx/xx"
# WAN2 netmask
P2_NET="195.5.xx.xx/xx"
 


или эти шлюз/маска вообще не должны в таком формате быть?
а в виде
P1_NET="255.255.255.0"
P2_NET="255.255.255.0"

или в каком?

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13761
    • Просмотр профиля
Давайте в переменных разбираться:
IFx - InterFace (интерфейс)
IPx - IP-адрес интерфейса
Px - Provider - шлюз провайдера
Px_NET - Provider NETwork - сеть провайдера

Оффлайн BHE3AIIHO

  • Автор темы
  • Новичок
  • *
  • Сообщений: 24
    • Просмотр профиля
Давайте в переменных разбираться:
IFx - InterFace (интерфейс)
IPx - IP-адрес интерфейса
Px - Provider - шлюз провайдера
Px_NET - Provider NETwork - сеть провайдера

ага, вот теперь думаю мне понятно, значит должно быть

# крафт маска
P1_NET="80.242.71.0/24"
# домру маска
P2_NET="94.180.105.0/24"


Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13761
    • Просмотр профиля
угу, теперь здесь верно.

Оффлайн BHE3AIIHO

  • Автор темы
  • Новичок
  • *
  • Сообщений: 24
    • Просмотр профиля
угу, теперь здесь верно.

значит с /etc/balance/vars разобрались.

теперь при запуске
/etc/balance/routing.sh


RTNETLINK answers: File exists

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13761
    • Просмотр профиля
вставляйте в скрипт команды дебагконтроля, чтобы определить косячную строку.
А-а-а-а... сыплю пепел на голову. Это нормальная ошибка. Просто в скрипте даётся команда добавить уже существующий маршрут
Вот на эту строку ругается
ip route add $P2_NET dev $IF2 src $IP2добавьте в конце
> /dev/null 2>&1и она не будет мозолить глаза.

Теперь запускайте скрипт и смотрите на выхлоп
ip -4 route show table all type unicast
sudo iptables -nvL -t nat
« Последнее редактирование: 23 Апреля 2015, 13:27:32 от fisher74 »

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 28511
    • Просмотр профиля
ip route replace
вместо "add".
И не будет ругаться.
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

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

Оффлайн BHE3AIIHO

  • Автор темы
  • Новичок
  • *
  • Сообщений: 24
    • Просмотр профиля
вобщем поковырялся нашел вот эту тему https://forum.ubuntu.ru/index.php?topic=229799.0

в конечном итоге routing.sh у меня сейчас такой

routing.sh         [----]  0 L:[  1+ 0   1/ 60] *(0   /2476b)= #  35 0x23
# Без шебага.
# Переменные не нужно экспортировать..
#  . /etc/balance/vars.sh
# Тоже костыль, правильно будет единожды выполнить в терминале.
# echo 'net.ipv4.ip_forward = 1' >>/etc/sysctl.conf; sysctl -p
# И это для маршрутизатора.
# А у тебя, по всей видимости - хост
#echo "1" > /proc/sys/net/ipv4/ip_forward

# Объявляем функцию...
add_provider1() {
ip rule add from $IP1 table $TBL1 > /dev/null 2>&1
ip route add $P1_NET dev $IF1 src $IP1 table $TBL1 > /dev/null 2>&1
ip route add $P0_NET dev $IF0 table $TBL1 > /dev/null 2>&1
ip route add $P2_NET dev $IF2 table $TBL1 > /dev/null 2>&1
ip route add 127.0.0.0/8 dev lo table $TBL1 > /dev/null 2>&1
ip route add default via $P1 table $TBL1 > /dev/null 2>&1
}

# Объявляем функцию.
add_provider2() {
ip rule add from $IP2 table $TBL2 > /dev/null 2>&1
ip route add $P2_NET dev $IF2 src $IP2 table $TBL2 > /dev/null 2>&1
ip route add $P0_NET dev $IF0 table $TBL2 > /dev/null 2>&1
ip route add $P1_NET dev $IF1 table $TBL2 > /dev/null 2>&1
ip route add 127.0.0.0/8 dev lo table $TBL2 > /dev/null 2>&1
ip route add default via $P2 table $TBL2 > /dev/null 2>&1
}

# Лишнее. C системе есть ifupdown, если устройство получило адрес
# такой машрут уже существует.
#ip route add $P1_NET dev $IF1 src $IP1 > /dev/null 2>&1
#ip route add $P2_NET dev $IF2 src $IP2
# Тоже лишнее. Шлюз по умаолчанию лучше обозначить в настройках сети.
# ip route add default via $P1 > /dev/null 2>&1
# NAT - это для роутера. А тут, похоже конечный хост..
# И Nat лучше будет смотреться в вункциях
#iptables -t nat -F POSTROUTING
#iptables -t nat -A POSTROUTING -s $P0_NET -o $IF1 -j MASQUERADE
#iptables -t nat -A POSTROUTING -s $P0_NET -o $IF2 -j MASQUERADE

# Объявляем функцию
del_provider1() {
ip rule del from $IP2 table $TBL2 > /dev/null 2>&1
ip route del $P2_NET dev $IF2 src $IP2 table $TBL2 > /dev/null 2>&1
ip route del $P0_NET dev $IF0 table $TBL2 > /dev/null 2>&1
ip route del $P1_NET dev $IF1 table $TBL2 > /dev/null 2>&1
ip route del 127.0.0.0/8 dev lo table $TBL2 > /dev/null 2>&1
ip route del default via $P2 table $TBL2 > /dev/null 2>&1
}

# Объявляем функцию
del_provider2() {
ip rule del from $IP2 table $TBL2 > /dev/null 2>&1
ip route del $P2_NET dev $IF2 src $IP2 table $TBL2 > /dev/null 2>&1
ip route del $P0_NET dev $IF0 table $TBL2 > /dev/null 2>&1
ip route del $P1_NET dev $IF1 table $TBL2 > /dev/null 2>&1
ip route del 127.0.0.0/8 dev lo table $TBL2 > /dev/null 2>&1
ip route del default via $P2 table $TBL2 > /dev/null 2>&1
}





работает, торренты выкачиваются под 3 мегабайта/секунду, раньше через 1 оператора в 10 мегабит, закачка максимальная была в 1 мегабайт/секунду, осталось проверить на физическое отключение инета, чтобы работало резервирование

Оффлайн kasadas

  • Новичок
  • *
  • Сообщений: 14
    • Просмотр профиля
BHE3AIIHO,
А как переменные определяются в твоем последнем скрипте?

 

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