Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 7 Pomógł: 0 Dołączył: 3.07.2017 Ostrzeżenie: (0%)
|
Witam jestem na etapie pisania skryptu który po API łączy się z urządzeniem sieciowym który działa ale nie tak jak bym chciał skrypt wygląda następująco
Kod Kod <?php $CONFIG_FILE = '/etc/lms/lms.ini'; $CONFIG = (array) parse_ini_file($CONFIG_FILE, true); require_once('/var/www/lms/lib/config.php'); // Init database $_DBTYPE = $CONFIG['database']['type']; $_DBHOST = $CONFIG['database']['host']; $_DBUSER = $CONFIG['database']['user']; $_DBPASS = $CONFIG['database']['password']; $_DBNAME = $CONFIG['database']['database']; require_once('/var/www/lms/lib/LMSDB.php'); require_once('/var/www/lms/lib/Routeros_api.class.php'); $DB = DBInit($_DBTYPE, $_DBHOST, $_DBUSER, $_DBPASS, $_DBNAME); $con = mysql_connect("$_DBHOST","$_DBUSER","$_DBPASS"); $API = new routeros_api(); $API -> debug = false; //tryb debugowania if ($API->connect('ip-urzadzenia', 'login', 'haslo)) { $find = $API->comm('/ip/firewall/nat/print', array( ".proplist" => ".id", "?comment" => "portek" )); //Remove ID encontrado foreach ($find as $value): $API->write('/ip/firewall/nat/remove', false); $API->write('=.id='.$value['.id']); $API->read(); endforeach; mysql_select_db("lms_baroo", $con); $result = mysql_query("select id, protocol, extport, localIP, port, zewIP access FROM ports"); while ($row = mysql_fetch_array($result)) { $API->comm("/ip/firewall/nat/add", array("chain"=>"dstnat", "comment"=>"portek", "action"=>"dst-nat", "to-addresses"=>"$row[localIP]", "to-ports"=>"$row[port]", "protocol"=>"$row[protocol]"")); } } $API->disconnect(); ?> jak widac po tej konfiguracji łączy się z 1 urządzeniem moje pytanie brzmi czy jest możliwość by pobrać z bazy danych mysql liste wszystkich urządzeń z którymi skrypt ma się łączyć i w zależności od ilości urządzeń w bazie dodawał do tych wszystkich te same zapytania ? |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 148 Pomógł: 14 Dołączył: 23.02.2013 Ostrzeżenie: (0%)
|
Pewnie jest taka możliwość. W nowszych wersjach LMS jest możliwość określenia typu urządzenia sieciowego (jest nawet lista modeli microtików). Jak już to zrobisz to wystarczy użyć instrukcji pętli.
|
|
|
|
![]() ![]() |
|
Aktualny czas: 20.12.2025 - 21:43 |