DNS-туннель на чистом Rust

Противоядие от
интернет-цензуры

Весь ваш трафик проходит через обычные DNS-запросы. Невидимо для наблюдателей. Один бинарник. Ноль зависимостей.

Как это работает

Ваш трафик шифруется, мультиплексируется и кодируется в обычные DNS-запросы, которые проходят через любую сеть.

Приложение Браузер / curl / любое приложение
SOCKS5 (127.0.0.1:1080)
Клиент Клиент Nooshdaroo
Мультиплексирование smux v2 (мультиплексирование потоков)
Шифрование Noise_NK (аутентифицированное шифрование)
Надёжная доставка KCP (надёжный транспорт)
Несущий канал DNS-запросы (base32 в QNAME)
Рекурсивный DNS-резолвер
Сервер Сервер Nooshdaroo (авторитетный DNS)
TCP-соединение
Назначение Свободный интернет

Создан для враждебных сетей

Каждая функция спроектирована с одной целью: сохранить ваше подключение, когда всё остальное заблокировано.

Шифрование по протоколу Noise

Noise_NK_25519_ChaChaPoly_BLAKE2s. Прямая секретность в каждой сессии. Идентичность сервера проверяется через заранее известный публичный ключ. Никаких сертификатов, никакой PKI.

Имитация DNS-отпечатка Chrome

Маскировочный трафик копирует поведение Chrome: флаг AD=1, EDNS0 1452, тройки запросов A+AAAA+HTTPS и паттерны тайминга, неотличимые от реального браузера.

DNS Flux

Детерминированная ротация доменов по времени распределяет трафик между несколькими туннельными доменами. Постоянная смена целей делает статическую блокировку ненадёжной.

OTA-обновления конфигурации

Новые домены, резолверы и настройки доставляются через зашифрованные DNS TXT-записи. Клиенты адаптируются к изменениям инфраструктуры без обновления приложения.

Совместимость на уровне протокола

Полностью заменяет Go-версию dnstt. Используйте клиент Nooshdaroo с Go-сервером или наоборот. Тот же Noise-хендшейк, то же KCP-кадрирование, та же DNS-кодировка.

Крошечный бинарник

Клиент ~1 МБ, сервер ~2 МБ. Чистый Rust, ноль рантайм-зависимостей. Кроссплатформенный: Linux, macOS, Windows, Android через Termux.

Загрузки

Готовые бинарники для всех основных платформ. Без установщиков, без рантаймов. Просто бинарник.

Быстрый старт

Подключитесь за три команды. Или разверните свой сервер.

1
Скачайте бинарник и конфиг
# Linux x86_64:
curl -LO https://nooshdaroo.net/dist/nooshdaroo-linux-x86_64
curl -LO https://nooshdaroo.net/dist/config.json
chmod +x nooshdaroo-linux-x86_64
2
Подключитесь
./nooshdaroo-linux-x86_64 -c config.json
3
Используйте SOCKS5-прокси
# Туннель работает на 127.0.0.1:1080
curl --proxy socks5h://127.0.0.1:1080 https://icanhazip.com

# Или настройте браузер:
# Firefox: Settings → Network → SOCKS Host: 127.0.0.1, Port: 1080
# Chrome:  chrome --proxy-server="socks5://127.0.0.1:1080"

Разверните свой сервер

# Сгенерируйте ключи:
./nooshdaroo-server --gen-key

# Настройте DNS (у регистратора):
# t.example.com.  NS  ns.example.com.
# ns.example.com. A   <IP-вашего-сервера>

# Запустите сервер:
./nooshdaroo-server --udp 0.0.0.0:53 --privkey <hex> t.example.com socks5

# Подключите клиент:
./nooshdaroo --domain t.example.com --pubkey <pubkey> --resolver 8.8.8.8