Linux 高性能 eBPF 代理:dae 安装与全能配置指南

1. 为什么选择 dae?

  • dae 是基于 Linux 内核 eBPF 技术的透明代理解决方案。

  • 高性能:在内核层处理数据包,旁路转发,极低延迟。

  • 真·透明:无需设置系统代理环境变量,接管包括 DNS 在内的所有底层流量。

  • 防泄漏:原生支持 DNS 分流与加密,彻底告别 DNS 污染。


2. 环境准备与安装

第一步:系统要求

确保你的 Linux 内核版本 $\ge 5.10$(在终端输入 uname -r 查看)。

第二步:一键安装

使用官方脚本,自动安装二进制文件并配置 Systemd 服务:

1
2
sudo sh -c "$(wget -qO- https://github.com/daeuniverse/dae-installer/raw/main/installer.sh)" @ install

第三步:下载基础数据库

dae 需要 GeoIP 和 GeoSite 数据库来识别国内外流量:

1
2
3
4
sudo mkdir -p /usr/share/dae/
sudo wget -O /usr/share/dae/geoip.dat https://github.com/v2fly/geoip/releases/latest/download/geoip.dat
sudo wget -O /usr/share/dae/geosite.dat https://github.com/v2fly/domain-list-community/releases/latest/download/dlc.dat


3. 核心配置:防泄漏与自动优选

编辑配置文件 sudo nano /etc/dae/config.dae,直接粘贴并修改你的节点信息:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
global {
# 绑定网卡:物理机可用 ip link 查看真实名称
lan_interface: eth0
wan_interface: eth0
log_level: info
dial_mode: domain # 核心:设置为 domain 模式以强制拦截所有 DNS
}

dns {
upstream {
# 国外加密 DNS:通过代理隧道传输
googledns: 'tcp+udp://dns.google:53'
# 国内直连 DNS:确保国内域名解析速度
alidns: 'udp://223.5.5.5:53'
}
routing {
request {
qname(geosite:cn) -> alidns
fallback: googledns
}
}
}

node {
# 填入你的节点链接(支持 VLESS, VMess, TUIC, SS 等)
node_vless: 'vless://...'
node_tuic: 'tuic://...'
node_vmess: 'vmess://...'
}

group {
proxy {
filter: name(node_vless, node_tuic, node_vmess)
# 自动切换到延迟最低的节点(基于移动平均值)
policy: min_moving_avg
}
}

routing {
# 局域网直连
dip(geoip:private) -> direct
# 中国流量直连(节省 VPS 流量)
dip(geoip:cn) -> direct
domain(geosite:cn) -> direct

# 其余流量全部走代理(含 DNS 探测包)
fallback: proxy
}


4. 运行与管理

设置 dae手动模式,仅在需要时开启:

1
2
3
4
5
6
7
8
9
10
11
12
# 1. 禁用开机自启(实现完全手动)
sudo systemctl disable dae

# 2. 检查配置语法(发布前必做)
sudo dae validate -c /etc/dae/config.dae

# 3. 开启代理
sudo systemctl start dae

# 4. 关闭代理
sudo systemctl stop dae


5. 如何验证防泄漏效果?

在 SSH 终端输入以下命令:

1
2
curl -sL https://test.nextdns.io

解析结果:

  • **srcIP**:应显示你代理服务器的出口 IP。

  • **resolver**:应显示 Google 或你在 upstream 中配置的地址。

  • **status**:如果不含任何中国运营商(China Telecom/Unicom)的信息,说明 DNS 防泄漏成功