--- sidebar_position: 3 --- # Manage DNS in your network NetBird assigns and automatically distributes the IP addresses for your peers. You don't need to design a network or configure [DHCP](https://en.wikipedia.org/wiki/Dynamic_Host_Configuration_Protocol) as it is automatically done in a single place - the NetBird Management service. Once peers have IPs, they can communicate with one another and establish direct encrypted WireGuard® tunnels. You can use these IPs to access the services running on the connected peers (e.g., SSH). Even though we trust our memory capacity, there is a limit to what we can remember, especially when it comes to IP addresses like this one, 100.128.185.34. Starting [v0.11.0](https://github.com/netbirdio/netbird/releases), NetBird automatically assigns a domain name to each peer in a private `netbird.cloud` space that can be used to access the machines. E.g., `my-server.netbird.cloud`. Besides accessing machines by their domain names, you can configure NetBird to use your private nameservers, control what nameservers a specific [peer group](https://netbird.io/docs/overview/acls#groups) should use, and set up split DNS. :::info Nameservers is available for NetBird [v0.11.0](https://github.com/netbirdio/netbird/releases) or later. ::: ## Concepts ### Local resolver To minimize the number of changes in your system, NetBird will spin up a local DNS resolver. This local resolver will be responsible for queries to the domain names of peers registered in your network and forwarding queries to upstream nameservers you configure in the system. It listens on the peer's IP, and usually, it will use the default port 53, but if it is in use, it will use the 5053 port. :::info Custom port support is not builtin into most operating systems. At the time of release, the supported systems are: - MacOS - Linux with systemd-resolved ::: ### Nameserver Nameserver is an upstream DNS server for name resolution, if a query comes and is not a peer domain name, it will be resolved by one of the upstream servers. You can assign private and public IPs and custom ports. Remember that you might need a network route for private addresses to allow peers to connect to it. ### Match domains Match domains allow you to route queries of names, matching them to specific nameservers. This is useful when you have an internal DNS configuration that only internal servers can resolve. ### All domains option The all domains option defines a default nameserver configuration to resolve all domains that don't have a match domain setting. Because not all operating systems support match domain configuration, we recommend configuring at least one nameserver set with this option enabled per distribution group. You may also consider using the group All for distribution, so you don't have to define multiple sets of nameservers to resolve all domains. :::info A nameserver set may only be configured with either All domains or match domains, you can have both settings in a single configuration as they overlap. ::: ### Distribution groups Distribution defines that peers that belong to groups set in this field will receive the nameserver configuration. :::info When using private nameservers, you may use these groups to link routing peers and clients of the private servers. ::: ## Managing nameserver groups A nameserver group defines up to 2 nameservers to resolve DNS to a set of peers in distribution groups. ### Creating a nameserver group Access the `DNS` tab and click the `Add Nameserver` button to create a new nameserver.
- Make sure to [star us on GitHub](https://github.com/netbirdio/netbird) - Follow us [on Twitter](https://twitter.com/netbird) - Join our [Slack Channel](https://join.slack.com/t/netbirdio/shared_invite/zt-vrahf41g-ik1v7fV8du6t0RwxSrJ96A) - NetBird [latest release](https://github.com/netbirdio/netbird/releases) on GitHub