"") { $routes[$entry['ia-na']] = $entry['ia-pd']; } array_shift($duid_arr); } // echo "add routes\n"; if(count($routes) > 0) { foreach ($routes as $address => $prefix) { echo "/sbin/route change -inet6 {$prefix} {$address}\n"; } } /* get clog from dhcpd */ $dhcpdlogfile = "/var/log/dhcpd.log"; $clog = array(); if(file_exists($dhcpdlogfile)) exec("clog $dhcpdlogfile", $clog, $ret); if($ret > 0) $clog = array(); $expires = array(); foreach($clog as $line) { if(preg_match("/releases[ ]+prefix[ ]+([0-9a-f:]+\/[0-9]+)/i", $line, $expire)) { if(in_array($expire[1], $routes)) continue; $expires[$expire[1]] = $expire[1]; } array_shift($clog); } // echo "remove routes\n"; if(count($expires) > 0) { foreach ($expires as $prefix) { echo "/sbin/route delete -inet6 {$prefix['prefix']}\n"; array_shift($expires); } } ?>