The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Поменять метрики нескольких default-маршрутов"
Версия для распечатки Пред. тема | След. тема
Форум Программирование под UNIX
Исходное сообщение [ Отслеживать ]

. "Поменять метрики нескольких default-маршрутов" +/
Сообщение от Аноним (1), 26-Фев-19, 15:51 
>[оверквотинг удален]
> default via 10.3.3.3 dev eth3 proto static metric 20
> default via 10.4.4.4 dev eth4 proto static metric 30
> Иными словами должно произойти изменение метрик путем смещения:
>
10 -> 40 
> 20 -> 10
> 30 -> 20
> 40 -> 30

> Команда на изменение маршрута -- это его удаление и установка нового:
>
ip route delete default via 10.1.1.1 dev eth1 metric 10 
> ip route add default via 10.1.1.1 dev eth1 metric 40

Очевидно, что нет смысла менять метрику всем. Достаточно удалить маршрут с меньшей метрикой и создать его заново с метрикой большей, чем у самого последнего. Метрика - это 32 битное целое. Хватит надолго.

ROUTE=$(ip -4 route | grep default | head -n1)
MAX_METRIC=$(ip -4 route | grep default | tail -n1| sed -e's/.*metric\s*//')

ip r del "$ROUTE"
ip r add $(echo "$ROUTE" | sed -e 's/\d+\s*$//') $(expr $MAX_METRIC + 10)


Код не проверял, идея думаю ясна.

Ответить | Правка | Наверх | Cообщить модератору

Оглавление
Поменять метрики нескольких default-маршрутов, jr, 26-Фев-19, 13:59  [смотреть все]
Форумы | Темы | Пред. тема | След. тема



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру