Страница 1 из 1

Пинг pppoe интерфейса

Добавлено: 19 дек 2022, 20:28
Sir_Prikol
Доброго времени суток.

Пытаюсь создать скрипты в ppp профиле, которые будут делать следующее:

On UP - начинает пинговать клиента, который подцепился на pppoe сервер микротика
On Down - прекращает пинговать данного клиента

Скрипты нужны временно, пока не пойму, почему не проходит алайв пакет по свитчам. Клиент отваливается, если не траффа, при этом я его спокойно удерживаю пингом вручную.

Проблему с alive пакетами - решаю, но до этого момента нужны вышеуказанные скрипты

UPD: Забыл сказать, IP клиент получает динамически

OnUp

Код: Выделить всё

:local interfaceName [/interface get $interface name]; 
:local currentip [/ip address get [/ip address find interface=$interfaceName ] address];
ping $currentip;

По всей моей кривой логике - таким образом он начнёт пинговать. Далее, чтоб прекратить пинг по отвалу ифейса, думаю, надо дропнуть ScriptJob, вот только как его обозначить, чтоб убить нужный?
Была мысль создавать виртуального юзверя, равному названию подключённого абонента, и дропать ScriptJob с этим автором, от чьего имени запускается, но это совсем уже из области фантастики

Re: Пинг pppoe интерфейса

Добавлено: 19 дек 2022, 21:39
Chupaka
Доброго.

Как насчёт динамически запихнуть их в адрес-лист (через профиль), а уже в Scheduler каждые N секунд/минут просто пробегаться по текущим активным клиентам и пинговать их с минимальным таймаутом (чтобы пакет быстро улетел и не следить, вернётся ли что-то)?

Re: Пинг pppoe интерфейса

Добавлено: 19 дек 2022, 21:54
Sir_Prikol
У меня сейчас работает такой скрипт:

Код: Выделить всё

:local addr
/ppp active {
   :foreach i in=[find] do={
      :if ([get $i service] = "pppoe") do={
         :set addr [get $i address]
         /ping ($addr) count=1;
#: log warning "Client $addr - Ok";
      }
   }
}
Запуск раз в минуту - не хватает, клиенты падают по кипалайву
В адресслисте они так-же находятся, радиус их пихает туда автоматом. Тут проблема в том, что как только я прекращаю пинговать клиента - происходит отвал по кипалайву. Бег по кругу происходит дольше по времени, нежели у них кипалайв срабатывает.

Re: Пинг pppoe интерфейса

Добавлено: 19 дек 2022, 22:00
Sir_Prikol
Изображение

После этого запустил пинг:

Изображение

Всё, клиент встал мёртво и не падает. Отпущу пинг - клиент отвалится

Последнее время - это я потушил порт на свитче и поднял, чтоб инициилизировать соединение от абона

Re: Пинг pppoe интерфейса

Добавлено: 20 дек 2022, 13:29
Chupaka
Вот предлагаю в тот скрипт в пинг дописать "interval=10ms", чтобы ответа никто не ждал и отправка происходила быстро.

Re: Пинг pppoe интерфейса

Добавлено: 20 дек 2022, 22:22
Sir_Prikol
Дописал, спасибо, посмотрим на состояние :)