class Razor

Defined in:

razor.cr

Constant Summary

NAME = "Razor"
VERSION = {{ (read_file("shard.yml")).lines[1] }}

Constructors

Instance Method Summary

Constructor Detail

def self.new(config : String = "/etc/pdns-razor/razor.json", context : String = "production") #

[View source]

Instance Method Detail

def data_from_redis(qtype, name, src, options) #

[View source]
def ipv4_get(range, skip_list, seed = UInt8::MAX) #

[View source]
def ipv6_get(range, skip_list, seed = UInt16::MAX) #

Get the random IPv6 address from the given range, and exclude the ones that are listed as skip-list (= blackholed). This mechanism works only with /48 ranges and checks are based on /64 ranges.


[View source]
def mainLoop #

[View source]
def mandatory_dns_options(name) #

[View source]
def parse_arguments #

[View source]
def run! #

[View source]