[package] name = "zeronsd" version = "0.5.0" authors = ["Erik Hollensbe ", "Adam Ierymenko "] description = "Unicast DNS resolver for ZeroTier networks" homepage = "https://github.com/zerotier/zeronsd" repository = "https://github.com/zerotier/zeronsd" documentation = "https://github.com/zerotier/zeronsd/blob/main/README.md" license = "BSD-3-Clause" readme = "README.md" keywords = ["dns", "zerotier"] edition = "2021" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [dependencies] regex = ">=0" anyhow = ">=0" clap = { version = "^3", features = ["derive"] } ipnetwork = ">=0" trust-dns-resolver = { version = "^0.21.0", features = ["tokio-runtime", "dns-over-openssl"] } trust-dns-server = { version = "^0.21.0", features = ["trust-dns-resolver", "dns-over-openssl"] } tokio = { version = "1", features = ["full"] } serde = ">=0" serde_json = ">=0" serde_yaml = ">=0" zerotier-central-api = "=1.1.0" zerotier-one-api = "=1.1.0" toml = ">=0" tinytemplate = ">=0" rand = ">=0" tracing = "0.1" tracing-log = "0.1" tracing-subscriber = "0.2" hex = ">=0" openssl = ">=0" async-trait = ">=0" lazy_static = ">=0" reqwest = ">=0" [features] vendored-openssl = [ "openssl/vendored" ] [dev-dependencies] ctor = ">=0" [package.metadata.deb] copyright = "ZeroTier, Inc" extended-description = """ ZeroNS provides names that are a part of ZeroTier Central's (https://my.zerotier.com) configured networks; once provided a network it: - Listens on the local interface joined to that network -- you will want to start one ZeroNS per ZeroTier network. - Provides general DNS by forwarding all queries to `/etc/resolv.conf` resolvers that do not match the TLD, similar to `dnsmasq`. - Tells Central to point all clients that have the "Manage DNS" settings turned **on** to resolve to it. - Finally, sets a provided TLD (`.home.arpa` is the default), as well as configuring `A` (IPv4) and `AAAA` (IPv6) records for: - Member IDs: `zt-.` will resolve to the IPv4/v6 addresses for them. - Names: _if_ the names are compatible with DNS names, they will be converted as such: to `.`. - Please note that **collisions are possible** and that it's _up to the admin to prevent them_. """ [package.metadata.generate-rpm] assets = [ { source = "target/release/zeronsd", dest = "/usr/bin/zeronsd", mode = "755" } ] requires = { openssl-libs = ">= 1.1.1g" } [target.'cfg(windows)'.dependencies] openssl = { version = ">=0", features = [ "vendored" ] }