echo "<table border=0 cellspacing=0 cellpadding=2 class=devicetable width=100%>"; echo "\n <tr bgcolor='{$list_colour_a}'>\n <th width='7'></th>\n <th width='250'><span style='font-weight: bold;' class=interface>Customer</span></th>\n <th width='150'>Device</th>\n <th width='100'>Interface</th>\n <th width='100'>Speed</th>\n <th width='100'>Circuit</th>\n <th>Notes</th>\n </tr>\n "; $i = 1; $pagetitle[] = "Customers"; foreach (dbFetchRows("SELECT * FROM `ports` WHERE `port_descr_type` = 'cust' GROUP BY `port_descr_descr` ORDER BY `port_descr_descr`") as $customer) { $i++; $customer_name = $customer['port_descr_descr']; if (!is_integer($i / 2)) { $bg_colour = $list_colour_a; } else { $bg_colour = $list_colour_b; } foreach (dbFetchRows("SELECT * FROM `ports` WHERE `port_descr_type` = 'cust' AND `port_descr_descr` = ?", array($customer['port_descr_descr'])) as $port) { $device = device_by_id_cache($port['device_id']); unset($class); $ifname = fixifname($device['ifDescr']); $ifclass = ifclass($port['ifOperStatus'], $port['ifAdminStatus']); if ($device['os'] == "ios") { if ($port['ifTrunk']) { $vlan = "<span class=box-desc><span class=red>" . $port['ifTrunk'] . "</span></span>"; } elseif ($port['ifVlan']) { $vlan = "<span class=box-desc><span class=blue>VLAN " . $port['ifVlan'] . "</span></span>"; } else { $vlan = ""; } } echo "\n <tr bgcolor='{$bg_colour}'>\n <td width='7'></td>\n <td width='250'><span style='font-weight: bold;' class=interface>" . $customer_name . "</span></td>\n <td width='150'>" . generate_device_link($device) . "</td>\n <td width='100'>" . generate_port_link($port, makeshortif($port['ifDescr'])) . "</td>\n <td width='100'>" . $port['port_descr_speed'] . "</td>\n <td width='100'>" . $port['port_descr_circuit'] . "</td>\n <td>" . $port['port_descr_notes'] . "</td>\n </tr>\n "; unset($customer_name); } echo "<tr bgcolor='{$bg_colour}'><td></td><td colspan=6>"; $graph_array['type'] = "customer_bits";
} if (!match_network($addy . "/" . $mask, $interface['ipv4_address'])) { $ignore = 1; } } if (!$ignore) { if (is_integer($row / 2)) { $row_colour = $list_colour_a; } else { $row_colour = $list_colour_b; } $speed = humanspeed($interface['ifSpeed']); $type = humanmedia($interface['ifType']); list($prefix, $length) = explode("/", $interface['ipv4_network']); if ($interface['in_errors'] > 0 || $interface['out_errors'] > 0) { $error_img = generateiflink($interface, "<img src='images/16/chart_curve_error.png' alt='Interface Errors' border=0>", errors); } else { $error_img = ""; } if (interfacepermitted($interface['interface_id'])) { echo '<tr bgcolor="' . $row_colour . '"> <td class="list-bold">' . generatedevicelink($interface) . '</td> <td class="list-bold">' . generateiflink($interface, makeshortif(fixifname($interface['ifDescr']))) . ' ' . $error_img . '</td> <td>' . $interface['ipv4_address'] . '/' . $length . '</td> <td>' . $interface['ifAlias'] . "</td>\n </tr>\n"; $row++; } } unset($ignore); } echo "</table>";
if (!$ignore) { if ($entry['ifInErrors'] > 0 || $entry['ifOutErrors'] > 0) { $error_img = generate_port_link($entry, "<img src='images/16/chart_curve_error.png' alt='Interface Errors' border=0>", port_errors); } else { $error_img = ''; } $arp_host = dbFetchRow('SELECT * FROM ipv4_addresses AS A, ports AS I, devices AS D WHERE A.ipv4_address = ? AND I.port_id = A.port_id AND D.device_id = I.device_id', array($entry['ipv4_address'])); if ($arp_host) { $arp_name = generate_device_link($arp_host); } else { unset($arp_name); } if ($arp_host) { $arp_if = generate_port_link($arp_host); } else { unset($arp_if); } if ($arp_host['device_id'] == $entry['device_id']) { $arp_name = 'Localhost'; } if ($arp_host['port_id'] == $entry['port_id']) { $arp_if = 'Local port'; } $response[] = array('mac_address' => formatMac($entry['mac_address']), 'ipv4_address' => $entry['ipv4_address'], 'hostname' => generate_device_link($entry), 'interface' => generate_port_link($entry, makeshortif(fixifname(ifLabel($entry['label'])))) . ' ' . $error_img, 'remote_device' => $arp_name, 'remote_interface' => $arp_if); } //end if unset($ignore); } //end foreach $output = array('current' => $current, 'rowCount' => $rowCount, 'rows' => $response, 'total' => $total); echo _json_encode($output);
unset($sub); $hostname = $ip['hostname']; $real_hostname = $hostname; $hostname = str_replace(".vostron.net", "", $hostname); list($loc, $host) = explode("-", $hostname); if ($host) { $hostname = "{$host}.{$loc}.v4.vostron.net"; } else { $host = $loc; unset($loc); $hostname = "{$host}.v4.vostron.net"; } $interface = $ip['ifDescr']; $address = $ip['addr']; $cidr = $ip['cidr']; $interface = strtolower(makeshortif(fixifname($interface))); $interface = str_replace("/", "-", $interface); list($interface, $sub) = explode(".", $interface); if ($sub) { $sub = str_replace(" ", "", $sub); $sub = str_replace("aal5", "", $sub); $interface = "{$sub}.{$interface}"; } $hostip = trim(gethostbyname($real_hostname)); if (strstr($hostname, ".vostron.net")) { list($first, $second, $third, $fourth) = explode(".", $address); $revzone = "{$third}.{$second}.{$first}.in-addr.arpa"; $reverse = "{$fourth}.{$revzone}"; $dnsname = "{$interface}.{$hostname}"; $rev_sql = "SELECT `domain_id` FROM `domains` WHERE domain = '" . $revzone . "'"; $rev_domain_id = @mysql_result(mysql_query($rev_sql, $dnsdblink), 0);
$where .= " AND I.ifAlias LIKE '%" . $_POST['ifAlias'] . "%'"; } if ($_POST['deleted'] || $_GET['type'] == "deleted") { $where .= " AND I.deleted = '1'"; } $sql = "SELECT * FROM `ports` AS I, `devices` AS D WHERE I.device_id = D.device_id {$where} ORDER BY D.hostname, I.ifIndex"; $query = mysql_query($sql); echo "<tr class=tablehead><td></td><th>Device</a></th><th>Interface</th><th>Speed</th><th>Media</th><th>Description</th></tr>"; $row = 1; while ($interface = mysql_fetch_array($query)) { if (is_integer($row / 2)) { $row_colour = $list_colour_a; } else { $row_colour = $list_colour_b; } $speed = humanspeed($interface['ifSpeed']); $type = humanmedia($interface['ifType']); if ($interface['in_errors'] > 0 || $interface['out_errors'] > 0) { $error_img = generateiflink($interface, "<img src='images/16/chart_curve_error.png' alt='Interface Errors' border=0>", errors); } else { $error_img = ""; } if (interfacepermitted($interface['interface_id'])) { echo "<tr bgcolor={$row_colour}>\n <td width=5></td>\n <td width=200 class=list-bold>" . generatedevicelink($interface) . "</td>\n <td width=150 class=list-bold>" . generateiflink($interface, makeshortif(fixifname($interface['ifDescr']))) . " {$error_img}</td>\n <td width=110 >{$speed}</td>\n <td width=200>{$type}</td>\n <td>" . $interface['ifAlias'] . "</td>\n </tr>\n"; $row++; } } echo "</table>"; ?>
if (!$mask) { $mask = "128"; } if (!Net_IPv6::isInNetmask($interface['ipv6_address'], $addy, $mask)) { $ignore = 1; } else { $ignore = 0; } } if (!$ignore) { if (is_integer($row / 2)) { $row_colour = $list_colour_a; } else { $row_colour = $list_colour_b; } $speed = humanspeed($interface['ifSpeed']); $type = humanmedia($interface['ifType']); list($prefix, $length) = explode("/", $interface['ipv6_network']); if ($interface['in_errors'] > 0 || $interface['out_errors'] > 0) { $error_img = generateiflink($interface, "<img src='images/16/chart_curve_error.png' alt='Interface Errors' border=0>", errors); } else { $error_img = ""; } if (interfacepermitted($interface['interface_id'])) { echo "<tr bgcolor={$row_colour}><td></td>\n <td class=list-bold>" . generatedevicelink($interface) . "</td>\n <td class=list-bold>" . generateiflink($interface, makeshortif(fixifname($interface['ifDescr']))) . " {$error_img}</td>\n <td>" . Net_IPv6::compress($interface['ipv6_address']) . "/" . $length . "</td>\n <td>" . $interface['ifAlias'] . "</td>\n </tr>\n"; $row++; } } unset($ignore); } echo "</table>";
$error_img = generate_port_link($entry, "<img src='images/16/chart_curve_error.png' alt='Interface Errors' border=0>", errors); } else { $error_img = ""; } $arp_host = dbFetchRow("SELECT * FROM ipv4_addresses AS A, ports AS I, devices AS D WHERE A.ipv4_address = ? AND I.port_id = A.port_id AND D.device_id = I.device_id", array($entry['ipv4_address'])); if ($arp_host) { $arp_name = generate_device_link($arp_host); } else { unset($arp_name); } if ($arp_host) { $arp_if = generate_port_link($arp_host); } else { unset($arp_if); } if ($arp_host['device_id'] == $entry['device_id']) { $arp_name = "Localhost"; } if ($arp_host['port_id'] == $entry['port_id']) { $arp_if = "Local port"; } echo '<tr> <td width="160">' . formatMac($entry['mac_address']) . '</td> <td width="200" class="entity">' . generate_device_link($entry) . '</td> <td class="entity">' . generate_port_link($entry, makeshortif(fixifname($entry['ifDescr']))) . ' ' . $error_img . '</td> <td class="entity">VLAN' . $entry['vlan_vlan'] . '</td> <td class="entity">' . $entry['vlan_name'] . '</td> </tr>'; } } echo "</table>";
if (!$mask) { $mask = "128"; } if (!Net_IPv6::isInNetmask($interface['ipv6_address'], $addy, $mask)) { $ignore = 1; } else { $ignore = 0; } } if (!$ignore) { $speed = humanspeed($interface['ifSpeed']); $type = humanmedia($interface['ifType']); list($prefix, $length) = explode("/", $interface['ipv6_network']); if ($interface['in_errors'] > 0 || $interface['out_errors'] > 0) { $error_img = generate_port_link($interface, "<img src='images/16/chart_curve_error.png' alt='Interface Errors' border=0>", errors); } else { $error_img = ""; } if (port_permitted($interface['port_id'])) { $interface = ifLabel($interface, $interface); echo '<tr> <td>' . generate_device_link($interface) . '</td> <td>' . generate_port_link($interface, makeshortif(fixifname($interface['ifDescr']))) . ' ' . $error_img . '</td> <td>' . Net_IPv6::compress($interface['ipv6_address']) . '/' . $length . '</td> <td>' . $interface['ifAlias'] . "</td>\n </tr>\n"; } } unset($ignore); } echo "</table>"; echo '</div>';