tpcon - CLI утилита для управления роутерами TpLink
В реализации используется парсинг HTML страницы и имитация HTTP запросов
Для запуска приложения необходимо иметь .NET Core 6 Runtime
- Запусить из корня проекта
cd src/TpLinkConsole.Console
dotnet publish -c Release -o tpcon
- Скопировать созданные файлы из папки
tpcon
в папку, из которой планируется запускать приложение. В примере, папкаsoftware
cp tpcon ~/software -r
Проверить подключение к роутеру
Печатает:
Подключение: False
- нет подключенияПодключение: True
- есть подкючение
Перезагрузить роутер.
Перезагрузка нужна для применения некоторых команд.
Например, после изменения пароля: wlan password "P@ssw0rd"
- wlan status
Получить информацию о статусе беспроводной сети Wi-Fi: ssid, безопасность, питание
- wlan enable
Включить Wi-Fi
- wlan disable
Выключить Wi-Fi
-
wlan security
- wlan security none - выключить защиту
- wlan security personal - установить тип безопасности WPA/WPA2 Personal
- Аргументы
- --password - установить пароль
- --encryption - шифрование. Поддерживаемые типы: "tkip", "aes", "auto" (по умолчанию)
- --version - тип WPA. Поддерживаемые типы: "wpa", "wpa2", "auto" (по умолчанию)
- --group-key-update-interval - период обновления группового ключа. Должен быть либо 0 (по умолчанию), либо больше 30
- Аргументы
- wlan security enterprise - установить тип безопасности WPA/WPA2 Enterprise
- Аргументы
- --radius-password - пароль RADIUS сервера
- --radius-port - порт RADIUS сервера. По умолчанию - 1812
- --radius-ip - IP адрес RADIUS сервера
- --encryption - шифрование. Поддерживаемые типы: "tkip", "aes", "auto" (по умолчанию)
- --version - тип защиты. Поддерживаемые типы: "wpa", "wpa2", "auto" (по умолчанию)
- --group-key-update-interval - период обновления группового ключа. Должен быть либо 0 (по умолчанию), либо больше 30
- Аргументы
- wlan security wep - установить защиту WEP
- Аргументы
- --auth-type - тип аутентификации. Поддерживаемые значения: "shared-key", "open-system", "auto" (по умолчанию)
- --key-format - формат ключа. Поддерживаемые значения: "ascii", "hex" (по умолчанию)
- --key{number} - значение ключа с номером number. Например, для ключа 1 -
--key1
- --length{number} - длина ключа с номером number. Поддерживаемые значения: ("bit64", "64", "64bit"), ("bit128" , " 128", "128bit"), ("bit152", "152", "152bit"), "disabled" (по умолчанию). В скобках указаны эквивалентные значения Общее число поддерживаемых ключей - 4 (1, 2, 3, 4)
- --selected - номер ключа, который будет использоваться. Обязателен. Должен указывать на созданный с
помощью
--key{number}
ключ
- Аргументы
-
wlan ssid {new ssid}
Установить новый Wi-Fi SSID (название Wi-Fi)
Пример: wlan ssid "Some New SSID"
- lan status
Показать информацию о локальной сети: локальный адрес роутера, маска подсети, MAC адрес роутера
- lan ip {new-ip}
Поставить новый локальный IP адрес роутера. IP адрес указать в виде 4 десятичный чисел разделенных точкой.
Пример: lan ip 192.168.0.4
- lan mask
Установить маску подсети. Маска указывается в виде IP адреса
Пример: lan mask 255.255.240.0
- --router-address "router local ip address"
IP адрес роутера для подключения.
По умолчанию: 192.168.0.1
- --router-username "admin username"
Имя администратора роутера. То имя, которое вводишь при входе на страницу управления роутером.
По умолчанию: admin
- --router-password "admin password"
Пароль администратора роутера. Пароль, который вводишь при входе на страницу управления роутером.
По умолчанию: admin
- --output "output style"
Тип форматирования используемый при выводе.
Поддерживаемые форматы:
- table - табличный вывод. По умолчанию
- json - в формате JSON
- xml - в формате XML
- plain - в формате ключ-значение
При выборе plain
можно указать разделитель:
- --delimiter - строка разделителя. По умолчанию - ": "
Примеры:
--output table
--output plain --delimiter " - "
Для получения описания команд указать аргумент --help
~$ tpcon lan --help
Команда:
lan
Описание:
status - Получить статус локальной сети
ip - Установить новый локальный адрес роутера. IP адрес задается в виде 4 чисел в диапазоне 0-255, разделенных точками. Пример: 192.168.0.1
mask - Изменить маску сети локальной сети. Маска задается в виде Wildcard. Например: 255.255.240.0
Команды были опробованы для TpLink TLWR741ND. Другие версии могут не поддерживаться, нарушить работу роутера и сломать его. Используйте это приложение на свой страх и риск.