Tere kÔigile!
Seekord otsustasin kirjeldada olukorda, mis nÀib internetis mitte eriti kajastatud olevat, kuigi mÔningaid vihjeid selle kohta leidub, kuid suur osa tulenes lihtsalt pikaajalisest meetodilisest koodi ja Mikrotiki wiki uurimisest.
Tegelik ĂŒlesanne: teostada SMSiga mitme seadme haldamine, nĂ€iteks portide sisse ja vĂ€lja lĂŒlitamine.
On olemas:
- TeisejÀrguline ruuter CRS317-1G-16S+
- JuurdepÀÀsupunkt Mikrotik NETMETAL 5
- LTE modem R11e-LTE
Alustame sellest, et imeline juurdepÀÀsupunkt Netmetal 5 on varustatud sim-kaardi jaoks mĂ”eldud rĂ€niĂŒhendusega ja portiga LTE modemi paigaldamiseks. SeetĂ”ttu osteti sellele punktile peaaegu parim modem, mis oli saadaval ja mida toetas punkti enda operatsioonisĂŒsteem, nimelt R11e-LTE. Punkt oli lahti vĂ”etud, kĂ”ik pandud Ă”igesse kohta (kuigi tuleb teada, et sim-kaart asub modemi all ja seda ei saa vĂ€lja vĂ”tta ilma pĂ”hiplati eemaldamiseta), seega kontrollige sim-kaarti, et see töötaks, muidu peab juurdepÀÀsupunkti mitu korda lahti vĂ”tma.
SeejÀrel puurisime korpusesse paar avaus, paigaldasime 2 pigtaili ja kinnitasime otsad modemile. Kahjuks ei sÀilinud protsessi fotosid. Teiselt poolt kinnitasime pigtailidele universaalsed antennid magnetalusel.
Peamised seadistuse etapid on internetis piisavalt hĂ€sti kajastatud, vĂ€lja arvatud mĂ”ned pisikesed suhtlemisvead. NĂ€iteks modem lĂ”petab SMS-sĂ”numite vastuvĂ”tmise, kui neile saab 5 tĂŒkki ja need ripuvad Inboxis, sĂ”numite kustutamine ja modemi taaskĂ€ivitamine ei lahenda probleemi alati. Kuid versioonis 6.44.1 töötab vastuvĂ”tt stabiilsemalt. Inboxis kuvatakse 4 viimast sms'i, ĂŒlejÀÀnud kustutatakse automaatselt ega sega elu.
Katsese eksperimendi peamine eesmĂ€rk on lĂŒlitada kahe ruuteri liidesed sisse ja vĂ€lja ĂŒhes fĂŒĂŒsilises vĂ”rgus. Peamine keerukus seisnes selles, et Mikrotik ei toeta juhtimist SNMP kaudu, vaid lubab ainult vÀÀrtuste lugemist. SeetĂ”ttu tuli uurida teist suunda, nimelt Mikrotik API-d.
Selget dokumentatsiooni, kuidas juhtida, pole olemas, seetÔttu tuli katsetada ja tulevaste katsete jaoks on kÀtetööd koostatud see juhend.
Mitme seadme haldamiseks on vajalik töökorras ja saadaval WEB-server kohalikus vÔrgus, millele lasub Mikrotiki kÀsu haldamise vajadus.
1. Netmetal 5-l peab tegema paar skripti vastavalt sisselĂŒlitamiseks ja vĂ€ljalĂŒlitamiseks
sĂŒsteemi skript
add dont-require-permissions=no name=disableiface owner=admin policy=
ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon source=
"\/tool fetch http:\/\/WEB_SERVER_IP\/di.php "
add dont-require-permissions=no name=enableiface owner=admin policy=
ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon source=
"\/tool fetch http:\/\/WEB_SERVER_IP\/en.php "
2. Luua 2 skripti veebis serveris (loomulikult peab sĂŒsteemis olema installitud php):
debug=true;
if ($API->connect('Mikrotiki IP', 'admini logi', 'admini parool')) {
$API->comm("\/interface\/ethernet\/enable", array(
"numbers"=>"sfp-sfpplus16",));
}
$API->disconnect();
?>
debug=true;
if ($API->connect('Mikrotiki IP', 'admini logi', 'admini parool')) {
$API->comm("\/interface\/ethernet\/disable", array(
"numbers"=>"sfp-sfpplus16",));
}
$API->disconnect();
?>
3. Laadige alla Mikrotikist routeros_api.class.php ja asetage see kergesti ligipÀÀsetavasse kataloogi serveris.
sfp-sfpplus16 asemel tuleb sisestada vĂ€lja lĂŒlitatava/vĂ€lja lĂŒlitatava liidese nimi.
NĂŒĂŒd, kui edastate sĂ”numi numbrile kujul
:cmd SALAJANEKOOD skript enableiface
vÔi
:cmd SALAJANEKOOD skript disableiface
NETMETAL kÀivitab vastava skripti, mis omakorda tÀidab kÀsku veebiserveris.
Tegevuste tÀitmise kiirus SMS-ide vastuvÔtmise ajal on murdosa sekundist. Töötab stabiilselt.
Lisaks on olemas funktsioon, mis saadab SMS-e Zabbixi monitorimisse sĂŒsteemile ning avab varureti internetiĂŒhenduse, kui optika kukub. See lĂ€heb otseselt sellest artiklist kaugemale, kuid ĂŒtlen kohe, et SMS-i saatmise pikkus peab mahtuma ĂŒhe sĂ”numi standardmÔÔtu, kuna Mikrotik ei jaga neid osadeks, ning kui pikk sĂ”num saabub, siis see lihtsalt ei saadeta; samuti tuleb filtreerida sĂ”numites edastatavad mĂ€rgid, vastasel juhul SMS-i ei saadeta.
Allikas: habr.com
