只要思想不滑坡,办法总比困难多,之前的教程一AdGuard Home,教程二Caddy反代,现在教程三Workers反代,默认大家都会使用cf,而且有域名托管在上面,因为要设置自定义域名,代码中目标 DoH 服务器可以随意更改为 https://1.1.1.1/dns-query 或其它,最终 https://你的 Workers 子域/dns-query 成为DoH。

export default {
async fetch(request) {
let url = new URL(request.url);
// 仅允许 /dns-query
if (url.pathname !== "/dns-query") {
return new Response("Not Found", { status: 404 });
}
// 目标 DoH 服务器
let targetURL = "https://dns.google/dns-query" + url.search;
let modifiedRequest = new Request(targetURL, {
method: request.method,
headers: new Headers(request.headers),
body: request.body,
redirect: "follow"
});
// 设置正确的 Host 头,避免 Google 拒绝请求
modifiedRequest.headers.set("Host", "dns.google");
modifiedRequest.headers.set("Accept", "application/dns-message");
let response = await fetch(modifiedRequest);
let newHeaders = new Headers(response.headers);
newHeaders.set("Access-Control-Allow-Origin", "*"); // 允许 CORS
return new Response(response.body, {
status: response.status,
headers: newHeaders
});
}
}
512M 的 Lightsail 上放我的 Adguard Home
@Testcharon #1
都是好办法
path 有 dns-query 直接关注,等候阻断
你直接把1.1.1.1添加到代理规则里不就行了
@Gaven #3 你了解下https,在 HTTPS 传输中,GFW 无法直接看到你访问的完整 URL,只有知名的国外dns才会被重点关注。
@TongTong #5 墙有主动探测
@hqycloud #6 没有百分百避免,不过个人使用应该问题不大。
@TongTong #5 固定特征的东西用自动脚本扫也没什么难度吧😅
怎么修改path
/dns-query就是特征,而且则固定完全不会变。两会期间极度敏感。
最好提起说一下,要是备案域名就别绑了,要不然到时候查的话绝对会被请去喝茶