Perancangan Program Bantu Mikrotik menggunakan API ......1 Perancangan Program Bantu Mikrotik...

21
1 Perancangan Program Bantu Mikrotik Menggunakan API (Application Programming Interface) PHP class Mikrotik Artikel Ilmiah Diajukan kepada Fakultas Teknologi Informasi Untuk memperoleh Gelar Sarjana Komputer Oleh : Titus Hendrady (672010127) Teguh Indra Bayu, S.Kom., M.Cs. Program Studi Teknik Informatika Fakultas Teknologi Informasi Universitas Kristen Satya Wacana Salatiga April 2015

Transcript of Perancangan Program Bantu Mikrotik menggunakan API ......1 Perancangan Program Bantu Mikrotik...

Page 1: Perancangan Program Bantu Mikrotik menggunakan API ......1 Perancangan Program Bantu Mikrotik Menggunakan API (Application Programming Interface) PHP classMikrotik Artikel Ilmiah Diajukan

1

Perancangan Program Bantu Mikrotik Menggunakan

API (Application Programming Interface) PHP class

Mikrotik

Artikel Ilmiah

Diajukan kepada

Fakultas Teknologi Informasi

Untuk memperoleh Gelar Sarjana Komputer

Oleh :

Titus Hendrady (672010127) Teguh Indra Bayu, S.Kom., M.Cs.

Program Studi Teknik Informatika

Fakultas Teknologi Informasi

Universitas Kristen Satya Wacana

Salatiga

April 2015

Page 2: Perancangan Program Bantu Mikrotik menggunakan API ......1 Perancangan Program Bantu Mikrotik Menggunakan API (Application Programming Interface) PHP classMikrotik Artikel Ilmiah Diajukan

2

Page 3: Perancangan Program Bantu Mikrotik menggunakan API ......1 Perancangan Program Bantu Mikrotik Menggunakan API (Application Programming Interface) PHP classMikrotik Artikel Ilmiah Diajukan

3

Page 4: Perancangan Program Bantu Mikrotik menggunakan API ......1 Perancangan Program Bantu Mikrotik Menggunakan API (Application Programming Interface) PHP classMikrotik Artikel Ilmiah Diajukan

4

Page 5: Perancangan Program Bantu Mikrotik menggunakan API ......1 Perancangan Program Bantu Mikrotik Menggunakan API (Application Programming Interface) PHP classMikrotik Artikel Ilmiah Diajukan

5

Page 6: Perancangan Program Bantu Mikrotik menggunakan API ......1 Perancangan Program Bantu Mikrotik Menggunakan API (Application Programming Interface) PHP classMikrotik Artikel Ilmiah Diajukan

6

Page 7: Perancangan Program Bantu Mikrotik menggunakan API ......1 Perancangan Program Bantu Mikrotik Menggunakan API (Application Programming Interface) PHP classMikrotik Artikel Ilmiah Diajukan

7

Perancangan Program Bantu Mikrotik Menggunakan

API (Application Programming Interface) PHP class

Mikrotik

1)Titus Hendradi, 2)Teguh Indra Bayu

Fakultas Teknologi Informasi

Universitas Kristen Satya Wacana

Jl. Diponegoro 52-60, Salatiga 50711, Indonesia

E-mail:[email protected]), [email protected])

ABSTRACT

During configuration Mikrotik be a problem for some people because even though the

product of Mikrotik have programs based configuration GUI (Graphical User Interface), but it

still requires the steps long and confusing even for a configuration such as block domains and set

the client bandwidth making it difficult for the user. Difficulties coupled with ignorance where

appropriate proxy feature that can be applied to the network to resolve the case. With the

configuration of the program is expected to help the user can perform the configuration of the

network often do they wake up more easily, because the proxy configuration command to be able

to put together and only have to change certain variables on the interface of the program is

needed in the configuration using the help RouterOS API PHP class fromMikrotik.

Keywords :Router, RouterOS API PHP class, Mikrotik, Configuration, Interface

ABSTRAK

Selama ini konfigurasi Mikrotik menjadi masalah buat sebagian orang karena walaupun

produk dari Mikrotik memiliki program-program konfigurasi yang berbasis GUI (Graphical User

Interface) tetapi tetap saja membutuhkan langkah-langkah yang panjang dan membingungkan

walaupun hanya untuk melakukan konfigurasi seperti block domain dan mengatur bandwidth

client sehingga menyulitkan pengguna. Kesulitan ditambah dengan ketidaktahuan fitur Mikrotik

mana yang sesuai yang dapat diterapkan pada jaringan untuk menyelesaikan kasus yang terjadi.

Dengan adanya program bantu konfigurasi ini diharapkan pengguna dapat melakukan konfigurasi

yang sering dilakukan terhadap jaringan yang mereka bangun dengan lebih mudah, karena

perintah untuk konfigurasi Mikrotik dapat disatukan dan hanya perlu merubah variabel-variabel

tertentu pada interface program yang dibutuhkan di dalam konfigurasi menggunakan

bantuan RouterOS API PHP class dari Mikrotik.

Kata Kunci :Router, RouterOS API PHP class, Mikrotik, Konfigurasi, Interface

1) Mahasiswa Fakultas Teknologi Informasi Jurusan Teknik Informatika, Universitas Kristen Satya

Wacana Salatiga. 2) Staff Pengajar Fakultas Teknologi Informasi, Universitas Kristen Satya Wacana Salatiga.

Page 8: Perancangan Program Bantu Mikrotik menggunakan API ......1 Perancangan Program Bantu Mikrotik Menggunakan API (Application Programming Interface) PHP classMikrotik Artikel Ilmiah Diajukan

8

1. Pendahuluan

Jaringan internet berkembang dengan cepat dilihat dari pemerintahan,

sekolah dan personal yang sudah memanfaatkan jaringan internet. Jaringan

internet yang dimanajemen dengan baik memerlukan perangkat tambahan seperti

router. Mikrotik merupakan salah satu merek router yang sering digunakan.

Router dapat difungsikan untuk memanajemen suatu jaringan agar lebih

terstruktur dengan baik. Router Mikrotik dapat diakses dengan beberapa cara,

salah satunya dengan menggunakan windows application (Winbox).

Namun seorang operator jaringan sering merasa kesulitan untuk

menentukan dan memilih fitur – fitur yang terdapat dalam tools tersebut untuk

menyelesaikan masalah yang dihadapinya dikarenakan dalam tools tersebut

memiliki beberapa langkah yang rumit untuk melakukan setting jaringan dengan

contoh menambahkan client, firewall, membatasi bandwidth, memantau trafik

internet dan lain-lain. Seorang operatoristrator jaringan berbasis Mikrotik

membutuhkan aplikasi yang memiliki fitur khusus sesuai dengan kebutuhannya

serta konfigurasi yang sering digunakan untuk melakukan perawatan jaringan

komputer yang memanfaatkan Mikrotik sebagai router.

Bagaimana menyelesaikan latar belakang permasalahan diatas maka

dibutuhkan program bantu yang berfungsi memberikan fitur khusus untuk seorang

operator jaringan agar dapat menyelesaikan permasalahan yang sering

dihadapinya dengan cepat dan tepat serta tampilan tidak membingungkan bagi

seorang operator.

Perancangan program bantu Mikrotik menggunakan bahasa pemrograman

PHP (Pretext Hyper-Processor) dengan memanfaatkan fitur API (Aplication

Programming Interface) Mikrotik. Router yang digunakan yaitu Mikrotik RB750

series yang sudah memiliki versi OS 3 dan diatasnya. Program bantu yang

dirancang lebih menekankan pada interface dan fitur yang sering digunakan oleh

operator Mikrotik pada umumnya.

Tujuan dirancang program ini untuk mempermudah dan sebagai program

bantu serta hanya diperuntukkan kepada operator jaringan sehingga hanya

menampilkan beberapa fitur menu yang sering digunakan oleh seorang operator.

2. Tinjauan Pustaka

Dari penelitian sebelumnya yang dilakukan oleh Yonathan Okto pada

tahun 2012 telah membuat aplikasi berbasis web untuk memanajemen hotspot

gateway. Pada penelitian tersebut , penulis menggunakan API Mikrotik untuk

mebuat sistem hotspot gateway di FiandriNet dan lebih menekankan penerapan

sistem userberdasarkan volume based dan time based access.[1]

Penelitian lainnya dilakukan oleh Trang Wisesa Wardhani dan Melwin

Syafrizal pada tahun 2012 dalam penelitiannya yang berjudul Perancangan Sistem

Advance Monitoring Di Bali 16 Hotspot Berbasis PHP MYSQL Menggunakan

Mikrotik membahas lebih dalam tentang monitoring jaringan internet berbasis

web yang dapat diakses secara online serta memanfaatkan media hosting agar

program dapat berjalan atau diakses [2].

Page 9: Perancangan Program Bantu Mikrotik menggunakan API ......1 Perancangan Program Bantu Mikrotik Menggunakan API (Application Programming Interface) PHP classMikrotik Artikel Ilmiah Diajukan

9

Dalam penelitian ini digunakan API Mikrotik yang diimplementasikan

dalam bahasa pemrograman PHP untuk merancang dan membangun sebuah

aplikasi berbasis web yang berfungsi sebagai remote akses Mikrotik. Pada

penelitian sebelumnya yang diteliti adalah pembuatan sistem hotspot gateway dan

perancangan sistem monitoring.Pada penelitian ini tidak membahas mengenai

hotspot gateway maupun sitem monitoring, melainkan lebih menitik beratkan

pada perancangan dan pembuatan program bantu Mikrotik yang diperuntukkan

kepada operatoristrator dengan jaringan berbasis Mikrotik. Aplikasi ini tidak

dirancang untuk client dan hanya menampilkan fitur khusus yang dibuat

berdasarkan survey kepada beberapa operator tentang fitur Mikrotik apa saja yang

sering dipakai pada saat operator mengakses Mikrotik untuk menyelesaikan suatu

permasalahan yang ada. Fitur tersebut diantaranya yaitu penambahan client , PCQ

(Per Connection Queue), dan update konfigurasi Firewall. PCQ (Per Connection

Queue) merupakan salah satu cara pada Mikrotik untuk melakukan pembagian

bandwidth secara merata dan adil [3].

Mikrotik merupakan perusahaan yang memproduksi perangkat jaringan

komputer yang diantaranya yaitu Routerboard dan RouterOS.Mikrotik sendiri

didirikan pada tahun 1995 dan berkantor pusat di Latvia. Pada tahun 1996 John

(John Trully) dan Arnis (Arnis Riekstins) mulai me-routing dunia. John dan Arnis

bertekad menciptakan produk routers yang berkemampuan handal dan dapat

dijalankan di seluruh dunia [4]. Mikrotik menggunakan kernel dari Linux dan

kernel pertama kali yang digunakan yaitu kernel 2.2 yang dikembangkan

bersama-sama oleh 5-15 staff R&D Mikrotik yang sekarang menguasai routing di

negara-negara berkembang. Mikrotik dipilih banyak penggunanya dikarenakan

harga yang terjangkau, kemampuan yang handal dan fitur yang dimiliki Mikrotik

juga sangat banyak dan terus dikembangkan. Mikrotik dapat diakses melalui 4

cara yaitu menggunakan Windows Application(Winbox), Telnet, Web Browser,

dan Console. Menurut Pratama (2010:9), PHP adalah kependekan dari Pretext Hyper-

Processor yang dibangun olehRasmus Lerdorf pada tahun 1994. Dahulu, pada

awal pengembangannya PHP disebut sebagai kependekan dari Personal Home

Page. PHP merupakan produk open source sehingga kita dapat mengakses source

code, menggunakan, dan mengubahnya tanpa harus membayar[5].

Menurut Yonatan Okto (2012) tentang pengetian API (Application

ProgrammingInterface), API adalah kumpulan fungsi atau kumpulan kode

program yang berfungsi untuk mengkomunikasikan sebuah program dengan

kernel dari sebuah sistem operasi. API Mikrotik adalah kumpulan fungsi, layanan

service yang digunakan untuk mengkomunikasikan data yang ada pada Mikrotik

RouterOS untuk dapat dihubungkan menggunakan aplikasi bahasa pemrograman

tertentu untuk menyimpan data maupun digunakan untuk mengakses Mikrotik itu

sendiri. Cara menggunakan API Mikrotik adalah dengan cara melakukan import

package routeros_api.class.php yang dapat di download dari situs resmi

Mikrotik.com [2].

Page 10: Perancangan Program Bantu Mikrotik menggunakan API ......1 Perancangan Program Bantu Mikrotik Menggunakan API (Application Programming Interface) PHP classMikrotik Artikel Ilmiah Diajukan

10

3. Metodologi Penelitian

Metode penelitian yang digunakan untuk menyusun perancangan program

ini adalah menggunakan pendekatan NDLC (Network Development Life Cycle)

yang didalamnya terdapat beberapa tahap yaitu analysis, design, simulation

prototyping, implementation, monitoring, management [6]. Seperti terlihat pada

Gambar 1.

Gambar 1 NDLC (Network Development Life Cycle)[6]

Gambar 1 merupakan alur diagram dari metode pendekatan NDLC yang

memiliki enam tahap. Dalam perancangan jaringan komputer ini sangat cocok

menggunakan pendekatan ini, sehingga hasil yang diperoleh terarah dan

terperinci.

Tahap awal merupakan tahap analysis yang bertujuan untuk menganalisa

permasalahan yang muncul. Permasalahan yang ada yaitu Mikrotik memiliki

program-program konfigurasi yang berbasis GUI (Graphical User Interface)

tetapi tetap saja membutuhkan langkah yang rumit dan membingungkan walaupun

hanya untuk melakukan konfigurasi seperti block domain dan mengatur

bandwidth client sehingga menyulitkan operator. Kesulitan ditambah dengan

ketidaktahuan fitur Mikrotik mana yang sesuai yang dapat diterapkan pada

jaringan untuk menyelesaikan kasus yang terjadi dikarenakan banyaknya fitur

yang disediakan pada Winbox serta dalam fitur masih terdapat pilihan menu

kembali yang membuat operator semakin sulit untuk menentukan fitur yang akan

digunakan dalam penyelesaian masalah. Analisa juga dilakukan untuk mengetahui

alat yang digunakan untuk membangun program yang sudah direncanakan.

Analisa alat yang digunakan untuk menunjang dan memaksimalkan

perancangan program bantu Mikrotik. Tabel 2 merupakan alat yang digunakan,

fungsi dan spesifikasinya.

Page 11: Perancangan Program Bantu Mikrotik menggunakan API ......1 Perancangan Program Bantu Mikrotik Menggunakan API (Application Programming Interface) PHP classMikrotik Artikel Ilmiah Diajukan

11

Tabel 2 Alat yang digunakan

Tahap yang berikutnya merupakan tahap design. Dari hasil analisis

kebutuhan fungsional seluruhnya kemudian dirancang dengan menggunakan

UML(Unified Modeling Langguage).

Gambar 2 Use Case Diagram

Gambar 2 merupakan use case diagram program bantu mikrotik. Use case

diagram merupakan diagram yang dibuat berdasarkan sudut pandang user. Pada

use case diagram, user seolah-olah dilibatkan pada tahap analisis dan desain

sistem. Use case diagram merupakan suatu konstruksi yang membantu analisis

sistem dalam menentukan bagaimana keadaan sistem. Use case diagram

No Komponen Fungsi Spesifikasi

1 Router Mikrotik

RB750Series

Sebagai penghubung antar

jaringan CPU AR7241 400MHz

RAM 32MB

LAN Ports 5

RouterOS v5.19

2 PC/LAPTOP Sebagai sarana implementasi -

4 Kabel UTP

(Unshielded

Twisted Pair)

Penghubung router dengan switch

dan client CAT 5E, RJ45

5 Notepad++ Sebagai developer PHP -

6 Web Browser Sebagai media menjalankan

program Chrome Browser,

Mozilla, Dll

7 Winbox Sebagai tester konfigurasi Winbox v3.0

8 WAMP Server Sebagai Localhost -

Page 12: Perancangan Program Bantu Mikrotik menggunakan API ......1 Perancangan Program Bantu Mikrotik Menggunakan API (Application Programming Interface) PHP classMikrotik Artikel Ilmiah Diajukan

12

menggambarkan sistem dengan mengacu pada apa yang akan dilakukan user

terhadap sistem.

Gambar 3 Class Diagram

Gambar 3 merupakan gambar class diagram program yang dirancang.

Class adalah sebuah spesifikasi yang jika di instansi akan menghasilkan sebuah

objek dan merupakan inti dari pengembangan dan desain berorientasi objek. Class

diagram adalah alat perancangan terbaik untuk tim pengembang. Diagram tersebut

membantu penulis mendapatkan struktur system sebelum kode ditulis, dan

membantu untuk memastikan bahwa system adalah desain terbaik. Pada claas

diagram, program dirancang memiliki 6 class yang saling berhubungan. Dari class

diagram gambar 3 operator melakukan login dengan mengisikan IP,user dan

password. Jika berhasil maka akan masuk pada menu utama dan jika gagal akan

kembali pada halaman login. Pada class display terdapat 5 menu yaitu

Logout,interface,simplequeue,queue dan block Website yang masing masing

memiliki fungsi untuk melakukan konfigurasi router yaitu edit,update dan delete.

Pada table Login yang menjadi primery key yaitu IP address,Ussername, dan

password. Pada table interface yang menjadi primery key-nya yaitu

IP_Interface,Nama Interface,Network_address. Pada table Simple Queue yang

menjadi primery key-nya yaitu Nama_komputer, Ip_Komputer, Limit_Upload dan

Limit_Download. Pada table Management Bandwidth PCQ yang menjadi primery

key-nya yaitu Nama_komputer dan Terget_Ip_Komputer. Pada table Blocking

Website yang menjadi primery key-nya yaitu Content, Src_address dan

Effective_time.

Page 13: Perancangan Program Bantu Mikrotik menggunakan API ......1 Perancangan Program Bantu Mikrotik Menggunakan API (Application Programming Interface) PHP classMikrotik Artikel Ilmiah Diajukan

13

Pada gambar 3 dapat dilihat alur proses penggunaan aplikasi yaitu operator

melakukan login pada program bantu dan jika berhasil maka akan dilanjutkan

pada halaman utama menu program jika gagal operator diminta untuk login

kembali. Jika operator berhasil maka dalam menu utama terdapat 4 menu yaitu

interface, Simple Queue, Queue, dan Blocking Website. Pada setiap menu

terdapat halaman konfigurasi dan tutorial penggunaan menu yang dipilih untuk

mendapatkan hasil sesuai yang diharapkan.

Pada tahap simulation prototyping dibuat sebuah topologi jaringan sesuai

dengan design program yang sudah dibangun. Pada tahap ini router dikonfigurasi

agar dapat terkoneksi serta dilakukan instalasi WAMP Server sebagai server

Localhost yang nantinya digunakan untuk pengujian menjalankan program yang

sudah dibangun dan instalasi web browser (Chrome Browser) sebagai media

untuk menampilkan program. Topologi jaringan dutunjukkan pada gambar 4.

Pada gambar 4 WAMP server dan web browser diinstall pada PC/Laptop yang

digunakan untuk menjalankan program bantu mikrotik.

Gambar 4 Topologi Simulasi Penerapan Program Bantu Mikrotik

Pada tahap implementasi dilakukan pembangunan program secara utuh

berdasarkan pada tahap design dan latar belakang permasalahan. Program

dibangun dengan menggunakan bahasa pemrograman PHP dengan memanfaatkan

API PHP class Mikrotik yang dibuat oleh Denny Basta dan beberapa kontributor

lainnya yang sudah disediakan oleh Mikrotik di Website resmi Mikrotik yaitu

wiki.Mikrotik.com/wiki/API_PHP_class. Program dibuat dengan tampilan yang

mudah dipergunakan dengan bahasa yang lebih mudah dimengerti. API dapat

disesuaikan dengan kebutuhan dari operator. Service API pada Mikrotik juga

harus dalam keadaan aktif. Kode program 1 merupakan kode program API

Mikrotik PHP Class.

Page 14: Perancangan Program Bantu Mikrotik menggunakan API ......1 Perancangan Program Bantu Mikrotik Menggunakan API (Application Programming Interface) PHP classMikrotik Artikel Ilmiah Diajukan

14

Kode Program 1 API PHP Class Mikrotik

Kode Program 2 Periksa Data Login

1. <?php

2. class routeros_api {

3. var $debug = false;4. var $error_no;5. var $error_str;6. var $attempts = 5;7. var $connected = false 8. var $delay = 3;9. var $port = 8728; 10. var $timeout = 3; var $socket

11. function debug($text){

12. function connect($ip, $login, $password){

13. function disconnect(){

14. function read($parse = true){

15. function write($command, $param2 = true){

16. function comm($com, $arr = array()){

17. ?>

1. <?php

2. session_start();

3. require('routeros_api.class.php');

4. $_SESSION['ip'] = $_POST['MIKROTIK_IP'];

5. $_SESSION['user'] = $_POST['USER'];

6. $_SESSION['pass'] = $_POST['PASSWORD'];

7. $API = new routeros_api();

8. if($API>connect($_SESSION['ip'],$_SESSION['user'],$_SESSION[

'pass'])){

9. ?>

10. <script>

11. alert ("Selamat datang di MikroTrick");

12. top.location="index.php?page=interface";

13. </script>

14. <?php

15. }

16. else{

17. ?>

18. <script>

19. alert ("IP Address, User atau password anda salah,

silahkan login kembali");

20. top.location="login.php";

21. </script>

22. <?php

23. }

24. ?>

Page 15: Perancangan Program Bantu Mikrotik menggunakan API ......1 Perancangan Program Bantu Mikrotik Menggunakan API (Application Programming Interface) PHP classMikrotik Artikel Ilmiah Diajukan

15

Dalam kode program 1 ditunjukkan pengisian data login harus sesuai

dengan data login Mikrotik. Apabila pengisian data login sesuai maka login

sukses dan diteruskan menuju halaman menu. Jika Login salah maka akan keluar

pemberitahuan agar diminta login kembali.Data login ditunjukkan pada baris 4

sampai baris 6.

Kode Program 3 Script Penambahan Client

Dalam kode program 2 merupakan kode program untuk melakukan

penambahan client. Apabila pengisian data penambahan client sudah lengkap dan

format dengan benar maka konfigurasi penambahan client akan ditulis dan

diterapkan pada router. Data inputan ditunjukkan pada baris 5 sampai baris 9.

Kode Program 4 Script Pembagian Bandwidth Secara Merata

1. <?php

2. require('routeros_api.class.php');

3. $API = new routeros_api();

4. if (isset($_POST["Submit"])){

5. $ipAddress = $_POST['ipAddress'];

6. $upload = $_POST['upload'];

7. $download = $_POST['download'];

8. $maxlimit = "$upload/$download";

9. $name = $_POST['name'];

10. if($API>connect($_SESSION['ip'],$_SESSION['user'],$_SESSI

ON['pass'])){

11. $API->write('/queue/simple/add', false);

12. $API->write('=max-limit='.$maxlimit, false);

13. $API->write('=name='.$name, false);

14. $API->write('=target-addresses='.$ipAddress);

15. $ARRAY = $API->read();

16. }

17. ?>

1. <?php

2. require('routeros_api.class.php');

3. $API = new routeros_api();

4. if (isset($_POST["Submit"])){

5. $name = $_POST['name'];

6. $target = $_POST['target'];

7. $queue = "$name/$name";

8. if ($API-

>connect($_SESSION[ip],$_SESSION[user],$_SESSION[pass])){

9. $API->write('/queue/type/add', false);

10. $API->write('=name='.$name, false);

11. $API->write('=kind=pcq', false);

12. $API->write('=pcq-classifier=dst-address');

13. $ARRAY = $API->read();

14. $API->write('/queue/simple/add', false);

15. $API->write('=name='.$name, false);

16. $API->write('=queue='.$queue, false);

17. $API->write('=target-addresses='.$target);

18. $ARRAY = $API->read(); }?>

Page 16: Perancangan Program Bantu Mikrotik menggunakan API ......1 Perancangan Program Bantu Mikrotik Menggunakan API (Application Programming Interface) PHP classMikrotik Artikel Ilmiah Diajukan

16

Kode program 3 merupakan, kode program untuk melakukan pembagian

bandwidth secara merata terhadap semua client yang sedang terkoneksi. Operator

nantinya hanya diharuskan mengisikan target IP dari interface yang terkoneksi

dan nama dari interface tersebut. Data yang diisikan harus sesuai dengan data

Mikrotik. Data inputan ditunjukkan pada baris 4 sampai baris 6.

Kode Program 4 Script Pemblokiran Website

Pada kode program 4 dijelaskan mengenai fitur pemblokiran website yang

nantinya operator harus menginputkan data website yang akan diblokir. Apabila

data yang diinputkan sudah sesuai dengan data yang diperlukan maka akan

otomatis tercetak pada router website yang telah diblokir. Data input dijelaskan

pada baris 5 sampai baris 18.

Tahap monitoring dilakukan setelah pembangunan program selesai. Dalam

proses monitoring dilakukan proses pengujian program yang dibangun apakah

sudah dapat berjalan sesuai dengan harapan dan apakah fitur yang dibuat sudah

1. <?php

2. require('routeros_api.class.php');

3. $API = new routeros_api();

4. if (isset($_POST["Submit"])){

5. $domain = $_POST['domain'];

6. $mulai = $_POST['mulai'];

7. $selesai = $_POST['selesai'];

8. $hari1 = $_POST['hari1'];

9. $hari2 = $_POST['hari2'];

10. $hari3 = $_POST['hari3'];

11. $hari4 = $_POST['hari4'];

12. $hari5 = $_POST['hari5'];

13. $hari6 = $_POST['hari6'];

14. $hari7 = $_POST['hari7'];

15. $mulai = substr($mulai,0,2).':'.substr($mulai,2,4);

16. $selesai =

substr($selesai,0,2).':'.substr($selesai,2,4);

17. $time = "$mulai-

$selesai,$hari1,$hari2,$hari3,$hari4,$hari5,$hari6,$hari7

";

18. $ipblock = $_POST['ipBlock'];

19. if ($API-

>connect($_SESSION['ip'],$_SESSION['user'],$_SESSION['pas

s'])){

20. $API->write('/ip/firewall/filter/add', false);

21. $API->write('=chain=forward', false);

22. $API->write('=dst-port=80', false);

23. $API->write('=protocol=tcp', false);

24. $API->write('=content='.$domain, false);

25. $API->write('=action=drop', false);

26. $API->write('=src-address='.$ipblock, false);

27. $API->write('=time='.$time);

28. $ARRAY = $API->read(); }?>

Page 17: Perancangan Program Bantu Mikrotik menggunakan API ......1 Perancangan Program Bantu Mikrotik Menggunakan API (Application Programming Interface) PHP classMikrotik Artikel Ilmiah Diajukan

17

dapat berjalan dengan baik atau tidak. Jika fitur masih mengalami gangguan atau

script masih terdapat error maka dilakukan perbaikan sampai dengan fitur dan

script memang dapat berjalan dengan baik dan tidak lagi ditemukan

permasalahan. Apabila masih terjadi permasalahan terhadap program yang

dibangun maka akan dicari penyebab terjadinya error atau permasalahan dan

kemudian diperbaiki hingga program sudah benar-benar tidak memiliki

permasalahan.

Tahap Management, merupakan tahapan terakhir dari siklus NDLC yang

membahas tentang sebuah kebijakan (policy), bagaimana sebuah aturan yang

perlu diterapkan untuk menyempurnakan tujuan dan manfaat sebuah teknologi

yang telah dibangun. Pada tahap ini diberikan tutorial singkat pada setiap halaman

menu agar program yang dibangun dapat dioperasikan dengan baik.

4. Hasil dan Pembahasan

Berikut ini merupakan hasil dan pembahasan dari Perancangan Program

Bantu Mikrotik Menggunakan API PHP class Mikrotik dengan menampilkan

empat fitur menu yang sering digunakan oleh seorang operator Mikrotik pemula

pada khususnya.

Gambar 5 FormLogin

Gambar 5 merupakan halaman login hasil dari implementasi dari kode

program 1. Data login didapat dari Mikrotik melalui request menggunakan API

seperti yang tertera pada kode program 1 pada baris ke 4 sampai dengan baris ke

6. Jika data login tidak sesuai dengan data login mikrotik maka akan muncul

notifikasi login gagal seperti yang tertera pada gambar 6.

Gambar 6 Notifikasi Login Gagal

Page 18: Perancangan Program Bantu Mikrotik menggunakan API ......1 Perancangan Program Bantu Mikrotik Menggunakan API (Application Programming Interface) PHP classMikrotik Artikel Ilmiah Diajukan

18

Program bantu ini memiliki empat fitur menu yaitu Interface, Add.Client,

Queue, dan BlockWeb. Menu yang pertama merupakan menu interface. Menu

interface ditampilkan sebagai halaman utama program apabila login berhasil. Pada

halaman menu interface terdapat tampilan interface-ethernet Mikrotik dan IP

address dari ethernet yang terkoneksi yang sedang terkoneksi serta disediakan

pilihan untuk mengedit dan menghapus interface-ethernet tersebut. Gambar 7

merupakan tampilan menu interface dari program bantu mikrotik.

Gambar 7 Menu Interface

Menu yang kedua adalah Add.Client. Gambar 8 merupakan tampilan

halaman menu Add.Client yang berfungsi untuk menambahkan client baru atau

mengkonfigurasi ulang client yang sudah ada. Menu ini memiliki form

konfigurasi dan tabel hasil konfigurasi. Pada form konfigurasi berisi form IP

address, nama, Limit-Upload dan Limit-Download. Form konfigurasi dapat

diisikan sesuai dengan kebutuhan operator. Pada bagian bawah tabel hasil

konfigurasi disediakan tutorial konfigurasi. Sebagai alat pengujian apakah fitur ini

dapat berjalan atau tidak digunakan aplikasi bernama Winbox.

Gambar 8 Menu Add.Client

Page 19: Perancangan Program Bantu Mikrotik menggunakan API ......1 Perancangan Program Bantu Mikrotik Menggunakan API (Application Programming Interface) PHP classMikrotik Artikel Ilmiah Diajukan

19

Gambar 9 merupakan tampilan menu yang selanjutnya atau menu yang

ketiga. Menu Queue yang berfungsi untuk melakukan manajemen bandwidth

secara PCQ (Per Connection Queue) atau melakukan manajemen secara

keseluruhan. Manajemen bandwidth ini merupakan pembagian bandwidth sama

rata sesuai dengan jumlah client yang sedang terkoneksi. Menu ini tersedia form

konfigurasi yaitu Target IP address dan nama.

Gambar 9 Menu Queue

Menu yang keempat yaitu menu BlockWeb. Gambar 10 merupakan

tampilan menu BlockWeb yang berfungsi untuk melakukan pemblokiran situs

atau website yang dianggap operator memiliki konten tidak layak atau

membahayakan. Tidak hanya itu namun operator juga dapat membatasi akses

website pada jam – jam tertentu. Dalam menu ini berisi form domain atau alamat

website dalam bentuk url, ip address website target, dan effective time. Form

effective time bertujuan memungkinkan operator membatasi akses pada jam

tertentu.

Page 20: Perancangan Program Bantu Mikrotik menggunakan API ......1 Perancangan Program Bantu Mikrotik Menggunakan API (Application Programming Interface) PHP classMikrotik Artikel Ilmiah Diajukan

20

Gambar 10 Menu BlockWeb

Setelah operator melakukan konfigurasi pada satu atau keseluruhan menu

maka operator dapat melakukan logout atau keluar dari program dengan cara

melakukan klik pada LogOut button yang tersedia pada pojok kanan atas halaman

program.

5. Kesimpulan dan Saran

Berdasarkan analisa dan perancangan program bantu Mikrotik maka dapat

disimpulkan bahwa program bantu Mikrotik dengan menggunakan API Mikrotik

dapat menyelesaikan permasalan yang ada. Program bantu mikrotik dapat

memberikan kemudahan kepada operator untuk mengakses mikrotik dikarenakan

fitur dan tampilan dapat disesuaikan dengan kebutuhan dari operator.

Saran yang diberikan pada peneliti selanjutnya agar menambahkan

beberapa fitur menu lain dan mengimplementasikan API Mikrotik dalam bentuk

desktop atau mobile.

Page 21: Perancangan Program Bantu Mikrotik menggunakan API ......1 Perancangan Program Bantu Mikrotik Menggunakan API (Application Programming Interface) PHP classMikrotik Artikel Ilmiah Diajukan

21

6. Daftar Pustaka

[1] Isman, Fadillah. 2012. Program Bantu Konfigurasi RouterMikrotik

Sebagai InternetGateway Dan Manajemen Bandwidth Menggunakan

RouterOS API PHP.

[2] Wardhani, Wisesa Trang. 2012. Perancangan Sistem Advance Monitoring

di Bali 16 Hotspot Berbasis PHP MYSQL Menggunakan Mikrotik API.

[3] Permana, Budi. 2003. Bandwidth Manajemen Dengan PCQ Pada Mikrotik

[4] Risman, Firman Maulana.2012. Perancangan Jaringan Hotspot Server

Berbasis Mikrotik Di Gedung Kuliah Universitas Gunadarma.

[5] Pratama. A.N.W. 2010. CodeIgniter: Cara Mudah Membangun Aplikasi

PHP.

[6] James E. Goldman, Philips T. Rawles, Third Edition. 2001. Applied Data

Communications, A business-Oriented Approach, John Wiley & Sons:

470.