/** * Filtes IPv6 address. * * 2001:07f8:0018:0002:0000:0000:0000:0147 filters to 2001:7f8:18:2::147 * 2A01:7F8:18:0:0:0:0:0147 filters to 2a01:7f8:18::147 * * @param string $value String to parse size in bytes * @return string */ public function filter($value) { try { $value = OSS_Net_IPv6::formatAddress($value, $this->_type); } catch (Exception $e) { } return $value; }
/** * Action to generate a route collector configuration */ public function genArpaEntriesAction() { $this->view->vlan = $vlan = $this->cliResolveVlanId(); $this->view->proto = $proto = $this->cliResolveProtocol(true); $target = $this->cliResolveTarget(false); $addresses = $this->getD2R('\\Entities\\Vlan')->getArpaDetails($vlan, $proto, false); foreach ($addresses as $i => $a) { if ($proto == 4) { $addresses[$i]['arpa'] = OSS_Net_IPv4::ipv4ToARPA($a['address']); } else { $addresses[$i]['arpa'] = OSS_Net_IPv6::ipv6ToARPA($a['address']); } } $this->view->addresses = $addresses; echo $this->view->render("vlan-cli/arpa/{$target}/index.cfg"); }