Brook Shiliew Cheap Zhi Meeting Nan mitmproxy client Network Activity Monitor iOS Old App Downloader SSH Terminal Subtitle 菜根谭 Socks5 Configurator IPvBar File Link Markdown Editor IP AI nami joker brook ipio nico z zoro hancock mad httpserver google hosts

如何自动生成自用的中国域名直连模块

Updated at: 2025-02-19

因为很多列表太陈旧,也太多,很多可能你永远都访问不到。所以此文提供一种方法,可以自动从 Brook 图形客户端的日志或 CLI 的日志里提取中国域名,并增量生成自己的中国域名直连模块。

Windows 用户应在 GitBash 下运行

原理

从海外 IP 向海外 DNS 发起查询知乎的一个域名

brook ipcountry --ip `brook dohclient -s 'https://dns.quad9.net/dns-query?address=9.9.9.9%3A443' -d pic1.zhimg.com --short`

结果是 US

从国内 IP 向阿里 DNS 发起查询知乎的一个域名

brook ipcountry --ip `brook dohclient -s 'https://dns.alidns.com/dns-query?address=223.5.5.5:443' -d pic1.zhimg.com --short`

结果是 CN

从海外 IP 向阿里 DNS 发起查询知乎的一个域名

brook ipcountry --ip `brook dohclient -s 'https://dns.alidns.com/dns-query?address=223.5.5.5:443' -d pic1.zhimg.com --short`

结果是 US

从国内 IP 向阿里 DNS 发起查询 Google 的一个域名

brook dohclient -s 'https://dns.alidns.com/dns-query?address=223.5.5.5:443' -d www.google.com --short

结果 108.160.166.57,显然是个被污染的 IP,但这是个 US 的 IP

方案

nami install brook 7z bun bun.plus
bunu https://bash.ooo/china.js

从自己的客户端或服务端日志里准备数据

根据上面所言,我们就有两种方案来判断一个域名是不是大陆域名:

  • A: 从海外 IP 向海外 DNS 发起查询, 比如开启 GUI 的情况下或在服务器端运行, 缺点是如果域名同时有国内和海外 IP 则会被认为是海外域名
  • B: 从国内 IP 向阿里 DNS 发起查询, 比如在本地运行, 开启 GUI 情况下也没事,GUI 默认 bypass 了阿里 DNS, 缺点是如果返回的污染 IP 是国内的 IP 就会错乱,历史经验不会, 但无保证包。还有一个缺点是 Google 有一些域名有国内的 IP

比如: 从客户端的日志里准备数据,并采用方案 A,在本地开启 GUI 后运行

bunu https://bash.ooo/china.js --source gui --how A

比如: 从客户端的日志里准备数据,并采用方案 B,在本地运行

bunu https://bash.ooo/china.js --source gui --how B

比如: 从服务端的日志里准备数据,并采用方案 A,在服务端运行

bunu https://bash.ooo/china.js --source /path/to/log --how A

查看准备好的数据

bunu https://bash.ooo/china.js --table

弥补 A 和 B 方案的不足,手动微调数据

手动调整某个域名为国内域名

bunu https://bash.ooo/china.js --china zhimg.com

手动调整某个域名为国际域名

bunu https://bash.ooo/china.js --global gstatic.com

生成中国域名直连模块

bunu https://bash.ooo/china.js --modulea

总结

隔一段时间后,再次重复以上步骤,用不了几次就会生成最适合自己的完美的中国域名直连模块。

© TxThinking, Inc. All Rights Reserved.