Мне нужна помощь в создании проекта. Позвольте мне сначала описать мой проект —
Я хочу создать веб-приложение (используя php / php framework (laravel), html, css, javaScript, bootstrarp), которое поможет владельцу интернет-провайдера управлять своим маршрутизатором (большинство из них используют маршрутизатор Mikrotik).
Причина создания этого приложения:
Большинство интернет-провайдеров используют маршрутизатор Mikrotik для управления своим интернет-бизнесом. Но управление роутером с помощью Winbox (настольного программного обеспечения Windows, созданного для управления роутером Mikrotik) кажется им сложным. Просто для создания нового ip, чтобы назначить нового пользователя, заблокировать пользователя, если он / она не оплачивает счета, и управлять пропускной способностью, они должны работать с winbox каждый раз, когда им трудно. Мой подход заключается в создании веб-приложения, которое облегчит их работу.
Функции, которые я хочу предоставить:
Отображение ежедневного графика пропускной способности, полученной и использованной
Запись истории клиента (IP-адрес клиента, Ежемесячная арендная плата, Имя, Адрес и т. Д.)
Я могу сделать 6 — 9 функций, как описано, но я не знаю, как реализовать 1 — 5 функций!
Проблема, с которой я сталкиваюсь:
а. Я не знаю, как подключиться к маршрутизатору MikrotiK через веб-приложение
б. Если каким-то образом я могу получить доступ к маршрутизатору MikrotiK с помощью IP-адреса маршрутизатора, я не знаю, как создать новый IP-адрес в этой базе данных маршрутизатора.
с. как управлять пропускной способностью через веб-приложение
д. Как заблокировать / заблокировать IP-адрес!
Очки я получаю сам:
Я думаю, используя управление VLAN (IP-адрес маршрутизатора), я могу получить доступ к этой командной строке формы маршрутизатора, используя SSH / Telnet. После чего будет команда для создания, блокировки / блокировки, управления пропускной способностью IP-адреса? Если все это можно сделать с помощью командной строки, как я могу сделать это для своего веб-приложения?
Может кто-нибудь, пожалуйста, помогите мне с этим, ссылаясь на любую ссылку? Я гуглил, но единственное, что я нашел, — это руководство по управлению маршрутизатором Mikrotik!
Я сделал часть того, что вы просите у клиента несколько недель назад. Ваш вопрос широкий, очень обширный, для выполнения работы потребуются месяцы.
Начните свой проект с базового, который вы можете найти на http://wiki.mikrotik.com/wiki/API_PHP_class, затем вы можете расширить свое приложение и опубликовать конкретные вопросы о ваших проблемах в таких местах, как stackoverflow или reddit.
Следуйте примеру для подключения к API, затем выполните команды и затем отключитесь.
$API = new RouterosAPI();
$API->debug = true; // turn debug on to learn more about your api
if ($API->connect($server , $username , $passwd, $port)) {
// wireless registration table
$API->write('/interface/wireless/registration-table/print',false);
$API->write('=stats=');
// print output here
} else {
// connection fails
}
$API->disconnect();
Ref .:
Вы должны использовать API или протоколы удаленных команд, такие как ssh / telnet (PHP-SSH2).
Это PHP API проект, который вы могли бы использовать:
https://github.com/BenMenking/routeros-api
После подключения вы можете совершать команды так же, как вы делаете это на консоли mikrotik.
На мой взгляд, вам лучше использовать сервер Radius с базой данных на MySQL. Mikrotik отлично работает с Radius. В приложении реализован интерфейс с базой данных и все взаимодействие с Mikrotik уходит в Radius. Прочитайте о FreeRadius, например: