DNSveil开源项目使用与部署教程
1. 项目介绍
DNSveil(原Secure DNS Client)是一个安全的DNS客户端,支持DNSCrypt、匿名DNSCrypt、DoH(DNS Over HTTPS)、DoT(DNS Over TLS)以及普通的UDP和TCP DNS查询。该项目旨在提供一种方式来隐藏用户在ISP面前的SNI和网站地址,从而绕过基于SNI/DNS的网站封锁。DNSveil还包括一个服务器端实现,支持DoH和普通DNS查询,并能找到并使用最快的安全DNS服务器。
2. 项目快速启动
以下是快速启动DNSveil的步骤:
首先,确保安装了必要的.NET运行时环境。对于x64架构,安装.NET Desktop Runtime 6.0.35
和.NET Core Runtime 6.0.35
;对于x86架构,安装相应的32位版本。
# 对于x64
安装 .NET Desktop Runtime x64 v6.0.35
安装 .NET Core Runtime x64 v6.0.35
# 对于x86
安装 .NET Desktop Runtime x86 v6.0.35
安装 .NET Core Runtime x86 v6.0.35
然后,克隆DNSveil仓库到本地,并进入项目目录。
git clone https://github.com/msasanmh/DNSveil.git
cd DNSveil
编译项目,可以使用Visual Studio或通过命令行编译。
# 使用Visual Studio打开SecureDNSClient.sln文件并编译
# 或者通过命令行编译
dotnet build SecureDNSClient.sln
编译成功后,运行DNSveil程序。
dotnet run SecureDNSClient.exe
3. 应用案例和最佳实践
3.1 使用内置服务器或自定义服务器
DNSveil允许用户连接到内置服务器或添加自定义服务器。例如,添加一个DNSCrypt服务器:
sdns://AQcAAAAAAAAAETg5LjM4LjEzMS4zODo0MzQzIKWHS9r0FoKY--wcnJl1Ar5aOUb91xsufvPUjid3rNRaHzIuZG5zY3J5cHQtY2VydC5hbXMtZG5zY3J5cHQtbmw
3.2 绕过SNI/DNS封锁
通过设置规则,可以绕过基于SNI/DNS的封锁,例如:
*.googlevideo.com|sni:google.com;
3.3 创建本地DoH服务器
可以创建一个本地的DoH服务器,以便于在本地网络中使用。
4. 典型生态项目
DNSveil作为DNS解决方案的一部分,可以与其他开源项目配合使用,例如:
- Unbound:一个 validating, recursive, and caching DNS resolver。
- [Stubby](https://getdnsapi.net stybel/stubby/):一个简单的DoH客户端。
这些项目可以与DNSveil协同工作,提供更全面的网络解决方案。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考