add_record(options)
click to toggle source
def add_record(options)
crud.add_record(options)
logger.debug("Added DHCP reservation for #{options[:ip]}/#{options[:mac]}")
restart_grid.try_restart
end
all_hosts(network_address)
click to toggle source
def all_hosts(network_address)
crud.all_hosts(full_network_address(network_address))
end
all_leases(network_address)
click to toggle source
def all_leases(network_address)
crud.all_leases(full_network_address(network_address))
end
del_record(subnet, record)
click to toggle source
def del_record(subnet, record)
crud.del_record(full_network_address(subnet.network), record)
logger.debug("Removed DHCP reservation for #{record.ip} => #{record}")
restart_grid.try_restart
end
find_network(network_address)
click to toggle source
def find_network(network_address)
network = ::Infoblox::Network.find(connection, 'network~' => network_address, '_max_results' => 1).first
raise "Subnet #{network_address} not found" if network.nil?
network
end
find_record(subnet_address, an_address)
click to toggle source
def find_record(subnet_address, an_address)
crud.find_record(full_network_address(subnet_address), an_address)
end
find_subnet(address)
click to toggle source
def find_subnet(address);::Proxy::DHCP::Subnet.new(address, '255.255.255.0'); end
full_network_address(network_address)
click to toggle source
def full_network_address(network_address)
find_network(network_address).network
end
load_subnet_data(_)
click to toggle source
def load_subnet_data(_); end
load_subnets()
click to toggle source
subnets()
click to toggle source
def subnets
::Infoblox::Network.all(connection).map do |network|
address, prefix_length = network.network.split("/")
netmask = cidr_to_ip_mask(prefix_length.to_i)
managed_subnet?("#{address}/#{netmask}") ? Proxy::DHCP::Subnet.new(address, netmask, {}) : nil
end.compact
end
unused_ip(subnet, _, from_ip_address, to_ip_address)
click to toggle source
def unused_ip(subnet, _, from_ip_address, to_ip_address)
unused_ips.unused_ip(subnet.network, from_ip_address, to_ip_address)
end