better bgp / ipv6 display, remove some pear stuff

git-svn-id: http://www.observium.org/svn/observer/trunk@236 61d68cd4-352d-0410-923a-c4978735b2b8
This commit is contained in:
Adam Amstrong
2008-04-13 16:27:05 +00:00
parent 88daef7767
commit dce37e3bef
7 changed files with 172 additions and 345 deletions
+35 -11
View File
@@ -6,22 +6,46 @@
include("config.php");
include("includes/functions.php");
$query = "SELECT *,A.id as id FROM ipaddr AS A, interfaces as I, devices as D
WHERE A.interface_id = I.interface_id AND I.device_id = D.device_id AND D.status = '1'";
#$query = "SELECT *,A.id as id FROM ipaddr AS A, interfaces as I, devices as D
# WHERE A.interface_id = I.interface_id AND I.device_id = D.device_id AND D.status = '1'";
$data = mysql_query($query);
while($row = mysql_fetch_array($data)) {
#$data = mysql_query($query);
#while($row = mysql_fetch_array($data)) {
$mask = trim(shell_exec($config['ipcalc'] . " ".$row['addr']."/".$row['cidr']." | grep Netmask: | cut -d \" \" -f 4"));
$response = trim(`snmpget -v2c -Osq -c $row[community] $row[hostname] ipAdEntIfIndex.$row[addr] | cut -d " " -f 2`);
$maskcheck = trim(`snmpget -v2c -Osq -c $row[community] $row[hostname] ipAdEntNetMask.$row[addr] | cut -d " " -f 2`);
if($response == $row['ifIndex'] && $mask == $maskcheck) {
} else {
mysql_query("delete from ipaddr where id = '$row[id]'");
echo("Deleted $row[addr] from $row[hostname]\n");
# $mask = trim(shell_exec($config['ipcalc'] . " ".$row['addr']."/".$row['cidr']." | grep Netmask: | cut -d \" \" -f 4"));
# $response = trim(`snmpget -v2c -Osq -c $row[community] $row[hostname] ipAdEntIfIndex.$row[addr] | cut -d " " -f 2`);
# $maskcheck = trim(`snmpget -v2c -Osq -c $row[community] $row[hostname] ipAdEntNetMask.$row[addr] | cut -d " " -f 2`);
# if($response == $row['ifIndex'] && $mask == $maskcheck) {
# } else {
# mysql_query("delete from ipaddr where id = '$row[id]'");
# echo("Deleted $row[addr] from $row[hostname]\n");
# }
#}
$sql = "SELECT * FROM devices WHERE status = '1'";
$query = mysql_query($sql);
while($device = mysql_fetch_array($query)) {
echo($device['hostname'] . " \n\n");
$oids = shell_exec("snmpwalk -v2c -c ".$device['community']." ".$device['hostname']." ipAddressIfIndex.ipv6 -Osq");
$oids = str_replace("ipAddressIfIndex.ipv6.", "", $oids); $oids = str_replace("\"", "", $oids); $oids = trim($oids);
unset($valid_ips);
foreach(explode("\n", $oids) as $data) {
$data = trim($data);
list($ipv6addr,$ifIndex) = explode(" ", $data);
$valid_ips[] = $ipv6addr;
}
$sql = "SELECT * FROM ip6addr AS A, interfaces AS I, devices as D WHERE A.interface_id = I.interface_id AND I.device_id = '".$device['device_id']."'";
$data = mysql_query($sql);
while($row = mysql_fetch_array($data)) {
echo($row['addr'] . "\n");
unset($valid);
foreach($valid_ips as $valid_ip) {
echo($row['addr'] . " = $valid_ip ? \n");
}
}
}
$query = "SELECT * FROM interfaces AS I, devices as D
WHERE I.device_id = D.device_id AND D.status = '1'";
$data = mysql_query($query);