热门问题
时间线
聊天
视角
Help:如何访问维基百科
来自维基百科,自由的百科全书
Remove ads
如果您身处中国大陆,想正常访问维基百科以及其他部分维基媒体基金会旗下项目,需要通过技术手段绕过防火长城的封锁。本文旨在提供有效的方法。
![]() | 本页為操作指南,用於介紹中文维基百科社群的一些实现和操作方式。 本文只是論述,不屬於方針或指引。如果本指南與方針或指引起衝突或不一致,請以方針或指引的條文為準。 |
![]() | 本文中涉及的第三方工具并非由维基媒体基金会及维基百科社群维护,因此其安全性无法得到保证,请自行斟酌。 |
如果您在使用本文中的方法时遇到问题,可以在Wikipedia:社群媒體提问,或者参考本文精简前的版本。
Remove ads
封锁手段简介
防火长城(GFW)针对维基媒体基金会旗下项目主要使用以下技术手段进行封锁(封锁其他网站所用的技术手段也类似):
- DNS污染:DNS服务用于匹配域名和IP地址,通过人为修改DNS记录,使用户无法获得正确的IP地址,导致网站无法打开;如果你使用ping命令或者其他DNS请求工具获得的IP地址不属于维基媒体基金会所有,则说明遭遇此种手法;
- IP封锁:通过ACL、BGP劫持、黑洞攻击等技术手段使用户的数据包无法传递至正确的服务器,而是被丢弃或发送至错误目的地,导致网站无法打开;如果你使用traceroute命令发现虽然IP地址属于维基媒体基金会,但数据包在进入运营商骨干网后便再无追踪记录,则说明遭遇此种手法;
- 深度包检测:对于未加密的HTTP连接,该技术可以检测详细的传输内容,如果触发敏感词则立即发起TCP重置攻击;对于HTTPS连接,虽然其采取了加密措施,但是截至目前SNI部分未被加密,因此通过该技术仍然可以获知用户访问的网站,如果该网站在封锁名单中则连接会被重置,此种手法无论使用ping还是traceroute命令结果均为正常,但是浏览器会显示“连接被重置”等错误提示。
Remove ads
使用代理服务器
您可以使用通常被称作“翻墙软件”的代理服务器或者VPN访问维基百科。由于维基百科不允许使用开放代理编辑,您需要申请IP封禁豁免权才能编辑。中文维基百科的本地豁免可通过邮件或网站申请,对于全域豁免或其他维基媒体项目,请移步对应页面了解详情。中文维基百科的本地IP封禁豁免是长期有效的,但部分其他维基媒体项目的IP封禁豁免有有效期,请务必按时续期。
直接连接
![]() | 使用被封禁的代理IP之后,您可能需要清除Cookie才能退出被封禁状态。 |
TCB desync通过注入或修改特定TCP数据包来欺骗GFW的深度包检测。例如加利福尼亚大学河滨分校的研究人员在ACM IMC 2017会议上发表的论文《Your State is Not Mine: A Closer Look at Evading Stateful Internet Censorship》,文中提出注入特制数据包可以使GFW的TCP状态机(TCP Control Block)与实际状态“脱同步”(desync),从而绕过GFW的深度包检测手段,是为TCB desync。[1]
此类方法的历史更早可追溯到2010年终止的西厢计划,其简单实现了1998年T. Ptacek等人提出的注入方法规避入侵检测系统(防火长城)。
本文列出一些当前可用的实现了TCB desync的反审查软件。
XTLS/Xray-core的v1.8.3版本引入了TCP和TLS分段支持,可以规避GFW的SNI重置攻击。[2]使用方法如下:
- 从GitHub发布页下载最新版本的Xray内核。
- 在
config.json
中添加如下配置(以TLS分片为例):{ "dns": { "hosts": { "regexp:(upload|map)\\.wikimedia\\.org": [ "185.15.59.240", "185.15.58.240", "208.80.153.240", "208.80.154.240", "2620:0:861:ed1a::2:b", "2620:0:860:ed1a::2:b", "2620:0:863:ed1a::2:b", "2a02:ec80:300:ed1a::2:b", "2001:df2:e500:ed1a::2:b", "2a02:ec80:600:ed1a::2:b" ], "domain:wikipedia.org": [ "185.15.59.224", "185.15.58.224", "208.80.153.224", "2620:0:863:ed1a::1", "2001:df2:e500:ed1a::1", "2a02:ec80:600:ed1a::1 ", "2a02:ec80:300:ed1a::1", "2620:0:860:ed1a::1", "2620:0:861:ed1a::1" ] } }, "inbounds": [ { "listen": "0.0.0.0", "port": "1083", "protocol": "socks", "settings": { "auth": "noauth", "udp": true, "ip": "0.0.0.0" } } ], "outbounds": [ { "protocol": "freedom", "domainStrategy": "UseIP", "settings": { "fragment": { "length": "100-200", "interval": "1-2", "packets": "tlshello" } }, "streamSettings": { "sockopt": { "tcpNoDelay": true } } } ] }
- 使用
./xray -c /path/to/config.json
启动Xray内核。 - 配置浏览器使用Xray代理(上例中为SOCKS5协议,端口1083)。注意勾选通过代理查询DNS的选项。
Remove ads
若您使用64位Windows系统,可以使用 ValdikSS/GoodbyeDPI(维基百科条目,下载链接),解压后运行
2_any_country_dnsredir.cmd
即可;

維基教科書中的相關電子教程:Phantomsocks
对于Windows系统,您也可以在 WhiteCutey/TCPioneer-Hmoegirl下载TCPioneer,解压后运行
tcpioneer.exe
即可。TCPioneer的默认配置文件为default.conf
,包括对各个域名使用的desync策略,并支持类似Hosts文件的域名到IP地址的映射,如果您发现使用上述链接内的内置default.conf
存在访问问题,请尝试替换为这个配置文件。
如果您使用macOS或Linux系统,可以使用 macronut/phantomsocks。
域前置可以让用户向防火长城展示经过伪装的访问信息,借此避开SNI封锁,也就是说虽然访问的是维基百科,但在防火长城看来是在访问别的网站,从而使得连接不会被中断。
除位于美国旧金山、阿什本及新加坡的服务器IP地址外,维基媒体基金会的其他服务器IP地址可以正常直接连接,但是仍然会受到防火长城连接重置和针对HTTPS的SNI检测的干扰影响,所以可以通过使用多种方法实现域前置,规避防火长城的SNI检测,访问各个语种版本的维基百科和中文维基语录等项目。
对于Windows系统中采用Chromium内核的浏览器(如Chrome、Opera、Vivaldi、Brave、Microsoft Edge等),我们可以在其快捷方式中追加--host-rules
参数,从而使其连接维基百科时不使用原本的SNI,而是使用其他未被GFW检测的SNI,从而绕过SNI检查。[3]
方法如下所述:
- 右键单击浏览器快捷方式;
- 打开属性窗口;
- 在“目标”后加入
--host-rules="MAP *.wikipedia.org wikidata.org, MAP commons.wikimedia.org wikidata.org" --host-resolver-rules="MAP upload.wikimedia.org 208.80.154.240, MAP wikidata.org 185.15.59.224"
- 重启浏览器即可。
SpaceTimee/Sheas-Cealer可以自动化生成上述启动参数并启动浏览器,从而减少人工操作的复杂性。该程序的自带配置涵盖了维基媒体基金会、Internet Archive等大多数支持域前置的网站。
此方法操作起来较为复杂,需要用户具有相当的计算机相关知识。若您有足够能力,可以查看这个页面来进一步了解。您也可以直接下载构建好的版本。
mashirozx/Pixiv-Nginx提供了一个完整配置方法,配置后直接运行Nginx即可。如需要停止服务,可使用
nginx -s quit
命令或在任务管理器(Windows系统)或使用sudo pkill nginx
命令(Linux系统)直接终止Nginx进程。
有一些代理工具也实现了域前置,它们可能将其称为“伪造SNI”或其他名称。关于如何使用其访问维基百科,请参阅其文档。
其他方法
中国大陆直连情况
维基媒体服务器列表
参见
参考
Wikiwand - on
Seamless Wikipedia browsing. On steroids.
Remove ads