Перейти к содержанию

Вопрос

Опубликовано

Пробовал ли кто-то выйти автоматически из режима начальной настройки (wizards/initial-setup) на Keenetic с помощью REST API (RCI)? Это возможно?

Рекомендуемые сообщения

  • 0
Опубликовано
В 25.04.2025 в 13:14, sergiu сказал:

Пробовал ли кто-то выйти автоматически из режима начальной настройки (wizards/initial-setup) на Keenetic с помощью REST API (RCI)? Это возможно?

Это возможно, нужно отправить вот такой HTTP-запрос:

POST http://my.keenetic.net/rci/

Content-Type: application/json

[
	{
		"eula": {
			"accept": {}
		}
	},
	{
		"easyconfig": {
			"disable": true
		}
	},
	{
		"system": {
			"configuration": {
				"save": true
			}
		}
	}
]


Разумеется, вместо my.keenetic.net можно указать IPv4-адрес (например, http://192.168.1.1/rci/)

  • 0
Опубликовано

Спасибо за ответ, Эралде.
Мне удалось написать небольшой скрипт на Python, чтобы отключить EasyConfig.
Теперь у меня остался вопрос: возможно ли также через REST API загрузить и заменить файл startup-config так же, как это делается через веб-интерфейс маршрутизатора?

  • 0
Опубликовано
В 27.04.2025 в 17:38, sergiu сказал:

Спасибо за ответ, Эралде.
Мне удалось написать небольшой скрипт на Python, чтобы отключить EasyConfig.
Теперь у меня остался вопрос: возможно ли также через REST API загрузить и заменить файл startup-config так же, как это делается через веб-интерфейс маршрутизатора?

Возможно. startup-config скачивается по ссылке http://my.keenetic.net/ci/startup-config.txt

С загрузкой этого файла на роутер все несколько сложнее:
1. нужно отправить на роутер вот такой запрос:

POST http://my.keenetic.net/rci/

{
  "put": {
    "filename": "flash:startup-config",
    "size":<размер файла в байтах>
  }
}

в ответ вы получите что-то вроде

{
  "put": {
    "port": {
      "direction": "in",
      "port": "52633"
    },
    "continued": true
  }
}

отсюда нужно достать значение port (в данном случае 52633)

2. дальше нужно отправить ещё один POST-запрос:

POST http://my.keenetic.net/fui/

Content-Type: multipart/form-data;

port: <значение port из запроса к put>
Filedata: <объект типа File, полученный из вашего startup-config>

Почитать про File можно тут: https://developer.mozilla.org/ru/docs/Web/API/File

 

3. после этого нужно дать роутеру команду перезагрузиться

POST http://my.keenetic.net/rci/

{
  "system": {
    "reboot": {}
  }
}

 

Все запросы к /rci/ подразумевают, что вы отправляете JSON и указываете в заголовках Content-Type: application/json.

 

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.

Гость
Ответить на вопрос...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...

Важная информация

На этом сайте используются файлы cookie. Нажимая "Я принимаю" или продолжая просмотр сайта, вы разрешаете их использование: Политика конфиденциальности.