Skip to content

Commit

Permalink
Merge pull request #3359 from Tristan-Labbe/Tristan-Labbe-VRF-ARP
Browse files Browse the repository at this point in the history
VRF-LITE support ARP
  • Loading branch information
laf committed Apr 29, 2016
2 parents 65aa549 + b4b58a9 commit 9dea0c8
Showing 1 changed file with 15 additions and 3 deletions.
18 changes: 15 additions & 3 deletions includes/discovery/arp-table.inc.php
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,16 @@

echo 'ARP Table : ';

if( key_exists('vrf_lite_cisco', $device) && (count($device['vrf_lite_cisco'])!=0) ){
$vrfs_lite_cisco = $device['vrf_lite_cisco'];
}
else {
$vrfs_lite_cisco = array(array('context_name'=>null));
}

foreach ($vrfs_lite_cisco as $vrf) {
$device['context_name']=$vrf['context_name'];

$ipNetToMedia_data = snmp_walk($device, 'ipNetToMediaPhysAddress', '-Oq', 'IP-MIB');
$ipNetToMedia_data = str_replace('ipNetToMediaPhysAddress.', '', trim($ipNetToMedia_data));
$ipNetToMedia_data = str_replace('IP-MIB::', '', trim($ipNetToMedia_data));
Expand Down Expand Up @@ -48,7 +58,7 @@
log_event("MAC change: $ip : ".mac_clean_to_readable($old_mac).' -> '.mac_clean_to_readable($clean_mac), $device, 'interface', $interface['port_id']);
}

dbUpdate(array('mac_address' => $clean_mac), 'ipv4_mac', 'port_id=? AND ipv4_address=?', array($interface['port_id'], $ip));
dbUpdate(array('mac_address' => $clean_mac, 'context_name' => $device['context_name']), 'ipv4_mac', 'port_id=? AND ipv4_address=?', array($interface['port_id'], $ip));
echo '.';
}
else if (isset($interface['port_id'])) {
Expand All @@ -58,8 +68,8 @@
'port_id' => $interface['port_id'],
'mac_address' => $clean_mac,
'ipv4_address' => $ip,
'context_name' => $device['context_name'],
);

dbInsert($insert_data, 'ipv4_mac');
}//end if
}//end if
Expand All @@ -76,6 +86,8 @@
echo '-';
}
}

echo "\n";
unset($mac);
unset($device['context_name']);
}
unset($vrfs_c);

0 comments on commit 9dea0c8

Please sign in to comment.