Информация
Услуги
  • Внедрение
  • Настройка
  • Поддержка
  • Ремонт
Контакты
Новинка
Распродажа
Новости
Доставка
Оплата
Загрузки
  • Прошивки
    • WinBox
    • RouterOS
    • Мобильные приложения MikroTik
    • Архив
  • Changelogs
  • RouterOS
  • Мобильные приложения MikroTik
  • Архив
Форум
Настройка
    info@mikrotik.moscow
    +7 495 320-55-52
    Заказать звонок
    Mikrotik.moscow
    Каталог
    • Акции
      Акции
    • Маршрутизаторы
      Маршрутизаторы
    • Коммутаторы
      Коммутаторы
    • Радиомосты и уличные точки доступа
      Радиомосты и уличные точки доступа
    • Wi-Fi для дома и офиса
      Wi-Fi для дома и офиса
    • LTE/5G
      LTE/5G
    • Powerline адаптеры
      Powerline адаптеры
    • IoT устройства
      IoT устройства
    • Оборудование 60 ГГц
      Оборудование 60 ГГц
    • Материнские платы RouterBOARD
      Материнские платы RouterBOARD
    • Корпуса
      Корпуса
    • Интерфейсы
      Интерфейсы
    • SFP/QSFP трансиверы
      SFP/QSFP трансиверы
    • Аксессуары
      Аксессуары
    • Антенны
      Антенны
    • Архив
      Архив
    Войти
    0 Сравнение
    0 Избранное
    0 Корзина
    Скачать WinBox Скачать Прошивки Форум > RouterOS Форум > SwOS Форум > Железо
    Mikrotik.moscow
    Каталог
    Войти
    0 Сравнение
    0 Избранное
    0 Корзина
    Mikrotik.moscow
    Телефоны
    +7 495 320-55-52
    Заказать звонок
    0
    0
    0
    Mikrotik.moscow
    • +7 495 320-55-52
      • Назад
      • Телефоны
      • +7 495 320-55-52
      • Заказать звонок
    • info@mikrotik.moscow
    • г. Москва, ул. Бакунинская, 84
    • Пн-Пт: 09-00 до 18-00
      Сб-Вс: выходной


    • Кабинет
    • 0 Сравнение
    • 0 Избранное
    • 0 Корзина
    Главная
    Форум
    RouterOS
    такого элемента нет — прерывание выполнения

    такого элемента нет — прерывание выполнения

    Форумы: RouterOS, Аппаратное обеспечение, SwOS, Обратная связь, Объявления, Сторонние инструменты
    Поиск  Пользователи  Правила  Войти
    Страницы: 1
    RSS
    такого элемента нет — прерывание выполнения, RouterOS
     
    andrei
    Guest
    #1
    0
    11.01.2016 17:28:00
    Мне нужно сделать простой тест, чтобы проверить, живо ли соединение. У соединения есть метка connection mark, и мне просто нужно проверить, существует она или нет. Если существует — скрипт отправит письмо или запишет в лог. У меня есть такой код:

    if ([/ip firewall connection get value-name=connection-mark [find connection-mark="KRN"]]="KRN") do={ :log warning "KRN is OK"; } else={ :log warning "KRN is gone"; }

    Если соединение есть — всё нормально. Если его нет — скрипт прерывается с ошибкой «no such item» и дальше ничего не выполняется. Мне нужен способ поймать эту ошибку или какой-то тест, чтобы скрипт мог что-то сделать, если соединения нет. Либо какой-то более надёжный способ проверить существование соединения.

    Спасибо!
     
     
     
    floaty
    Guest
    #2
    0
    27.10.2023 20:53:00
    Очень полезно! После того как нашёл этот пост, мне понадобилось «моё время», чтобы пройти через эту штуковину с «if»... Но теперь всё готово... ё-моё...

    :do {/interface/wireless/registration-table/get [/interface/wireless/registration-table/find where interface=wlan1]} on-error={
    /interface/bridge/set w_bridge disabled=yes  
    :delay 1s  
    /interface/bridge/set w_bridge disabled=no  
    };  

    Фрагмент кода ниже казался мне отличным... часами не мог оторваться... но «no such item» — это беспощадно.

    :if ([/interface/wireless/registration-table/get [/interface/wireless/registration-table/find where interface=wlan1] ap] =true) do={
    :put on  
    } else={  
    /interface/bridge/set w_bridge disabled=yes  
    :delay 1s  
    /interface/bridge/set w_bridge disabled=no  
    };
     
     
     
    rextended
    Guest
    #3
    0
    28.10.2023 10:30:00
    Если бы скрипты были написаны правильно, они бы не давали ошибок. Если цель скрипта — просто вывести количество интерфейсов, зарегистрированных на wlan1, вернуть 0, отключить мост w_bridge и через секунду снова его включить (зачем, кстати???), то это точно не тот способ.
     
     
     
    floaty
    Guest
    #4
    0
    28.10.2023 13:56:00
    Цель скрипта — сбросить интерфейс w_bridge, когда интерфейс wlan1* теряет соединение с его SSID, и освободить dhcp-клиент на w_bridge... чтобы в итоге дать дорогу дефолтному маршруту с более низким приоритетом... на другом интерфейсе с dhcp-клиентом...

    Возможно, есть и другие варианты?! … Предложения?

    Первый скрипт работает отлично...

    Второй — не очень, потому что: «no such item» — жесткий отказ :)

    (в этом посте просто показано, что движение в неправильном направлении... это, как правило, долгий путь).

    *) bridge-порт w_bridge
     
     
     
    rextended
    Guest
    #5
    0
    29.10.2023 00:21:00
    Почему бы просто не освободить dhcp вместо того, чтобы отключать мост для этого? Может, я что-то упускаю?
     
     
     
    floaty
    Guest
    #6
    0
    30.10.2023 00:06:00
    Хорошее замечание… Видимо, раз проблема была в default-route, я сосредоточился на соответствующем интерфейсе… привычка… освобождение dhcp-клиента гораздо чище… и без задержек… плюс одна строка — отличная идея… исправил! Спасибо.
     
     
     
    rextended
    Guest
    #7
    0
    30.10.2023 08:19:00
    Пожалуйста, предоставьте текст, который нужно перевести.
     
     
     
    Страницы: 1
    Читают тему
    +7 495 320-55-52
    info@mikrotik.moscow
    Электрозаводская, Бауманская
    Москва, ул. Бакунинская, 84с21
    Конфиденциальность Оферта
    © 2026 «Mikrotik.Moscow»
    Главная Каталог 0 Корзина 0 Избранные Кабинет 0 Сравнение Акции Контакты Услуги Бренды Отзывы Компания Лицензии Документы Реквизиты Поиск Блог Обзоры