recursor

package module
v0.1.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 5, 2023 License: Apache-2.0 Imports: 19 Imported by: 0

README

recursor - coredns simple ip addresses resolver

recursor - determines IP addresses:

  • using defined static IP addresses
  • or resolves given hostname using an external resolver

Config Syntax

Corefile
recursor {
    
    [external-json|external-yaml config-file-path]
    [verbose 0..2]
    
    zone example.svc

    resolver dns1 {
        urls udp://10.0.0.1:53 udp://10.0.0.2:53
        [timeout_ms 10]
    }
 
    alias alias1 {
        [ips 10.1.1.1 10.1.1.2]
        [hosts www.example.org www.example.com]
        [ttl 5]
        [resolver_name dns1]
    }

    alias alias2 {
        [hosts www.example.org www.example.com]
        # system default resolver 
    }
}
External JSON
{
  "verbose": 0,
  "zone": "example.svc",
  "resolvers": {
    "dns1": {
      "urls": ["udp://10.0.0.1:53","udp://10.0.0.2:53"],
      "timeout_ms": 10
    }
  },
  "aliases": {
    "alias1": {
      "ips": ["10.1.1.1","10.1.1.2"],
      "hosts": ["www.example.org","www.example.com"],
      "ttl": 5,
      "resolver_name": "dns1"
    },
    "alias2": {
      "hosts": ["www.example.org","www.example.com"],
      "resolver_name": "default"
    }
  }
}
External YAML
---
verbose: 0
zone: example.svc
resolvers:
  dns1:
    urls:
      - udp://10.0.0.1:53
      - udp://10.0.0.2:53
    timeout_ms: 10
aliases:
  alias1:
    ips:
      - 10.1.1.1
      - 10.1.1.2
    hosts:
      - www.example.org
      - www.example.com
    ttl: 5
    resolver_name: dns1
  alias2:
    hosts:
      - www.example.org
      - www.example.com
    resolver_name: default

Try it

Look at some examples.

Helpful commands:

dig alias1.example.svc @127.0.0.1 -p 1053
nslookup -port=1053 -debug -type=A alias2.example.svc 127.0.0.1

TODO

  • opentracing

Documentation

The Go Gopher

There is no documentation for this package.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL