i realized a PHP script to do a remote scan using PHP Pear API for RouterOS and I want to share it with you.
Code: Select all
<?php
set_time_limit(0);
$userIp = '0.0.0.0'; //ip here
$username = 'username'; //password here
$password = 'password'; //username here
$wlan = 0; //wlan id here
$scan_duration = 6; //Duration of scan in seconds here
$connection_timeout = 30; //API connection timeout here (set it bigger than scan_duration)
$client = new RouterOS\Client($userIp, $username, $password, null, false, $connection_timeout, Transmitter\NetworkStream::CRYPTO_TLS);
$setRequest = new RouterOS\Request('/interface/wireless/scan');
$responses = $client->sendSync($setRequest
->setArgument('duration', 6)
->setArgument('number', $wlan)
);
$networks = array();
foreach ($responses as $response) {
if ($response->getType() === RouterOS\Response::TYPE_DATA) {
$mac = $response->getArgument('address');
$ssid = $response->getArgument('ssid');
$freq = $response->getArgument('freq');
$sig = $response->getArgument('sig');
$snr = $response->getArgument('snr');
$radio_name = $response->getArgument('radio-name');
$networks[$mac] = array(
'ssid' => $ssid,
'freq' => $freq,
'sig' => $sig,
'snr' => $snr,
'radio_name' => $radio_name
);
}
}
print_r($networks);
?>