GoodbyeDPI 正在参加 2021 年度 OSC 中国开源项目评选,请投票支持!
GoodbyeDPI 在 2021 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
2021 年度 OSC 中国开源项目评选 正在火热进行中,快来投票支持你喜欢的开源项目!
2021 年度 OSC 中国开源项目评选 >>> 中场回顾
GoodbyeDPI 获得 2021 年度 OSC 中国开源项目评选「最佳人气项目」 !
授权协议 Apache-2.0
开发语言 C/C++
操作系统 Windows
软件类型 开源软件
所属分类 管理和监控安全相关
开源组织
地区 不详
投 递 者 白开水不加糖
适用人群 未知
收录时间 2021-12-29

软件简介

GoodbyeDPI 是一个被动深度包检测拦截器和主动 DPI 规避实用程序。

该软件旨在绕过许多 Internet 服务提供商中的深度包检测系统,这些系统会阻止访问某些网站。

它处理使用分光器或端口镜像(被动 DPI)连接的DPI,这些DPI不会阻止任何数据,而只是比请求的目的地更快地回复,并按顺序连接主动 DPI

Windows 7、8、8.1 和 10需要管理员权限。

Usage: goodbyedpi.exe [OPTION...]
 -p          block passive DPI
 -r          replace Host with hoSt
 -s          remove space between host header and its value
 -m          mix Host header case (test.com -> tEsT.cOm)
 -f <value>  set HTTP fragmentation to value
 -k <value>  enable HTTP persistent (keep-alive) fragmentation and set it to value
 -n          do not wait for first segment ACK when -k is enabled
 -e <value>  set HTTPS fragmentation to value
 -a          additional space between Method and Request-URI (enables -s, may break sites)
 -w          try to find and parse HTTP traffic on all processed ports (not only on port 80)
 --port        <value>    additional TCP port to perform fragmentation on (and HTTP tricks with -w)
 --ip-id       <value>    handle additional IP ID (decimal, drop redirects and TCP RSTs with this ID).
                          This option can be supplied multiple times.
 --dns-addr    <value>    redirect UDP DNS requests to the supplied IP address (experimental)
 --dns-port    <value>    redirect UDP DNS requests to the supplied port (53 by default)
 --dnsv6-addr  <value>    redirect UDPv6 DNS requests to the supplied IPv6 address (experimental)
 --dnsv6-port  <value>    redirect UDPv6 DNS requests to the supplied port (53 by default)
 --dns-verb               print verbose DNS redirection messages
 --blacklist   <txtfile>  perform circumvention tricks only to host names and subdomains from
                          supplied text file (HTTP Host/TLS SNI).
                          This option can be supplied multiple times.
 --set-ttl     <value>    activate Fake Request Mode and send it with supplied TTL value.
                          DANGEROUS! May break websites in unexpected ways. Use with care.
 --auto-ttl    [decttl]   activate Fake Request Mode, automatically detect TTL and decrease
                          it from standard 64 or 128 by decttl (128/64 - TTL - 4 by default).
 --wrong-chksum           activate Fake Request Mode and send it with incorrect TCP checksum.
                          May not work in a VM or with some routers, but is safer than set-ttl.
 --wrong-seq              activate Fake Request Mode and send it with TCP SEQ/ACK in the past.
 --native-frag            fragment (split) the packets by sending them in smaller packets, without
                          shrinking the Window Size. Works faster (does not slow down the connection)
                          and better.
 --reverse-frag           fragment (split) the packets just as --native-frag, but send them in the
                          reversed order. Works with the websites which could not handle segmented
                          HTTPS TLS ClientHello (because they receive the TCP flow "combined").


LEGACY modesets:
 -1          -p -r -s -f 2 -k 2 -n -e 2 (most compatible mode)
 -2          -p -r -s -f 2 -k 2 -n -e 40 (better speed for HTTPS yet still compatible)
 -3          -p -r -s -e 40 (better speed for HTTP and HTTPS)
 -4          -p -r -s (best speed)

Modern modesets (more stable, more compatible, faster):
 -5          -f 2 -e 2 --auto-ttl --reverse-frag (this is the default)
 -6          -f 2 -e 2 --wrong-seq --reverse-frag

要检查你的ISP的DPI是否可以被规避,首先要确保你的供应商不通过在浏览器中启用 "Secure DNS(通过 HTTPS 的DNS)"选项来 poison DNS answers。

  • Chrome: Settings → Privacy and security > Use secure DNS → With: NextDNS
  • Firefox: Settings → Network Settings → Enable DNS over HTTPS → Use provider: NextDNS

然后在没有任何选项的情况下运行 goodbyedpi.exe 可执行文件。如果它起作用了--恭喜你!你可以按原样使用它,或者进一步配置,例如,如果你知道被封锁的网站名单,就使用-黑名单选项。你可以按原样使用,也可以进一步配置,例如,如果你所在的国家有已知的被屏蔽的网站名单,就可以使用-黑名单选项。

如果你的供应商拦截了 DNS 请求,你可能想使用 --dns-addr 选项到一个运行在非标准端口的公共 DNS resover(如Yandex DNS 77.88.8.8:1253)或使用第三方应用程序通过 HTTPS/TLS 配置 DNS。

检查 .cmd 脚本并根据你的偏好和网络条件进行修改。

展开阅读全文

代码

的 Gitee 指数为
超过 的项目

评论

点击引领话题📣
暂无内容
发表了博客
{{o.pubDate | formatDate}}

{{formatAllHtml(o.title)}}

{{parseInt(o.replyCount) | bigNumberTransform}}
{{parseInt(o.viewCount) | bigNumberTransform}}
没有更多内容
暂无内容
发表了问答
{{o.pubDate | formatDate}}

{{formatAllHtml(o.title)}}

{{parseInt(o.replyCount) | bigNumberTransform}}
{{parseInt(o.viewCount) | bigNumberTransform}}
没有更多内容
暂无内容
0 评论
4 收藏
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部
返回顶部
顶部