Я так понимаю вопрос о том чтобы настроить так как судя по формулировке вопроса написать свой у вас ещё долго не получится.
А чтобы настроить нужно знать что должен делать ваш DNS:
1) кешировать запросы из вашей сети к DNS провадера, яндекса или гугла
2) самостоятельно "ресолвить" информацию в корневых серверах без участия DNS серверов провайдера, яндекса и даже гугла
3) обслуживать какие-то домены для всех пользователей интернета? (для бесперебойной работы понадобится минимум два сервера в разных подсетях у разных хостеров)
BIND умеет решать все три задачи. Многие другие серверы тоже.