NM: переподключение при потере пинга

Изображение пользователя DarkneSS.

Ткните, пожалуйста, носом (и/или поделитесь) скриптом для переподключения НМ в случае недоступности нескольких хостов.

На уютненьком ничего не нашёл, нагуглил два решения: баш, питон. Оба мне не подходят на 100%. Хотелось бы перезапускать все соединения, что есть, но не перезапуская сам НМ, если возможно (такого тоже не нашёл), а не пинать какое-то одно соединение.

Если мана небесная на меня не ниспадёт, то придётся вдохновиться питоновариантом и написать что-то своё. Дискас!

+1
dyug - 24 Ноябрь, 2012 - 13:24

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

собственно, в питоно-варианте именно оно и используется. :-)
0
DarkneSS - 24 Ноябрь, 2012 - 13:55
Изображение пользователя DarkneSS.

Поясните, пожалуйста, как передёргивать. Я вижу только работу с конкретными интерфейсами по имени или идентификатору.

0
lord_i - 24 Ноябрь, 2012 - 14:00
Изображение пользователя lord_i.

А в чем затык передергивать по имени? Их же не сотня ... Техническая задача как-то туманно звучит ...

0
DarkneSS - 25 Ноябрь, 2012 - 00:27
Изображение пользователя DarkneSS.

Передёрнуть все активные соединения, не важно, как их звать и вообще что за они.

+1
dyug - 24 Ноябрь, 2012 - 14:35

ну например так:
nmcli con down id впн 
# ложим по имени интерфейс впн.
sleep 1000000000000
# ждем мильярд секунд :-)
nmcli con down id сеть
# ложим по имени интерфейс сетевой карты
sleep 1000000000000
# ждем мильярд секунд :-)
nmcli con up id сеть --timeout 1000000
# поднимаем интерфейс сетевой карты и ждем мильон секунд до ее поднятия и конфигурирования,
# возможно здесь нужно проверить что интерфейс поднялся, сконфигурировался....
sleep 1000000000000
# ждем мильярд секунд :-)
nmcli con up id впн
# поднимаем интерфейс по имени впн

необходимость слипов и их длительность выбирать по вкусу... :-)

обновил с комментариями. :-)

0
DarkneSS - 25 Ноябрь, 2012 - 00:27
Изображение пользователя DarkneSS.

Неуниверсально.

+1
dyug - 25 Ноябрь, 2012 - 01:07

то есть тебе лень пройтись грепом по nmcli con status и по результатам все положить, а потом все поднять? :-)

0
DarkneSS - 25 Ноябрь, 2012 - 01:33
Изображение пользователя DarkneSS.

Если есть возможность не парсить, предпочту не парсить. Хотелось бы сделать что-то, что не поломалось бы при смене синтаксиса выхлопа утилиты.

0
dyug - 25 Ноябрь, 2012 - 12:17

Ну тогда от рута ifup ifdown, других идей у меня нет.
Это сломаться практически не сможет, ибо там столько на них завязано, что слом этих утилит приведет к полной остановке сети... :-)
Я так, понимаю, что предложение перейти на guessnet отвергается, как неправославноенекубунтовое? :-)

0
DarkneSS - 25 Ноябрь, 2012 - 12:20
Изображение пользователя DarkneSS.

Лень пакет собирать, конечно, хе хе. Ладно, будет рестартовать НМ, раз он такой.

0
dyug - 25 Ноябрь, 2012 - 12:34

ЭЭЭ какой пакет?
или тебе под сусе?
Я исхожу из того, что речь идет о кубунте. в ней гуеснет есть в наличии.
и он ориентирован на сетевую систему дебиана...
в сусе там другая, как я помню сетевая подсистема...
принципов не помню, конечно, читать, разумеется, лень совершенно, но наверняка там есть что то для автоматизации.

0
DarkneSS - 25 Ноябрь, 2012 - 12:58
Изображение пользователя DarkneSS.

Есть яст или НМ.

0
dyug - 25 Ноябрь, 2012 - 13:13

что, все?
гмм, а что то типа ifcf,или как то так? или то в федоре/шапке?
в альте точно помню, есть нет, имеющий примерно ту же функциональность, как и ифупдовн

гмм, десяти минутный поиск не привел к положительным результатам... :-(
такое впечатление, что суся вынесла|не использует все, что может автоматизировать процесс подключения к сети в разных местах.

Впрочем, учитывая, что сервер сусе обязательно ставит Х - это не удивительно.

Наверное, сусе хочет быть ближе к микрософту... :-)

0
DarkneSS - 25 Ноябрь, 2012 - 13:30
Изображение пользователя DarkneSS.

Ифконфиг через яст, я это и имел в виду.
Про сервер зузи вы глупость сказали. Даже десктоп при установки с минималки иксы сам просто так не поставит.

0
dyug - 25 Ноябрь, 2012 - 13:52

все сервера сусе, которые ставили с диска ентерпрайз сервер(официальный, купленный) - все ставились с Х.
И не одна версия.

Увы.
яст это ифкфг, или как он там...
нет, в нем я не разбирался, и откровенно говоря, не сильно и хочется.

Ну не нравится сусе мне. не нравится.
Я же рассказывал, когда тестил, нарвался на то, что подключение телефона нокия (три разных системы 9300|Е65|Н80) в качестве модема приводило к выключению телефона мгновенно и без вопросов.
плюс, меня уже тогда интересовал варивант выбора сети по ессид, или мак (в случае кабеля) - и я не нашел ни одной утилиты в поставке системы, поддерживающей такой функционал.

Да, нм тогда еще в сусе не было.

0
DarkneSS - 15 Январь, 2013 - 00:05
Изображение пользователя DarkneSS.
Выходит после рестарта, потому что (если я правильно понял) НМ будет запускать скрипт из каталога /etc/NetworkManager/dispatcher.d после каждого соединения. Готов к конструктивной критике. Тестирую в боевых условиях.
0
lord_i - 15 Январь, 2013 - 00:19
Изображение пользователя lord_i.

Чо то ускользает от меня смысл переменной LIFE ... Оно что, один раз отрабатывает в случае потери пинга и потом опять скрипт надо запускать?

Отправить комментарий

CAPTCHA на основе изображений
Введите цифры