
Proxy DNS simples e rápido com funcionalidades não tão simples. Focado em encaminhamento DNS roteado, filtragem e controle parental.
Um proxy DNS que lhe dá controle real sobre a sua rede doméstica.
Passei anos como consultor na "arena" de redes e segurança dos "grandes". A segurança de DNS era/é o meu trabalho diário, mas também um hobby favorito para mexer. Como agora tenho filhos e preciso ser um pai responsável, assumi a tarefa de filtrar a grande internet má para eles. Então construí o sdproxy (Simple DNS Proxy). Ele traz proteções/métodos/precisão de nível empresarial/grandes para o nível da rede doméstica (mais ou menos).
O proxy é escrito em Go e compila para um binário enxuto para routers baratos. NÃO há subscrições na cloud nem mensalidades. Fala todos os sabores de DNS e inclui controlo de admissão adaptativo para se manter estável. É apenas precisão enxuta (mais ou menos), implacável e de engenharia holandesa para a sala de estar. Apenas você, um executável e um ficheiro yaml.
E lembre-se... É sempre o DNS!
Nota: O full_reference_config.yaml neste repositório está sempre mais atualizado do que este README. Em caso de dúvida, consulte lá.
O DNS é a lista telefónica da internet - cada dispositivo na sua rede procura um nome antes de se ligar a qualquer lugar.
O sdproxy fica no meio disso, no seu router, e permite-lhe decidir o que acontece a seguir: colocar em cache, bloquear, encaminhar para um resolver diferente, aplicar modelos avançados de segurança de ML, ou impor limites de tempo por criança. Sem subscrição na cloud, sem mensalidade, sem serviço externo que fica offline.
É escrito em Go, compila para um único binário, e é suficientemente enxuto para correr em routers domésticos baratos (OpenWrt num TP-Link, GL.iNet ou NetGear, pfSense, OPNsense ou apenas uma máquina Linux comum).
Consulte KEY_ADVANTAGES.md para as principais vantagens em relação às alternativas.
UDP/TCP simples (porta 53), DNS-over-TLS encriptado (DoT), DNS-over-HTTPS (DoH), e DNS-over-QUIC (DoQ).
sdproxy analisa nativamente cabeçalhos Alt-Svc e parâmetros SVCB/HTTPS ALPN para atualizar perfeitamente fluxos DoH padrão para ligações HTTP/3 (QUIC) de alto desempenho em tempo real.Protege a sua navegação da inspeção profunda de pacotes do ISP ao encriptar o TLS Server Name Indication (SNI).
_dns.resolver.arpa SVCB/HTTPS) e endpoints HTTPS /.well-known/origin-svcb / /.well-known/ech.HTTPS/SVCB (e fallbacks L7 .well-known), extrai as suas chaves ECH, e protege o handshake TLS de forma completamente autónoma.Um motor de inferência de ML de Regressão Logística nativo, de zero-alocação, corre no caminho crítico. Extrai entropia de Shannon, desvio de vogais/consoantes, padrões de dígitos finais, e cadeias de consoantes para detetar e bloquear instantaneamente Domínios Gerados Algoritmicamente (DGA) usados por botnets, malware, e infraestrutura C2.
eTLD+1) dentro de uma janela temporal configurável para intercetar tunneling DNS slow-and-low e exfiltração de info-stealers.O sdproxy não se limita a encaminhar consultas cegamente; avalia os upstreams dinamicamente.
max_secure_upstreams (predefinição 5) servidores saudáveis num grupo simultaneamente. Inspeciona profundamente os payloads (cadeias CNAME, endpoints IP finais) com suporte para preferências fastest, ordered, e consolidate (conjunto de respostas fundido), e descarta ou bloqueia a resposta se os upstreams discordarem ou devolverem um NULL-IP envenenado.Respondeu a algo recentemente? Sirva-o a partir da cache. O sdproxy utiliza 32 shards de memória com sementes criptográficas com persistência opcional em disco entre reinícios. Se um registo expirar enquanto ainda é popular, o sdproxy aciona um prefetch em segundo plano para que os seus dispositivos nunca notem uma falha de cache. Suporta totalmente o Stale-Serving RFC 8767 e fallbacks de indisponibilidade serve_stale_infinite.
Aponte-o para os seus ficheiros de leases DHCP e /etc/hosts e ele responderá a pesquisas de nomes locais (o seu NAS, a sua impressora, o seu Pi) sem incomodar um resolver upstream ou vazar consultas LAN para upstream. Funciona com dnsmasq, ISC DHCP, Kea, e odhcpd.
Mapeie a identidade de um dispositivo para um grupo de resolvers upstream diferente ou perfil parental.
CC:XX via IPinfo), Nome de cliente, TLS SNI (sni:), Caminhos HTTP DoH (path:), e Portas de Escuta (port:).force-and: true (ex.: Sub-rede E Porta de Escuta).rcode: REFUSED, NXDOMAIN, BLOCK, DROP) diretamente a uma regra de encaminhamento para quarentena instantânea do cliente.Configure um perfil por criança, atribua os seus dispositivos, e configure:
group ou por device). Suporta ALLOW, BLOCK, FREE, LOG, UNLIMITED, e substituições temporárias de janela UNTRIGGER.