Sha256: 5659e77c89ef7b79768ceea87cf3c3dd4d05c070f0d4feabb34fb4216f2874be
Contents?: true
Size: 637 Bytes
Versions: 39
Compression:
Stored size: 637 Bytes
Contents
#!/usr/bin/env ruby require 'rubydns' require 'psych' db_file = ARGV[0] port = ARGV[1] || 5300 db = if File.file? db_file $stderr.puts 'Found dns db' Psych.load_file(db_file) else $stderr.puts 'Found no dns db. Use default db.' { /www\.example\.org/ => '1.1.1.1' } end interfaces = [ [:udp, "127.0.0.1", port], [:tcp, "127.0.0.1", port] ] # Start the RubyDNS server RubyDNS::run_server(listen: interfaces) do db.each do |matcher, result| match(matcher, Resolv::DNS::Resource::IN::A) do |transaction| transaction.respond!(result) end end end
Version data entries
39 entries across 39 versions & 3 rubygems