Информация
Услуги
  • Внедрение
  • Настройка
  • Поддержка
  • Ремонт
Контакты
Новинка
Распродажа
Новости
Доставка
Оплата
Загрузки
  • Прошивки
    • WinBox
    • RouterOS
    • Мобильные приложения MikroTik
    • Архив
  • 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 Корзина
    Главная
    Форум
    Форум
    SwOS
    SwOS api

    SwOS api

    Форумы: RouterOS, Аппаратное обеспечение, SwOS, Обратная связь, Объявления, Сторонние инструменты
    Поиск  Пользователи  Правила  Войти
    Страницы: 1
    RSS
    SwOS api, SwOS
     
    dakobg
    Guest
    #1
    0
    21.02.2021 15:25:00
    С выходом CSS610 как нового продукта, есть ли планы по SwOS API?
     
     
     
    BuGless
    Guest
    #2
    0
    21.07.2022 06:03:00
    На самом деле у SwOS уже есть API. Нам просто нужна документация к нему (или можно разобраться самому). Вот пример: URL: /link.b Заголовок Authorization использует токен для поддержания сессии. Тело запроса, кажется, в формате JSON (хотя MIME-тип указан как text/plain, что сбивает с толку). В этом JSON-объекте я уже могу распознать: en: битовая маска для всех включённых портов. Отключённые порты имеют нулевой бит. Порты пронумерованы в формате little endian (то есть бит ноль — порт 1). fctc: битовая маска для передачи flow-control TX. Нумерация портов такая же, как для en. nm: имена портов, обычный массив, порты пронумерованы в обычном порядке. fctr: битовая маска для приёма flow-control RX. Такая же битовая маска, как и в других полях. И так далее. Очень просто разобраться самому (что, кстати, плюс). Как насчёт этого, Mikrotik? Выпустите же документацию!
     
     
     
    f008600
    Guest
    #3
    0
    11.03.2024 09:51:00
    Есть ли планы документировать бинарный/JSON API? Похоже, этот API постоянно меняется (или SwOS Lite кардинально отличается от SwOS с точки зрения API).
     
     
     
    gaileys
    Guest
    #4
    0
    20.03.2024 19:35:00
    Меня вдохновило. Я создал небольшое docker-приложение, которое работает в роли обратного прокси для любого количества коммутаторов Mikrotik. Затем я делаю запрос к коммутатору, чтобы получить их конфигурационные файлы — «link.b», «sys.b» и т.д., — и возвращаю их в формате json. Меня раздражало, что на главной панели отображаются виджеты только для RouterOS, а не для Switch OS. Сейчас я просто тестирую это дома, приложение пока что забирает только статус порта, скорость и имя для каждого порта, но, похоже, работает стабильно хотя бы для двух коммутаторов, которые у меня есть. Через недельку выложу сюда, когда закончу, и укажу, откуда можно будет скачать с docker hub. Сейчас самое время попросить что-то конкретное, если нужно. Предупреждаю: из-за моих личных потребностей безопасность здесь на минимальном уровне — логин, пароль и адрес коммутатора находятся прямо в URL. Планирую добавить опцию POST, чтобы прятать эти данные.
     
     
     
    gaileys
    Guest
    #5
    0
    25.03.2024 11:27:00
    Хорошо, я выложил это на Docker Hub и использую с Homepage, чтобы получать данные о моих двух свитчах. https://hub.docker.com/repository/docker/gaileys/mikrotiksw/general Просто сделайте GET-запрос на /api/v1/getswitch/switchip/switchuser/password. Я понимаю, что это ужасно — передавать имя пользователя и пароль в URL, но кастомный API-виджет Homepage не позволяет контролировать тело POST-запроса, так что это был самый простой способ обойтись без настройки для каждого свитча. Готов изменить или добавить функции, если кому-то действительно захочется это использовать…
     
     
     
    f008600
    Guest
    #6
    0
    26.03.2024 07:27:00
    Спасибо, @gaileys, за вашу работу, но я не хочу запускать «чёрный ящик» на своём сервере/ПК и вводить туда логин/пароль от своего основного коммутатора. Есть ли у вас какой-нибудь git-репозиторий, чтобы я мог посмотреть исходники? Мне больше интересно понять API, чем получить «готовое к использованию» решение. Я хочу интегрировать поддержку SwitchOS в свою библиотеку управления коммутаторами, которая уже работает с Cisco, Juniper и другими брендами. Так что вопрос остаётся: есть ли шанс получить какую-нибудь документацию по API SwitchOS (Lite)?
     
     
     
    gaileys
    Guest
    #7
    0
    26.03.2024 11:26:00
    Я пока не выкладывал это на гит, но могу подумать об этом. Весь код на Scala, и к тому же не очень хороший Scala — это был быстро сшитый проект «на коленке», так что нужно быть с этим знакомым. Проще всего понять API, просто используя curl: curl --compressed --digest -u user:password -v http://192.168.5.2/link.b

    Нужно вытягивать !sys.b, link.b, stats.b и, возможно, еще что-то, в зависимости от того, что хотите посмотреть, но все это есть в index.html вместе с Javascript, который обрабатывает данные. Если вы «человек Javascript», то index.html объяснит всё, что нужно. Я такой не очень, поэтому выяснял, что нужно, по подсказкам в именах внутри пакетов данных.

    Большинство данных в hex-кодировке, так что надо парсить данные, которые, насколько я понял, представляют собой объект Javascript. Было бы гораздо проще, если бы они были в формате json, но что есть — то есть. У меня всего два свитча Mikrotik, с которых я собираю данные, но многое вроде бы одинаковое между ними. Я не использую VLAN, так что это меня особо не интересовало, и примеров, чтобы с этим разобраться, у меня не было…
     
     
     
    hhjklhjghjflkhgfomhf
    Guest
    #8
    0
    27.04.2024 14:28:00
    Я частично реализовал некоторые функции для управления моим css326 с помощью saltstack. Возможно, это поможет сделать что-то получше: https://github.com/y-martin/pkg-python3-mikrotik-swos https://github.com/y-martin/salt_mikrotik_swos Я ещё не всё реализовал (например, не использую ACL).
     
     
     
    f008600
    Guest
    #9
    0
    28.04.2024 15:28:00
    Спасибо! CSS326 работает с SwOS. API выглядит вполне понятным. Но SwOS Lite — это совсем другая история. Никто ещё не декомпилировал этот бинарный файл?
     
     
     
    dvision1979
    Guest
    #10
    0
    24.11.2024 22:05:00
    Есть ли также модуль для главной страницы, который можно использовать с вашим докер-контейнером? Спасибо.
     
     
     
    chubbs596
    Guest
    #11
    0
    18.03.2021 08:21:00
    Мы также хотим видеть API для SwOS и SwOS lite, а также, по возможности, доступ по telnet/ssh.
     
     
     
    Страницы: 1
    Читают тему
    +7 495 320-55-52
    info@mikrotik.moscow
    Электрозаводская, Бауманская
    Москва, ул. Бакунинская, 84с21
    Конфиденциальность Оферта
    © 2026 «Mikrotik.Moscow»
    Главная Каталог 0 Корзина 0 Избранные Кабинет 0 Сравнение Акции Контакты Услуги Бренды Отзывы Компания Лицензии Документы Реквизиты Поиск Блог Обзоры