0) { $len = is_array($_POST['poe_on']) ? count($_POST['poe_on']) : 0; for ($i = 0; $i < $len; $i ++) { $port_index = intval($_POST['poe_on'][$i]); LOG_DEBUG($db_link, "Device id: $id enable poe at port snmp index $port_index"); set_port_poe_state($switch['vendor_id'], $port_index, $switch['ip'], $switch['rw_community'], $switch['snmp_version'], 1); } header("Location: " . $_SERVER["REQUEST_URI"]); } if (isset($_POST['poe_off']) and $switch['snmp_version']>0) { $len = is_array($_POST['poe_off']) ? count($_POST['poe_off']) : 0; for ($i = 0; $i < $len; $i ++) { $port_index = intval($_POST['poe_off'][$i]); LOG_DEBUG($db_link, "Device id: $id disable poe at port snmp index $port_index"); set_port_poe_state($switch['vendor_id'], $port_index, $switch['ip'], $switch['rw_community'], $switch['snmp_version'], 0); } header("Location: " . $_SERVER["REQUEST_URI"]); } if (isset($_POST['port_on']) and $switch['snmp_version']>0) { $len = is_array($_POST['port_on']) ? count($_POST['port_on']) : 0; for ($i = 0; $i < $len; $i ++) { $port_index = intval($_POST['port_on'][$i]); LOG_DEBUG($db_link, "Device id: $id enable port with snmp index $port_index"); set_port_state($switch['vendor_id'], $port_index, $switch['ip'], $switch['rw_community'], $switch['snmp_version'], 1); } header("Location: " . $_SERVER["REQUEST_URI"]); } if (isset($_POST['port_off']) and $switch['snmp_version']>0) { $len = is_array($_POST['port_off']) ? count($_POST['port_off']) : 0; for ($i = 0; $i < $len; $i ++) { $port_index = intval($_POST['port_off'][$i]); LOG_DEBUG($db_link, "Device id: $id disable port with snmp index $port_index"); set_port_state($switch['vendor_id'], $port_index, $switch['ip'], $switch['rw_community'], $switch['snmp_version'], 0); } header("Location: " . $_SERVER["REQUEST_URI"]); } unset($_POST); require_once ($_SERVER['DOCUMENT_ROOT']."/inc/header.php"); print_editdevice_submenu($page_url,$id); ?>
\n"; print "Состояние портов ".$switch['device_name']." - ".$switch['ip']."
\n"; if ($switch['snmp_version']>0) { $snmp_ok = check_snmp_access($switch['ip'], $switch['community'], $switch['snmp_version']); if ($snmp_ok) { global $cisco_modules; if ($switch['snmp_version'] == 2) { $modules_oids = snmp2_real_walk($switch['ip'], $switch['community'], $cisco_modules); } if ($switch['snmp_version'] == 1) { $modules_oids = snmprealwalk($switch['ip'], $switch['community'], $cisco_modules); } } } else { $snmp_ok = 0; } print "\n"; print "\n"; print "\n"; print "\n"; print "\n"; print "\n"; print "\n"; print "\n"; print "\n"; print "\n"; print "\n"; print "\n"; print "\n"; print "\n"; print "\n"; print "\n"; print "\n"; print "\n"; print "\n"; print "\n"; $sSQL = "SELECT * FROM device_ports WHERE device_ports.device_id=$id ORDER BY port"; $ports=get_records_sql($db_link,$sSQL); foreach ($ports as $row) { print "\n"; $cl = "down"; $new_info = NULL; //fix empty port names if (!isset($row['port_name'])) { $row['port_name']=$row['port']; $new_info['port_name']=$row['port']; } if (isset($switch['ip']) and ($switch['ip'] != '') and $snmp_ok) { $port_state_detail = get_port_state_detail($row['snmp_index'], $switch['ip'], $switch['community'], $switch['snmp_version'], $switch['fdb_snmp_index']); list ($poper, $padmin, $pspeed, $perrors) = explode(';', $port_state_detail); if (preg_match('/up/i', $poper)) { $cl = "up"; } if (preg_match('/down/i', $poper)) { if (preg_match('/down/i', $padmin)) { $cl = "shutdown"; } else { $cl = "down"; } } } print "\n"; print "\n"; print "\n"; print "\n"; print "\n"; print "\n"; print "\n"; print "\n"; print "\n"; $poe_info="POE:None"; $vlan = $row['vlan']; $ifname= $row['ifName']; if ($snmp_ok) { $vlan = get_port_vlan($row['port'], $row['snmp_index'], $switch['ip'], $switch['community'], $switch['snmp_version'], $switch['fdb_snmp_index']); $ifname = get_snmp_ifname($switch['ip'], $switch['community'], $switch['snmp_version'], $row['snmp_index']); $sfp_status = get_sfp_status($switch['vendor_id'], $row['snmp_index'], $switch['ip'], $switch['community'], $switch['snmp_version'], $modules_oids); $poe_status = get_port_poe_state($switch['vendor_id'], $row['snmp_index'], $switch['ip'], $switch['community'], $switch['snmp_version']); if (isset($poe_status)) { if ($poe_status == 1) { $port_poe_detail = get_port_poe_detail($switch['vendor_id'], $row['snmp_index'], $switch['ip'], $switch['community'], $switch['snmp_version']); $poe_info="POE:On " . $port_poe_detail; } if ($poe_status == 2) { $poe_info="POE:Off"; } } if (!isset($vlan)) { $vlan = $row['vlan']; } else { if ($row['vlan']!==$vlan) { $new_info['vlan']=$vlan; } } if (!isset($row['ifName']) or $row['ifName'] !== $ifname) { $new_info['ifName']=$ifname; } } //fix port information if (!empty($new_info)) { update_record($db_link, "device_ports", "id=".$row['id'], $new_info); } $ifname=compact_port_name($ifname); global $torrus_url; $f_cacti_url = get_cacti_graph($switch['ip'], $row['snmp_index']); if (! isset($torrus_url) and (! isset($f_cacti_url))) { $snmp_url=$ifname; } else { if (isset($f_cacti_url)) { $snmp_url = "" . $ifname . ""; } if (isset($torrus_url)) { $normed_ifname = str_replace("/", "_", $ifname); $normed_ifname = str_replace(".", "_", $normed_ifname); $normed_ifname = trim(str_replace(" ", "_", $normed_ifname)); $t_url = str_replace("HOST_IP", $switch['ip'], $torrus_url); $t_url = str_replace("IF_NAME", $normed_ifname, $t_url); $snmp_url = "" . $ifname . ""; } } print "\n"; print "\n"; $speed = "0"; $cl_speed = $cl; if ($pspeed == 0) { $speed = ""; } if ($pspeed == 10000000) { $speed = "10M"; $cl_speed = "speed10M"; } if ($pspeed == 100000000) { $speed = "100M"; $cl_speed = "speed100M"; } if ($pspeed == 1000000000) { $speed = "1G"; $cl_speed = "speed1G"; } if ($pspeed == 10000000000) { $speed = "10G"; $cl_speed = "speed10G"; } if ($pspeed == 4294967295) { $speed = "10G"; $cl_speed = "speed10G"; } if ($pspeed == 10) { $speed = "10G"; $cl_speed = "speed10G"; } print "\n"; $cl_error = $cl; if ($perrors > 0) { $cl_error = "crc"; } print "\n"; print "\n"; print "\n"; if (isset($poe_status) and ! $row['skip'] and ! $switch['is_router']) { print "\n"; } else { print "\n"; } if (isset($padmin) and ! $row['uplink'] and ! $row['skip'] and ! $switch['is_router']) { print "\n"; } print ""; } print "\n"; print "\n"; print "\n"; print "\n"; print "
idNПортsnmpЮзер|DeviceКомментарийUplinkNagiosSkipVlanIfNameSpeedErrorsMac countAdditionalPOE ControlPort Control
" . $row['port'] . "" . $row['port_name'] . "" . $row['snmp_index'] . ""; if (isset($row['target_port_id']) and $row['target_port_id'] > 0) { print_device_port($db_link, $row['target_port_id']); } else { print_auth_port($db_link, $row['id']); } print "" . $row['comment'] . "" . get_qa($row['uplink']) . "" . get_qa($row['nagios']) . "" . get_qa($row['skip']) . "" . $vlan . "" . $snmp_url . "" . $speed . "" . $perrors . "" . $sfp_status. " ". $poe_info.""; if ($switch['vendor_id'] != 9) { if ($poe_status == 2) { print ""; } if ($poe_status == 1) { print ""; } } else { print "Not supported"; } print "Not supported"; if ($switch['vendor_id'] != 9) { if (preg_match('/down/i', $padmin)) { print ""; } if (preg_match('/up/i', $padmin)) { print ""; } } else { print "Not supported"; } print "
snmp start  
\n"; print "\n"; print "\n"; print "\n"; print "
Port status
Oper downOper upAdmin shutdown
\n"; print "\n"; print "\n"; print "\n"; print "
Port speed
10M100M1G10G
\n"; print "
"; require_once ($_SERVER['DOCUMENT_ROOT']."/inc/footer.small.php"); ?>