Upload
phungthuan
View
224
Download
0
Embed Size (px)
Citation preview
Fungsi script
Memaintenance task beberapa routerMengeksekusi perintah konsol berdasarkan waktuatau eventMenaikkan kecepatan task pada sebuah routerScript terdiri dari perintah konfigurasi dan expresi ( ICE = internal console expression )
Bagaimana menulis script
Mengunakan /system/script menu− Contoh : /system script add name=test source = {:log
info”heloo world !” }
Menulis langsung dikonsol− Contoh : [admin@ufoakses]>:log info”heloo world!”
Sintaks perintah consolePrefix = perintah expression seperti pada root level− [admin@MikroTik] > ip dns /ping 192.168.3.1 − [admin@MikroTik] /log> ..
Path = Relative path ke menu level− [admin@MikroTik] /ip firewall mangle> .. − [admin@MikroTik] /ip firewall>
Path_args
Action− Seperti add – action =ip firewall filter add chain=forward
Name[=value]− /interface wireless set wlan1 ssid=nico
Contoh perintah console
/ping 10.0.0.1 count=6− Prefix= /− Action=ping− Unamed parameter= 10.0.0.1− Name[=value]= count=6
.. Ip firewall rule input− Path= ..ip firewall rule− Path_args = input
:for I from=1 to=10 do {:put $i}− Prefix= :− Action = for− Unnamed parameter= I− Pname[=value] = from=1 to=10 do {:put $i}
/interface monitor-traffic ether1,ether2,ether3,vlan− Prfefix= /− Path = interface− Action = monitor-traffic− Unnamed parameter = ether1,ether2,ether3,vlan
Berhitung dgn script[admin@MikroTik] > :put (1+2)3[admin@MikroTik] > :put (43-3)40[admin@MikroTik] > :put (43*3) 129[admin@MikroTik] > : put (45+23+1)69[admin@MikroTik] > : put ( 10 / 2 )5
Perintah :
[admin@MikroTik] > : environment do for len parse set toidtostrterminal error foreach local pick time toip totimebeep execute global log put toarraytoip6 typeofdelay find if nothing resolve tobooltonum while
Bagaimana menjalankan script
Perintah run− /system script run test
Menambahkan nama script pada tool task− /system scheduler add name=test on-event=test
interval=10s
Dimana saja dari konsol− :put “ hai”
Mengedit script
Menggunakan perintah set− /system script set script_name source={…}
Menggunakan editor− /system script edit script_name source
Full screen editor tidak jalan di single line mode
Monitoring script
Mengecek script counter dengan perintah print− /system script print
Melihat jalannya script− /system script job print
Variable dalam script
Mengunakan simbol $Global= system wide− :global a ; :set a 5; :put $a
Local− :local e; :set e 11 :put $e
Loop− :foreach s in 1,2,3 do={put $s}
Monitoring− /interface eth1 monitor ether1 do={:put $status}
Contoh penggunaan variable
[admin@MikroTik] > :global g1 "nico mau belajarvariabel"[admin@MikroTik] > :put $g1nico mau belajar variabel[admin@MikroTik] > : global g2 "alooo"[admin@MikroTik] > :global g1 g2
Konversi tipe data
Fungsi untuk konversi data adalah− toarray− tobool− toid− toip− tonum− tostr− totime
Perintah Get dan find
Get[admin@MikroTik] > :put [/ip address get 0 address ]12.12.12.5/24Find[admin@MikroTik] > /interface enable [find type=ether]
Contoh tipe dataHexadesimal[admin@MikroTik] > :global var 0x10[admin@MikroTik] > :put $var16Waktu[admin@MikroTik] > :put 2d11h122d11:00:12Waktu dengan deimal[admin@MikroTik] > :put 0.1d1.4s0.1d1.4s
Script EditorDigunakan untuk merubah script
[admin@MikroTik] > sys scr add name=aku
[admin@MikroTik] > sys scr pr
Flags: I - invalid
0 name="tes" owner="admin"
policy=ftp,reboot,read,write,policy,test,winbox,password,sniff run-count=0 source=:log info " weleh-weleh "
1 name="nico" owner="admin"
policy=ftp,reboot,read,write,policy,test,winbox,password,sniff run-count=0 source=:put "heloo aku disini"
2 name="aku" owner="admin"
policy=ftp,reboot,read,write,policy,test,winbox,password,sniff run-count=0 source=""
[admin@MikroTik] > sys scr edit
number: 2
value-name: source