dns2tcp项目使用教程
dns2tcp 项目地址: https://gitcode.com/gh_mirrors/dn/dns2tcp
1. 项目目录结构及介绍
dns2tcp
项目是一个将TCP连接通过DNS进行中继的工具。以下是项目的目录结构:
alex-sector/dns2tcp/
├── client/
│ ├── common/
│ └── man/
├── common/
├── man/
├── server/
│ ├── AUTHORSAUTHORS
│ ├── ChangeLog
│ ├── INSTALL
│ ├── LICENSE
│ ├── Makefile.am
│ ├── Makefile.in
│ ├── NEWS
│ ├── README
│ ├── README.md
│ ├── aclocal.m4
│ ├── config.guess
│ ├── config.h.in
│ ├── config.sub
│ ├── configure
│ ├── configure.in
│ ├── depcomp
│ ├── install-sh
│ ├── missing
│ ├── mkinstalldirs
│ └── server/
└── ...
项目文件说明:
client/
: 包含客户端的源代码和文档。common/
: 包含公共代码和资源。server/
: 包含服务端的源代码和文档。AUTHORS
: 作者信息。ChangeLog
: 更改日志。INSTALL
: 安装指南。LICENSE
: 许可证信息。Makefile.am
,Makefile.in
: Makefile配置文件。NEWS
: 新闻和更新信息。README
,README.md
: 项目描述和文档。- 其他文件包括构建和配置脚本。
2. 项目的启动文件介绍
dns2tcp
的启动文件主要位于 server/
目录下。以下是主要的启动文件:
dns2tcpd
: 这是服务端的主程序,用于启动DNS到TCP的中继服务。dns2tcpdrc
: 服务端的配置文件,用于配置服务端的参数。
要启动服务端,可以使用以下命令:
dns2tcpd -f dns2tcpdrc
3. 项目的配置文件介绍
dns2tcp
的配置文件分为客户端和服务端两种。
服务端配置文件 dns2tcpdrc
服务端配置文件通常包含以下内容:
listen = x.x.x.x
port = 53
user = nobody
key = whateveryouwant
chroot = /var/empty/dns2tcp/
domain = dns2tcp.hsc.fr
resources = ssh:127.0.0.1:22 smtp:127.0.0.1:25 pop3:10.0.0.1:110 ...
listen
: 服务端监听的IP地址。port
: 服务端监听的端口,默认是53(DNS服务端口)。user
: 运行服务的用户。key
: 预共享密钥,用于客户端和服务端之间的简单认证。chroot
: 更改服务端的根目录,提高安全性。domain
: 服务的域名。resources
: 定义了可以访问的资源及其映射的内部地址和端口。
客户端配置文件 dns2tcprc
客户端配置文件通常包含以下内容:
domain = dns2tcp.hsc.fr
resource = ssl-tunnel
local_port = 4430
debug_level = 1
key = whateveryouwant
server = the_dns_server
domain
: DNS查询所使用的域名。resource
: 需要访问的资源名称。local_port
: 客户端在本地的监听端口。debug_level
: 调试级别。key
: 预共享密钥,用于客户端和服务端之间的简单认证。server
: DNS服务器的地址。
通过配置这些文件,用户可以设置和管理dns2tcp
服务的各项参数,以满足特定的需求。