Страница 1 из 1
/etc/network/interfaces auto tun0 - подвисает загрузка
Добавлено: 2013-04-29 19:14:31
zg
Преамбула: при поднятии туннеля нужно, чтобы включался маскарадинг и прописывался маршрут автоматом
Суть проблемы: при загрузке системы идут поптыки поднять tun0, который должен подниматься только в ручную
В принципе всё работает нормально, но загрузка занимает 60+60 секунд (ждёт настройки tun0). Если убрать auto, то при поднятии туннеля автоматом ничего не прописывается.
Есть какие-нибудь идеи, как это можно побороть?
Поднимаю туннель таким вот образом:
Настройки конфигов /etc/network/interfaces:
Код: Выделить всё
# для host1
auto tun0
iface tun0 inet static
address 192.168.53.1
netmask 255.255.255.252
up iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
down iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE
# для host2
auto tun0
iface tun0 inet static
address 192.168.53.2
netmask 255.255.255.252
post-up route add -net 192.168.10.0/24 dev tun0
Система: Ubuntu 12.04
Re: /etc/network/interfaces auto tun0 - подвисает загрузка
Добавлено: 2013-05-06 16:23:24
skeletor
Создайте скрипт, который будет запускаться при старте и в фоне ждать поднятия и потом добавлять правила файервола.
Re: /etc/network/interfaces auto tun0 - подвисает загрузка
Добавлено: 2013-05-06 16:36:40
zg
костыль штука классная, но может есть более правильный способ?
Re: /etc/network/interfaces auto tun0 - подвисает загрузка
Добавлено: 2013-05-06 16:51:01
skeletor
Да, разобраться, почему так долго поднимается туннель.
Re: /etc/network/interfaces auto tun0 - подвисает загрузка
Добавлено: 2013-05-06 16:53:39
zg
skeletor писал(а):Да, разобраться, почему так долго поднимается туннель.
туннель поднимает нормально, загрузка идёт долго, поскольку нет интерфейса tun0
Re: /etc/network/interfaces auto tun0 - подвисает загрузка
Добавлено: 2013-05-06 17:17:26
skeletor
Ну и как же тогда он поднялся, без интерфейса? Как вы поняли, что туннель поднялся? Как же ходят пакеты по туннелю без интерфейса?
Ваша проблема в том, что вы не понимаете, как осуществляется загрузка ОС, что происходит и т.д. Если у вас что-то долго поднимается или применяется - нужно его пустить в фон, что бы ОС продолжила дальше загрузку, не дожидаясь пока выполнится команда. Но /etc/network/interfaces не выполняется в фоне и не позволяет выполнять команды в фоне. Я же предложил вариант со скриптом, а вам показалось, что это костыль.
Re: /etc/network/interfaces auto tun0 - подвисает загрузка
Добавлено: 2013-05-06 17:47:16
zg
skeletor писал(а): Я же предложил вариант со скриптом, а вам показалось, что это костыль.
и где же скрипт?
skeletor писал(а):Ваша проблема в том, что вы не понимаете, как осуществляется загрузка ОС, что происходит и т.д. Если у вас что-то долго поднимается или применяется - нужно его пустить в фон, что бы ОС продолжила дальше загрузку
эммм... я готов принять сие утверждение, если будет предложено решение или несколько решений, которые удовлетворяют следующим требованиям:
1. при поднятии интерфейса автоматически срабатывают нужные мне комманды
2. при закрытии интерфейса автоматически срабатывают нужные мне комманды
3. не страдает загрузка системы, если интерфейса нет в системе
4. решение коробочное, без запихивания всякого мусора в /etc/rc.*
Решение, которое предложено в начале темы не проходит только по третьему пункту.
Re: /etc/network/interfaces auto tun0 - подвисает загрузка
Добавлено: 2013-05-06 17:58:06
skeletor
Вы хотите готовый скрипт, написанный за вас и бесплатно?
Есть несколько вариантов - udev или после загрузки ос вручную поднять через ifup (предварительно убрав auto).
Re: /etc/network/interfaces auto tun0 - подвисает загрузка
Добавлено: 2013-05-06 18:05:56
zg
skeletor писал(а):Вы хотите готовый скрипт, написанный за вас и бесплатно?

ну да, ну да, я хочу готовый скрипт

да ещё и за деньги
skeletor писал(а):Есть несколько вариантов - udev или после загрузки ос вручную поднять через ifup (предварительно убрав auto).
через ifup можно, но это не проходит по первым двум пунктам.
Re: /etc/network/interfaces auto tun0 - подвисает загрузка
Добавлено: 2013-05-06 18:10:23
skeletor
через ifup можно, но это не проходит по первым двум пунктам.
Откуда такое утверждение? Вы пробовали?
Re: /etc/network/interfaces auto tun0 - подвисает загрузка
Добавлено: 2013-05-06 18:25:03
zg
skeletor писал(а): через ifup можно, но это не проходит по первым двум пунктам.
Откуда такое утверждение? Вы пробовали?
ну да, пробовал

работает
Код: Выделить всё
host2% sudo ssh root@host1 -w 0:0
host2% sudo ifup tun0
но это решение не проходит по первым двум пунктам. Поскольку нужно руками поднимать и опускать интерфейс. Если на локальном хосте это пройдёт, то на удалённом нет.
Re: /etc/network/interfaces auto tun0 - подвисает загрузка
Добавлено: 2013-05-07 7:44:03
_skeletor
Ну так напишите скрипт.
И что значит - работает, но не подходит по первым двум пунктам? Либо вы неправильно делаете, либо это баг, так как по дефолту при выполнении этой команды оно читает настройки прямо из /etc/network/interfaces и выполняет все указанные действия.
Re: /etc/network/interfaces auto tun0 - подвисает загрузка
Добавлено: 2013-05-07 16:15:20
zg
_skeletor писал(а):Ну так напишите скрипт.
script
_skeletor писал(а):И что значит - работает, но не подходит по первым двум пунктам?
это значит, не выполняются автоматически действия при поднятии и опускании интерфейсов
_skeletor писал(а):Либо вы неправильно делаете, либо это баг, так как по дефолту при выполнении этой команды оно читает настройки прямо из /etc/network/interfaces и выполняет все указанные действия.
эм... вроде по-русски пишу. И в теме топика написана проблема, а "твоя моя понимай нет"

Re: /etc/network/interfaces auto tun0 - подвисает загрузка
Добавлено: 2013-05-08 13:32:22
zg
Добавил ролик