It is recommended to use BIND as DNS engine

ISC BIND is the de facto standard of DNS at present. Most of the authoritative parsing services will use ISC BIND. ISC BIND also supports the powerful features of recursive parsing, domain name transponder, DNSESC, etc. Using ISC BIND as the built-in DNS server will make DNS parsing more convenient (such as setting up authoritative parsing settings of local area network), and at the same time. There will be a large number of BIND enthusiasts who do not need to set up apt, GCC and other environment configuration binds to manually configure and integrate after installation. If the official support, please tell me, thank you!
The official address of ISC BIND is

Of course ISC BIND supports the use of back-end services, such as LDAP, but you need to install these manually during compilation!

Hi @jack9603301, and thanks for the interest in the VyOS project.

First off this is not an official response from the VyOS project, but my response on you feature request.

I see you have many pros on using bind as a DNS server. But as i hope you know, VyOS is not an genral purpose DNS Server. It it also not meant to be used as an authoritative dns server. The sole purpose of having a dns server in VyOS is to provide a simple to configure recursive dns server for local clients without a bunch of advanced services. The recursive dns server is also meant to be fully configured from the VyOS user interface and you are not supposed to touch the underlying configuration files to make it work.

The same goes for other services eg. DHCP Server. VyOS provides a simple DHCP server, but if you need advanced features you should run these services on another system meant to provide these kind of services.

Another aspect you mention is There will be a large number of BIND enthusiasts who do not need to set up apt, GCC and other environment configuration binds to manually configure and integrate after installation.
This is also not meant to be done on the VyOS device, and if you think you need GCC on the VyOS device you are probably doing it wrong from the first place. VyOS is a customised version of Debian jessie built using normal Debian packages and our custom packages. Everything running inside VyOS is also built using a normal Debian jessie as a dev. environment and packaged as normal Debian packages.

The VyOS project also wouldn’t ether advise you to install custom packages via apt, but instead these packages should be included into your own custom VyOS image.

if you really want this, it is possible to make it work. Try to read up on developing for VyOS and how to create debian packages. then build your own deb package of bind with the features you need and install it via a custom ISO you build yourself.

Finally, for now PowerDNS-recursor is the recursive dns server chosen for the VyOS project. It is not the largest one with the fattest features, but it have what wee need. and i do not se that this will change in the near future. Also. PowerDNS have been there since the 90’s, so its not a immature software suite

My advise to you if you need more advanced features is to run these on their own system and not on top of the VyOS platform. VyOS is not meant to be used as a general purpose system.


@runar ,Thank you for your answer, because my home environment uses vyos, limited equipment (only one server, and probably not for long) and vyos router (can be open for a long time), plus my industrial control equipment (router) on the configuration of memory cards is relatively large, so I hope to make more effective use of these limitations. I want to use the router function of vyos to run the additional application of bind and integrate a WiFi USB network card driver. To be honest, I can also operate directly on the vyos system (official image), but I still hope to try to integrate myself in the way officially recommended. Is it possible to do that? For example, how to integrate additional driver processing program so that USB WiFi network card can run in AP mode?


For the WiFi part i cant answer because i’ve never used wireless on vyos myself.
i do not know what hardware you are using as the vyos-router but to do this what i will say is the correct way, you will need to have some form of virtualization software running on your device. vyos could then be one of the parts running in co-existense with a linux instance running eg. bind and the other things you need.

If that is not possible to accomplish it is infact possible to install eg. bind on vyos as a custom package during iso creation, and if you will be fine with the default Debian jessie package you only need to add the --custom_package option on your ./configure command. that will install the package and dependencies under the build process.
if you need ti add custom .deb packages, create a directory called packages in the root of you vyos-build repo and put the deb file there, it when will be auto-installed as well.

for your wifi driver, if you have a .deb containing the firmware etc. you could add it that way to.

@runar, I run vyos on a separate industrial computer. I plan to rebuild vyos to see if I can build bind and driver in the ISO of vyos. If not, I plan to set apt source manually to complete more complex configuration (because they are all Linux kernels) and I have a way to get root privileges of the system. Although this is not the best way.