Skip to content
This repository was archived by the owner on Aug 18, 2023. It is now read-only.

Latest commit

 

History

History
28 lines (21 loc) · 1.33 KB

File metadata and controls

28 lines (21 loc) · 1.33 KB

A toy DNS resolver

Implemented as an educational task for the Computer Networks course.

Inspired by Julia Evans' blog post.

Problem

Безопасный DNS резолвер, который может фильтровать (выдавать не их реальный, а ранее заданный IP) сайты, заданные из конфигурационного файла.

DNS-резолвер должен уметь кешировать ответы.

Проверка будет проходить путем запуска кода на Linux машине и настройкой хоста на использование этого резолвера. Если все сайты работают — значит задача принимается.

Можно использовать библиотеки для парсинга протокола. Запрещено использовать библиотеки для резолвинга.

Usage

git clone https://github.com/studokim/resolver.git
cd resolver
go build
./resolver <example.com>
#  or, to start the server,
./resolver --listen <port>

You can also fill the filter.yml with pre-defined domain: ip pairs. Such a domain will always be resolved to the specified ip.