PHP Dan Mikrotik API
PHP Dan Mikrotik API
id/php-mikrotikapi
https://s.id/php-mikrotikapi-files
Arie Wijayanto
Selasa, 2 Maret 2021, 07.00 PM s/d 08.00 PM WIB
https://s.id/php-mikrotikapi
https://s.id/php-mikrotikapi-files
Perkenalan
Disclaimer
API atau Application Programming Interface adalah sebuah interface yang dapat menghubungkan
aplikasi satu dengan aplikasi lainnya. Jadi, API berperan sebagai perantara antar berbagai aplikasi
berbeda, baik dalam satu platform yang sama atau lintas platform
https://s.id/php-mikrotikapi
https://s.id/php-mikrotikapi-files
● Winbox
● Webfig
● SSH / Telnet
● Console
● API
https://s.id/php-mikrotikapi
https://s.id/php-mikrotikapi-files
● Mikrotik API merupakan sebuah fitur yang berguna untuk mengakses RouterOS melalui aplikasi
pihak ketiga.
● Default-nya API menggunakan port 8728
● API command yang digunakan mirip dengan CLI mikrotik
● Manfaat integrasi API ini dapat digunakan untuk mengembangkan aplikasi sesuai keinginan client,
baik itu aplikasi webbased maupun desktop
https://s.id/php-mikrotikapi
https://s.id/php-mikrotikapi-files
API : /system/resource/print
https://s.id/php-mikrotikapi
https://s.id/php-mikrotikapi-files
● https://github.com/BenMenking/routeros-api
https://s.id/php-mikrotikapi
https://s.id/php-mikrotikapi-files
$rb->debug = true;
$rb->disconnect();
}
Read SELECT * FROM table1
Array
Primary key
● Digunakan untuk menghapus/mengedit
( ● Direset ketika router reboot
<?php [.id] => *1
require('routeros_api.class.php'); [name] => kangarie_33915
[service] => any
[caller-id] =>
$rb = new RouterosAPI();
[password] => *****
$host = "id12.tunnel.my.id"; [profile] => default
$rb->port = 3046; [routes] =>
//$rb->debug = true; OUTPUT [limit-bytes-in] => 0
$username = "api"; [limit-bytes-out] => 0
$password = "phpid"; [last-logged-out] => jan/01/1970 00:00:00
[disabled] => false
if ($rb->connect($host, $username, $password)) { )
$rows = $rb->comm("/ppp/secret/print"); Array
(
[.id] => *7
foreach($rows as $row) { [name] => kangarie_30583
print_r($row); [service] => any
} [caller-id] =>
[password] => *****
$rb->disconnect(); [profile] => default
} [routes] =>
[limit-bytes-in] => 0
[limit-bytes-out] => 0
[last-logged-out] => jan/01/1970 00:00:00
[disabled] => false
)
Read hal.2 SELECT * FROM table1 WHERE field1=var
<?php
require('routeros_api.class.php');
foreach($rows as $row) {
print_r($row);
}
$rb->disconnect();
}
Read hal.3 SELECT field1,field2 FROM table1 WHERE field1=var
<?php
require('routeros_api.class.php');
foreach($rows as $row) {
print_r($row);
}
$rb->disconnect();
}
Update Bagaimana mengupdate berdasarkan nama?
$rb->disconnect();
}
Delete Bagaimana menghapus berdasarkan nama?
$rb->disconnect();
}
https://s.id/php-mikrotikapi
https://s.id/php-mikrotikapi-files
● https://www.php.net/manual/en/function.long2ip.php
● https://www.php.net/manual/en/function.ip2long.php
● https://www.php.net/manual/en/function.gethostbyname.php
https://s.id/php-mikrotikapi
https://s.id/php-mikrotikapi-files
● MIKHMON: https://github.com/laksa19/mikhmonv3
https://s.id/php-mikrotikapi
https://s.id/php-mikrotikapi-files
Contoh Implementasi
Pustaka Referensi
● https://mikrotik.com/
● https://wiki.mikrotik.com/wiki/Main_Page
● https://wiki.mikrotik.com/wiki/Manual:API
● https://github.com/BenMenking/routeros-api
Sesi Tanya Jawab