dnsmasq

DNSdnsmasq

Lightweight DNS forwarder and cache that also serves DHCP and TFTP.

Provider
default
Kind
DNS
Category
Edge
Properties · 3 set by this component
propertytypevaluesrequiredkind defaultthis component
anycastboolean—nofalse▸ false
cacheSize · component propertyinteger—no150inherited
dhcpServer · component propertyboolean—nofalseinherited
dnssecValidation · component propertyboolean—nofalseinherited
geoRoutingboolean—nofalseinherited
healthCheckedboolean—nofalseinherited
managedboolean—notrue▸ false
redundantProvidersboolean—nofalseinherited
ttlSecondsinteger—no—▸ 0
Rules that apply · 1

Every rule whose selector covers this component's kind or its category. Whether a rule fires depends on the design: its properties, its edges and its groups.

shared-dependency-without-redundancy

The design requires redundant discovery, but this DNS or coordination service, which everything depends on, runs on a single provider or a single replica. Its failure is the whole system's failure.

  • — all of these hold:
  • — the design requirement `availability.discoveryRedundant` is true
  • — any of these hold:
  • — the node's `redundantProviders` is false
  • — the node's `replicated` is false
Use it in a design
nodes:
  - { id: "dnsmasq", component: "dnsmasq" }
Other DNS products · 33
Source
# yaml-language-server: $schema=../../schema/component.schema.json
# dnsmasq: lightweight self-hosted DNS forwarder and cache that also serves DHCP, TFTP and router
# advertisements. Per the dnsmasq man page the cache holds 150 names by default, replies from
# /etc/hosts and DHCP leases carry a TTL of zero, and DNSSEC validation is off unless --dnssec is set.
schemaVersion: "1"
type: "component"
id: "dnsmasq"
kind: "dns"
provider: "default"
docs: "https://thekelleys.org.uk/dnsmasq/docs/dnsmasq-man.html"
defaults:
  managed: false
  anycast: false
  ttlSeconds: 0
properties:
  cacheSize:
    type: "integer"
    default: 150
  dnssecValidation:
    type: "boolean"
    default: false
  dhcpServer:
    type: "boolean"
    default: false

The same page as markdown, for an agent: /catalogue/components/dnsmasq.md