User talk:田宮真莉:修订间差异
imported>田宮真莉 无编辑摘要 |
imported>田宮真莉 |
||
(未显示同一用户的1个中间版本) | |||
第23行: | 第23行: | ||
</div> | </div> | ||
{{#widget:首页}} | {{#widget:首页}} | ||
#重定向 [[帮助:如何訪問]] | |||
偷懒不想创建页面 | |||
{{info| | |||
*目前对于中国大陆用户,如果想正常访问包括中文里萌娘,需要使用[[:mw:zh:域名解析文件|域名解析文件]]、[[:mw:zh:DNS_over_HTTPS|DoH]]、[[:mw:zh:DNS over TLS|DoT]]或其他工具绕过封锁,或者使用免费或收费的[[:mw:zh:突破网络审查|翻guo過濾器墙]][[:mw:zh:代理服务器|代理]]服务。 | |||
*在使用上述措施时请注意安全,以免账号、密码等[[:mw:zh:身份盗窃|个人信息泄露]]。}} | |||
{{工具箱}} | |||
本文旨在为访问中文里萌娘有[[:mw:zh:中国大陆对维基媒体的封锁|困难障碍]]的中文用户,提供有效安全的访问方法。 | |||
{{Pp-vandalism|small=yes}} | |||
{{noteTA | |||
|G1=IT | |||
|1=zh-tw:透過;zh-cn:通过; | |||
|2=zh-tw:網域名稱;zh-cn:域名; | |||
}} | |||
{{Wikipedia how-to|H:HOWTO|H:VISIT|H:访问}} | |||
{{Nutshell|目前对于大部分中国大陆用户,如果想正常访问维基百科以及维基媒体基金会旗下的部分其他项目,需要靠修正域名解析、使用代理服务等手段绕过[[防火长城]]的封锁,具体做法请见正文。|在使用代理编辑维基百科时可能需要获取[[WP:IPBE|IP封禁例外权]]。|在使用上述措施时请注意安全,以免账号、密码等[[身份盗窃|个人信息泄露]]。}} | |||
{{Newbies}} | |||
本文旨在为访问包括中文维基百科在内的部分维基媒体基金会旗下项目有[[中国大陆对维基媒体的封锁|困难障碍]]的中文用户,提供有效安全的访问方法。 | |||
== 中国大陆直连情况 == | |||
[[File:Firefox Encrypted.PNG|thumb|当您在访问经过[[HTTPS]]加密的页面时,地址栏中应当出现一个锁形图标。]] | |||
維基百科的網址如下: | |||
* [https://zh.wikipedia.org/ https://zh.wikipedia.org/] (中文維基百科桌面版) | |||
* [https://zh.m.wikipedia.org/ https://zh.m.wikipedia.org/] (中文維基百科移动版) | |||
* [https://www.wikipedia.org/ https://www.wikipedia.org/] (多语言入口,可以通过链接访问或搜索任意语言版本的维基百科) | |||
自2015年6月中旬起,维基媒体基金会对旗下项目进行了强制性加密([[超文本传输安全协议|HTTPS]]),未加密的明文版页面([[超文本传输协议|HTTP]])会被强制跳转到对应的加密版页面。如果访问中浏览器出现证书错误等提示,或者页面停留在明文版而未跳转至加密版(即地址栏不以<code>https://</code>开头),说明连接极有可能已经[[中间人攻击|受到了干扰]],'''请停止访问,不要添加例外''',以免传输的数据被窃听。 | |||
如果你在直接连接(未使用[[代理服务器|代理]]、[[4567]]等手段)维基百科时遇到的情况和下文描述不尽相同,也欢迎[[Wikipedia_talk:狀況回報|留下反馈信息]]。 | |||
==== IPv4连接 ==== | |||
目前,在中国大陆直接访问维基媒体基金会的不同项目可能会遇到如下情况: | |||
{{Wiki-accessibility-CHN}}<!-- 要更新当前访问情况,请移步至 Template:Wiki-accessibility-CHN --> | |||
另外,由于目前维基媒体位于[[美国]][[旧金山]]的服务器遭遇部分封锁,若您的DNS解析结果为198.35.26.96,则所有的项目均无法访问。 | |||
==== IPv6连接 ==== | |||
维基媒体基金会旗下项目均支持[[IPv6]]连接。教育网和部分移动数据连接会使用IPv6,因此在不使用任何代理的情况下有可能可以直接访问维基百科。 | |||
然而,防火长城对维基百科部分项目的DNS污染可能会影响到IPv6地址的解析。如果有必要,仍然需要手动调整IPv6地址(参见[[#修正域名解析|修正域名解析]])。 | |||
== 维基媒体服务器列表 == | |||
维基媒体基金会使用下列IP地址提供服务入口,您可以使用下面的IP地址替换后续教程(如[[#修正域名解析]])中提供的IP地址。<code>text-lb</code>和<code>upload-lb</code>之间的数据不互通,通常应该使用<code>text-lb</code>中的IP地址,但是对于图片服务器(<code>upload.wikimedia.org</code>)及地图服务(<code>maps.wikimedia.org</code>)则应该使用<code>upload-lb</code>中的IP地址。您可根据[[延迟 (电脑)|延迟]]和[[丢包|丢包率]]等测试数据决定使用哪个服务器。 | |||
另需指出[[tools:|Toolforge]]单独拥有数据中心,因此不使用以下任何IP地址,而有专用IP地址<code>185.15.56.11</code>。 | |||
教育网屏蔽了部分IPv6地址,使用前应确认可用性。 | |||
{| class='wikitable' style='text-align:left' | |||
|- | |||
! rowspan='3' | 位置 | |||
! rowspan='3' | 数据中心名 | |||
! rowspan='3' | 对应项目 | |||
! colspan='4' | 网络地址 | |||
|- | |||
! colspan='2' | text-lb | |||
! colspan='2' | upload-lb | |||
|- | |||
! IPv4地址 | |||
! IPv6地址 | |||
! IPv4地址 | |||
! IPv6地址 | |||
|- | |||
| {{USA}}[[旧金山]] || ulsfo || 大部分项目 || {{n}} 198.35.26.96 || {{y}} 2620:0:863:ed1a::1 || {{y}} 198.35.26.112 || {{y}} 2620:0:863:ed1a::2:b | |||
|- | |||
| {{USA}}[[卡羅爾頓_(德克薩斯州)|卡罗尔顿]] || codfw || 大部分项目 || {{y}} 208.80.153.224 || {{y}} 2620:0:860:ed1a::1 || {{y}} 208.80.153.240 || {{y}} 2620:0:860:ed1a::2:b | |||
|- | |||
| {{USA}}[[阿什本]] || eqiad || 大部分项目 || {{y}} 208.80.154.224 || {{y}} 2620:0:861:ed1a::1 || {{y}} 208.80.154.240 || {{y}} 2620:0:861:ed1a::2:b | |||
|- | |||
| {{NED}}[[阿姆斯特丹]] || esams || 大部分项目 || {{y}} 91.198.174.192 || {{y}} 2620:0:862:ed1a::1 || {{y}} 91.198.174.208 || {{y}} 2620:0:862:ed1a::2:b | |||
|- | |||
| {{SGP}} || eqsin || 大部分项目 || {{y}} 103.102.166.224 || {{y}} 2001:df2:e500:ed1a::1 || {{y}} 103.102.166.240 || {{y}} 2001:df2:e500:ed1a::2:b | |||
|} | |||
{|style="font-size:85%;" | |||
|{{y}} 在中国大陆可以直接连接的IP地址 | |||
|- | |||
|{{n}} 在中国大陆不能直接连接的IP地址 | |||
|} | |||
通过查询 <code>text-lb.''(数据中心名)''.wikimedia.org</code>、<code>upload-lb.''(数据中心名)''.wikimedia.org</code>(lb是[[负载均衡|load balancer]]的缩写)可以获得上述的IP地址。此外也可以参考[[meta:Wikimedia servers]]或[[Wikipedia:服务器]]页面获得维基媒体基金会服务器的相关信息。 | |||
== 直接连接 == | |||
=== 本地反向代理 === | |||
因维基百科的ip可以正常连接,所以可以通过本地反代的方式规避防火长城的SNI检测。使用[[Nginx]]进行本地反向代理,详见'''[[Help Talk:如何访问维基百科#使用Nginx本地反代无需代理服务器直连维基百科|此处]]'''。nginx下载并配置后直接双击运行即可;如需要停止服务,可使用nginx -s quit命令或直接在任务管理器(或Linux中使用kill命令)终止nginx进程。 | |||
[https://github.com/mashirozx/Pixiv-Nginx/ 这里]提供了一个完整配置(请删除[https://github.com/mashirozx/Pixiv-Nginx/blob/master/conf/nginx.conf nginx.conf]的“server 198.35.26.96:443;”一行),但只支持维基百科。 | |||
如果您不懂得如何配置,可以使用[https://github.com/URenko/Accesser Accesser]([[Python]]编写)。 | |||
=== 修正域名解析 === | |||
{{shortcut|H:DNS}} | |||
截至2019年8月19日,[[防火长城]]会对部分维基媒体项目进行[[域名服务器缓存污染|DNS污染]]和/或基于[[服务器名称指示|SNI]]检测的[[TCP重置攻击|TCP连接重置]]。对此您可以在设置修正域名解析(具体方法参见下文)后先访问未被封锁的维基媒体基金会旗下的其他项目(例如[[元维基]]或[[维基数据]])再切换至被封锁的项目,即可在接下来的一段时间内正常访问。如果上述操作无效,可以等待几分钟后重试,通常即可成功连接。您也可以[[#代理服务器|使用代理服务]]访问维基百科以获得更加稳定的体验。 | |||
目前已知不能完全正常访问的项目包括: | |||
*所有语言版本的维基百科(所有以<code>.wikipedia.org</code>结尾的[[域名]]) | |||
*中文维基语录桌面版(<code>zh.wikiquote.org</code>) | |||
*维基共享资源移动版(<code>commons.m.wikimedia.org</code>) | |||
*中文维基新闻桌面版和移动版(<code>zh.wikinews.org</code>、<code>zh.m.wikinews.org</code>) | |||
*英文维基新闻桌面版(<code>en.wikinews.org</code>) | |||
修正域名解析后,用户在首次访问中文维基百科时,需输入以<code><nowiki>https://</nowiki></code>开头的网址方可成功连接,否则仍会遭到屏蔽。由于应用了[[HTTP严格传输安全|HSTS]]技术,使用较新版本浏览器的用户如果成功进入了维基媒体基金会旗下项目的页面,在之后的两周(1209600秒)内再次访问相同项目时浏览器会自动将<code><nowiki>http://</nowiki></code>改为<code><nowiki>https://</nowiki></code>来访问加密版页面而无须通过服务器进行该跳转。 | |||
{{提醒}}: | |||
* 使用这些按钮中的地址可以一键从其他维基媒体项目切换到中文维基百科(复制:桌面设备右键,移动设备长按):<small>{{Clickable_button_2|1|url=https://w.wiki/3KD}}{{Clickable_button_2|2|url=https://www.wikidata.org/wiki/zh:}}{{Clickable_button_2|3|url=https://www.mediawiki.org/wiki/zh:}}{{Clickable_button_2|4|url=https://wikitech.wikimedia.org/wiki/zh:}}{{Clickable_button_2|5|url=https://meta.wikimedia.org/wiki/zh:}}{{Clickable_button_2|6|url=https://incubator.wikimedia.org/wiki/zh:}}{{Clickable_button_2|7|url=https://commons.wikimedia.org/wiki/zh:}}{{Clickable_button_2|8|url=https://zh.wiktionary.org/wiki/w:}}</small>。 | |||
* 修正域名解析不会改变您的IP地址,因此您仍然会对维基媒体基金会旗下项目展现运营商的真实IP地址。不过不用担心,对于[[WP:ACCOUNT|注册用户]]而言,其IP地址是不会对其他用户显示的(除了需要[[WP:CU|用户查核]]等特殊情况),仅根据[[m:Privacy_policy/zh|维基媒体基金会的隐私政策]]储存在服务器后台。假如真的遇到用户查核,您的IP地址也不会和别人的混淆,进而避免被误认为是[[WP:PH|破坏者]]的[[WP:MJ|傀儡/马甲/小号]]。 | |||
{{注意}}: | |||
* 若您已经因为使用代理服务器或4567编辑维基百科而被[[Wikipedia:自动封禁|自动封禁]],现在希望通过设置Hosts或DNS服务器编辑维基百科,请在完成修改之后尝试不使用代理或关闭4567,直接访问维基百科。 | |||
** 由于[[phab:T152462]],你可能还需要清空你的浏览器Cookie,或删除名为<code>zhwikiBlockID</code>的Cookie,才能正常编辑维基百科。 | |||
* TCP连接断开之后需要重复上面的步骤才能继续访问。因此使用该方法时请尽量避免进行[[Help:绕过浏览器缓存|绕过浏览器缓存]]操作。 | |||
** 如果你的浏览器安装了自动刷新网页的插件,你可以对某个未被封锁的维基媒体项目网页进行定期刷新以避免重复上面的步骤。 | |||
** 你也可以使用[[JavaScript]]脚本自动完成此操作,请登录后编辑页面[[Special:MyPage/common.js]]并将以下内容添加进去: | |||
<source lang='javascript'> | |||
(function(){ | |||
var sites = [ | |||
'www.mediawiki.org', | |||
'www.wikidata.org', | |||
'incubator.wikimedia.org', | |||
'meta.wikimedia.org', | |||
'en.wiktionary.org', | |||
'wikitech.wikimedia.org', | |||
'commons.wikimedia.org' | |||
] | |||
var activateSni = function(){ | |||
mw.loader.using('mediawiki.ForeignApi').done(function(){ | |||
(new mw.ForeignApi('https://'+sites[Math.floor(Math.random() * sites.length)]+'/w/api.php')).get({ | |||
action: 'query', | |||
meta: 'userinfo', | |||
sand: Math.random() * 10000 | |||
}) | |||
sites.push(sites.shift()) | |||
}) | |||
window.setTimeout(activateSni, 30000 + Math.random() * 20000) | |||
} | |||
activateSni() | |||
})() | |||
</source> | |||
==== Hosts文件 ==== | |||
{{Shortcut|H:Hosts}} | |||
[[Hosts文件]]存在于计算机本地,通过修改该文件可以改变域名至IP地址的映射。 | |||
修改Hosts文件的具体做法是: | |||
# 获取设备的[[超级用户|管理员]]权限或者对设备进行[[Root (Android)|root]]/[[越狱 (iOS)|越狱]]操作: | |||
#*{{建议}}:如果您因故无法获得设备的管理员权限,或者不能/不愿对设备进行root或越狱,可以考虑采取[[#传统DNS|设置DNS]]或使用[[#加密DNS|DoT/DoH]]作为替代措施。 | |||
#* 桌面设备: | |||
#** Windows系统:在编辑时通过[[UAC]]授权获取管理员权限。 | |||
#** Linux、macOS系统:通过<code>su</code>(或在编辑时使用<code>sudo</code>)获取[[root权限]]。 | |||
#* 移动设备: | |||
#*:* Android系统:需要获取[[Root_(Android)|root]]权限,或者安装运行任意虚拟hosts应用,如[https://github.com/postern-overwal/postern-stuff Postern]。 | |||
#*:* IOS系统:需要进行[[越狱_(iOS)|越狱]]操作,或如果可以访问国外版本[[App Store]]的话(中国大陆运营商DNS存在特殊屏蔽设置,故此一般只能访问大陆版本),购买、安装运行[https://apps.apple.com/us/app/surge-web-developer-tool-proxy/id1040100637 Surge]。 | |||
# 打开Hosts文件: | |||
#* Windows系统:從{{key press|开始}}菜單中找到{{key press|记事本}}程序,右键选择{{key press|以管理员身份运行}}(根据[[用户帐户控制]]策略,可能需要输入管理员账户的密码),使用左上角菜单中的{{key press|文件}}→{{key press|打开}},在下面的文件名中输入<code>C:\Windows\System32\drivers\etc\hosts</code>回车打开文件。(取决于系统安装位置的不同,System32的位置也可能不同。可以通过在命令提示符中运行<code>echo %WINDIR%\system32\etc\hosts</code>确认。如果您使用64位系统,请保证自己使用的编辑器为64位编辑器——Windows对于32位程序会暴露一个虚假的System32(即SysWow64),其中不含hosts。) | |||
#* 类UNIX系统(Linux、Android):一般都可在类似于<code>/etc/hosts</code>的位置找到,然后使用[[gedit]](图形界面)或[[vi]](终端界面)编辑。 | |||
#* 其他系统:请参见[[hosts文件]]。 | |||
# 在该文件中加入下列内容(可根据设备类型选择添加): | |||
#*'''[[#维基媒体服务器列表|维基媒体服务器列表]]'''{{`}}[[#desktop-hosts|桌面设备参考格式]]{{`}}[[#mobile-hosts|移动设备参考格式]] | |||
#* {{建议}}:维基媒体基金会有多个IP地址,您可以参考维基媒体的服务器列表并根据实际访问情况选择填写不同的IP地址。为方便起见,在桌面设备上可以只添加下文的前半部分,在移动设备上可以只添加下文的后半部分。另外由于维基百科有[[WP:WPLIST|数百种语言版本]],您可以根据实际情况选择性地添加项目以免列表过长造成维护困难,例如对于只会普通话的用户,可以只添加中文项目而跳过粤文、藏文等项目。下文仅为格式参考,具体添加哪些语言版本根据您的使用习惯而定,如果您因特殊情况需要添加较多语言版本,可使用此[https://github.com/googlehosts/hosts/issues/361 链接]中列出的全语言版本hosts。 | |||
#* {{注意}}:Hosts文件不支持[[通配符]],因此需要逐个添加地址。另外,由于SNI检测的存在,'''使用时需要确保Hosts列表中的IP地址与运营商的解析结果保持一致''',解析结果可以通过查询未被DNS污染的维基媒体域名获得,如<code>mediawiki.org</code>、<code>wikidata.org</code>、<code>w.wiki</code>。 | |||
#*:* Windows系统:在[[命令提示符]](cmd)中使用nslookup命令查询,如<code>nslookup mediawiki.org</code>。 | |||
#*:* 类UNIX系统:在[[Shell]]中使用dig命令查询,如<code>dig mediawiki.org -t A mediawiki.org -t AAAA</code>。 | |||
#** 解析一般会得到两个结果,其中以<code>.</code>(英文句号)分隔的是[[域名伺服器記錄類型列表#A|A记录]]([[IPv4]]地址),以<code>:</code>(英文冒号)分隔的是[[域名伺服器記錄類型列表#AAAA|AAAA记录]]([[IPv6]]地址)。 | |||
#** {{注意}}:如果获取到的IP地址不在[[#维基媒体服务器列表|这个列表]]中,请通过查询(如[https://tools.wmflabs.org/whois/ 这个工具])确定IP地址是属于“Wikimedia Foundation Inc.”所有,否则说明解析结果极有可能已经受到DNS污染,'''请勿使用'''。 | |||
{{HideH|内容}} | |||
<source lang="shell" id="desktop-hosts"> | |||
# Wikimedia Start 維基媒體開始 | |||
103.102.166.224 meta.wikimedia.org | |||
2620:0:863:ed1a::1 meta.wikimedia.org | |||
# Wikimedia End 維基媒體結束 | |||
# Wikipedia Start 維基百科開始 | |||
103.102.166.224 www.wikipedia.org | |||
2620:0:863:ed1a::1 www.wikipedia.org | |||
103.102.166.224 en.wikipedia.org | |||
2620:0:863:ed1a::1 en.wikipedia.org | |||
103.102.166.224 zh.wikipedia.org | |||
2620:0:863:ed1a::1 zh.wikipedia.org | |||
103.102.166.224 ja.wikipedia.org | |||
2620:0:863:ed1a::1 ja.wikipedia.org | |||
103.102.166.224 zh-yue.wikipedia.org | |||
2620:0:863:ed1a::1 zh-yue.wikipedia.org | |||
103.102.166.224 gan.wikipedia.org | |||
2620:0:863:ed1a::1 gan.wikipedia.org | |||
103.102.166.224 wuu.wikipedia.org | |||
2620:0:863:ed1a::1 wuu.wikipedia.org | |||
103.102.166.224 zh-min-nan.wikipedia.org | |||
2620:0:863:ed1a::1 zh-min-nan.wikipedia.org | |||
103.102.166.224 cdo.wikipedia.org | |||
2620:0:863:ed1a::1 cdo.wikipedia.org | |||
103.102.166.224 hak.wikipedia.org | |||
2620:0:863:ed1a::1 hak.wikipedia.org | |||
103.102.166.224 bo.wikipedia.org | |||
2620:0:863:ed1a::1 bo.wikipedia.org | |||
103.102.166.224 ug.wikipedia.org | |||
2620:0:863:ed1a::1 ug.wikipedia.org | |||
103.102.166.224 zh-classical.wikipedia.org | |||
2620:0:863:ed1a::1 zh-classical.wikipedia.org | |||
#Wikipedia End 維基百科結束 | |||
#Wikinews Start 維基新聞開始 | |||
103.102.166.224 zh.wikinews.org | |||
2620:0:863:ed1a::1 zh.wikinews.org | |||
103.102.166.224 en.wikinews.org | |||
2620:0:863:ed1a::1 en.wikinews.org | |||
#Wikinews End 維基新聞結束 | |||
#Wikiquote Start 維基文庫開始 | |||
103.102.166.224 zh.wikiquote.org | |||
2620:0:863:ed1a::1 zh.wikiquote.org | |||
#Wikiquote End 維基文庫結束 | |||
</source> | |||
<source lang="shell" id="mobile-hosts"> | |||
# Wikimedia Start 維基媒體開始 | |||
103.102.166.224 meta.m.wikimedia.org | |||
2620:0:863:ed1a::1 meta.m.wikimedia.org | |||
103.102.166.224 commons.m.wikimedia.org | |||
2620:0:863:ed1a::1 commons.m.wikimedia.org | |||
# Wikimedia End 維基媒體結束 | |||
# Wikipedia Start 維基百科開始 | |||
103.102.166.224 www.wikipedia.org | |||
2620:0:863:ed1a::1 www.wikipedia.org | |||
103.102.166.224 en.m.wikipedia.org | |||
2620:0:863:ed1a::1 en.m.wikipedia.org | |||
103.102.166.224 zh.m.wikipedia.org | |||
2620:0:863:ed1a::1 zh.m.wikipedia.org | |||
103.102.166.224 ja.m.wikipedia.org | |||
2620:0:863:ed1a::1 ja.m.wikipedia.org | |||
103.102.166.224 zh-yue.m.wikipedia.org | |||
2620:0:863:ed1a::1 zh-yue.m.wikipedia.org | |||
103.102.166.224 gan.m.wikipedia.org | |||
2620:0:863:ed1a::1 gan.m.wikipedia.org | |||
103.102.166.224 wuu.m.wikipedia.org | |||
2620:0:863:ed1a::1 wuu.m.wikipedia.org | |||
103.102.166.224 zh-min-nan.m.wikipedia.org | |||
2620:0:863:ed1a::1 zh-min-nan.m.wikipedia.org | |||
103.102.166.224 cdo.m.wikipedia.org | |||
2620:0:863:ed1a::1 cdo.m.wikipedia.org | |||
103.102.166.224 hak.m.wikipedia.org | |||
2620:0:863:ed1a::1 hak.m.wikipedia.org | |||
103.102.166.224 bo.m.wikipedia.org | |||
2620:0:863:ed1a::1 bo.m.wikipedia.org | |||
103.102.166.224 ug.m.wikipedia.org | |||
2620:0:863:ed1a::1 ug.m.wikipedia.org | |||
103.102.166.224 zh-classical.m.wikipedia.org | |||
2620:0:863:ed1a::1 zh-classical.m.wikipedia.org | |||
#Wikipedia End 維基百科結束 | |||
#Wikinews Start 維基新聞開始 | |||
103.102.166.224 zh.m.wikinews.org | |||
2620:0:863:ed1a::1 zh.m.wikinews.org | |||
#Wikinews End 維基新聞結束 | |||
</source> | |||
{{HideF}} | |||
<small>注:元维基是可以直接访问的,但是为了防止DNS解析结果变动造成访问不便,可以先访问此地址再访问中文维基百科等项目。您也可以根据个人喜好改为其他可直接访问的项目。 </small> | |||
保存文件。如果保存的时候出现任何错误提示,如“权限不足”等,请允许电脑保存;如果杀毒软件提示这一举动存在安全风险,请您忽视。按照本教程的方式修改Hosts文件不会对您的电脑造成损害。通常修改后的Hosts记录可以立即生效,但若保存之后还不能正常访问,您可以通过清除DNS缓存来实现: | |||
* 重新启动设备。 | |||
* 执行下列命令: | |||
** Windows:<code>ipconfig /flushdns</code> | |||
** OS X / macOS:<code>lookupd -flushcache</code>或<code>dscacheutil -flushcache</code> | |||
** Linux:<code>sudo service nscd restart</code> | |||
*** Ubuntu:<code>sudo /etc/init.d/dns-clean start</code> | |||
** Android:开启再关闭飞行模式 | |||
值得注意的是,有的时候IP地址虽然能正常连接,但是非加密状态下[[URL]]会被防火长城进行关键字拦截,导致最终访问失败。 | |||
==== 加密DNS ==== | |||
针对DNS的加密技术包括[[DNS over TLS]](DoT)和[[DNS over HTTPS]](DoH),它们比传统DNS更加安全,可以对解析结果进行加密以防止被第三方窃听或篡改,同时也可以作为无法修改Hosts且DNS失效的情况下的替代方案。 | |||
* DoT服务器列表:[[DNS over TLS#公共DNS服务器列表]] | |||
* DoH服务器列表:[[DNS over HTTPS#公共DNS]] | |||
; Android | |||
[[Android]]从[[Android_9.0|9.0]]开始提供了原-{}-生的DoT支持,也就是私人DNS,配置方法是: | |||
# 打开“设置”; | |||
# 点击“网络和互联网”,再点击“高级”,再点击“私人 DNS”; | |||
# 然后在打开的窗口中输入DoT服务器地址,只需要输入IP地址或域名,不需要加上协议或端口。 | |||
对于[[华为]]和[[荣耀]]手机用户,[[EMUI]] 9.0以上系统版本中有此功能,可以在“设置>无线和网络>加密DNS”中找到。 | |||
对于Android 9.0以下的系统,可以使用软件进行DoT/DoH查询: | |||
* [https://getintra.org/ Intra]([https://github.com/BlueSedDragon/Share/raw/master/Intra.apk 直接下载]):由于此软件的默认DoH服务器<code>dns.google.com</code>受到IP阻断,所以需要设置其他服务器,点击软件左上角的菜单按钮,再点击“设置”,再点击“选择 DNS-over-HTTPS 服务器”,然后选择“自定义服务器网址”并输入DoH服务器地址。或者选择<code>cloudflare-dns.com</code>。 | |||
* [https://1.0.0.1/ 1.1.1.1 App]([https://github.com/BlueSedDragon/Share/raw/master/1.1.1.1.apk 直接下载]) | |||
; Firefox | |||
[[Firefox]]从60.0开始提供了DoH支持,配置方法是: | |||
* 桌面版: | |||
*:# 在地址栏输入<code>about:preferences</code>并打开; | |||
*:# 将页面翻到最下方,点击“网络设置”下方的“设置”按钮; | |||
*:# 勾上“启用基于 HTTPS 的 DNS”选项; | |||
*:# 选择“自定义”(如果您想使用默认的DoH服务器则可以不修改); | |||
*:# 填入DoH服务器地址,需以<code>https://</code>开头,端口可选。 | |||
** 注意:通过图形界面设置后Firefox默认会在DoH查询失败时回退到传统DNS,如果需要用DoH做所有的DNS查询: | |||
*# 在地址栏输入<code>about:config</code>并打开,如果出现警告提示请继续; | |||
*# 在页面上方的搜索框输入<code>network.trr.mode</code>; | |||
*# 修改<code>network.trr.mode</code>的值为<code>3</code>。 | |||
* 移动版: | |||
*# 在地址栏输入<code>about:config</code>并打开,如果出现警告提示请继续; | |||
*# 在页面右上角的搜索框输入<code>network.trr.uri</code>; | |||
*# 修改<code>network.trr.uri</code>的值为DoH服务器地址(如果您想使用默认的DoH服务器则可以不修改),需以<code>https://</code>开头,端口可选; | |||
*# 在页面右上角的搜索框输入<code>network.trr.mode</code>; | |||
*# 修改<code>network.trr.mode</code>的值为<code>3</code>(如果想在DoH查询失败时回退到传统DNS,请设置为<code>2</code>)。 | |||
; [[Chromium]] | |||
Chromium瀏覽器內核自78版本開始支援部分DoH服務;基於Chromium的瀏覽器(Google Chrome, Opera, Vivaldi, Brave等)均可使用此功能。 | |||
啟用方法: | |||
# 將系統 DNS 設定為以下服務提供者之一的地址: | |||
#* Cleanbrowsing | |||
#* Cloudflare | |||
#* Comcast | |||
#* DNS.SB | |||
#* Google | |||
#* OpenDNS | |||
#* Quad9 | |||
# 在瀏覽器中前往 chrome://flags/#dns-over-https | |||
# 將最頂端的選項中的「Default」改為「Enabled」 | |||
# 重新啟動瀏覽器 | |||
==== 传统DNS ==== | |||
{{see_also|域名系统}} | |||
通常情况下无论使用设置在中国大陆的DNS服务还是使用设置在海外的DNS服务,因为解析结果都需要穿过防火长城,所以都会被污染。但是仍有一些设置在中国大陆的小型DNS使用技术手段回避防火长城的污染并提供不受污染的结果,通常使用这些小型DNS也能够访问部分其他被封锁的网站,此类DNS服务包括:(带删除线的项目可能无法使用,或不对公众开放使用) | |||
{| class='wikitable' | |||
|- | |||
! rowspan='2' | 服务提供者 | |||
! colspan='2' | 首选网络地址 | |||
! colspan='2' | 备选网络地址 | |||
|- | |||
! IPv4地址 | |||
! IPv6地址 | |||
! IPv4地址 | |||
! IPv6地址 | |||
|- | |||
| [https://lug.ustc.edu.cn/wiki/server/mirrors/start 中国科学技术大学DNS] || <del>202.141.178.13 (中国移动)<br/>202.141.162.123 (中国电信)</del> || || <del>202.38.93.153 (教育网)</del> || <!-- 部分来自https://dns.iui.im/#University|https://blog.liyuans.com/archives/pure-dns-collection.html#_label0 --> | |||
<!-- 在三个网络环境下均测试到只有202.38.93.153开放53端口:https://i.loli.net/2019/04/06/5ca84ca4ea9fb.png|https://i.loli.net/2019/04/06/5ca84c5878580.jpg|https://i.loli.net/2019/04/06/5ca84c4cd347a.jpg | |||
202.141.160.110(中国电信)<br/>202.141.176.110(中国移动) || 2001:da8:d800:95::110(教育网) || 202.38.95.110(教育网)<br/>202.38.93.153(教育网)|| 无 | |||
--> | |||
|- | |||
| [https://tuna.moe/help/dns/ 清华大学TUNA协会DNS] || <del>101.6.6.6 (教育网)</del> || 2001:da8::666 (教育网) || 无 || 无 | |||
<!-- | |||
|- | |||
| [https://puredns.cn/ Pure DNS] || 123.207.13.111 || 123.207.137.88 | |||
--> | |||
|- | |||
| 其他DNS服务 ||<del>111.230.37.44</del><br/>140.143.226.193<br/>110.43.41.122 || || 40.73.101.101<br/>150.242.98.63 ||<!-- 来自 https://dns.iui.im/#noad --> | |||
|} | |||
部分海外IPv6 DNS服务(如[[Google Public DNS]]的2001:4860:4860::8888和2001:4860:4860::8844)也可能可以给出正确的解析结果,但使用前建议先检查可用性。IPv4 DNS则很可能会受到干扰。关于海外的DNS服务,详见[[公共域名解析服务]]。 | |||
获得DNS服务商的IP地址后,更改DNS服务器的方法如下: | |||
* [https://windows.microsoft.com/zh-cn/windows/change-tcp-ip-settings Windows 7 / Vista] | |||
* [https://support.apple.com/kb/PH18499?viewlocale=zh_CN&locale=zh_CN OS X 10.10 Yosemite] | |||
* [https://www.pc841.com/shoujijiqiao/39077.html Android](第三方教程,不同设备的操作方法可能不同,请参考设备厂商的说明) | |||
* [https://cloudflare-dns.com/zh-Hans/dns/#setup-instructions iOS](第三方教程) | |||
一些[[路由器]]等网络硬件设备也允许用户指定DNS地址,这样一来所有连接到该网络设备并设置了“自动获得DNS服务器地址”([[DHCP]])的计算机、手机等终端设备都会自动使用该DNS服务,较为方便。详情请参阅设备说明书。 | |||
'''***以下内容同时适用于加密DNS和传统DNS***''' | |||
{{注意}}:使用DNS服务时要注意潜在的安全问题。DNS服务器的控制者尽管无法监视您与网站之间传输的内容,但是却有能力记录您的IP地址和您试图访问的网站域名。DNS服务商可能会利用这些信息或将其分享给第三方以用于用户行为收集、广告和政府监管等目的,因此请仔细阅读服务条款,选择自己信任的服务商。另外,DNS服务商也可能有意或无意地为您提供错误甚至有害的结果(这也是防火长城的工作原理之一)。<!--上面提到的DNS都使用了开源的程序获取不受污染的结果,这些程序可以在[[Github]]上获取。-->此外,在首选和备选IP地址中填入不同DNS服务提供者的地址也是可以的。部分地区可能只能解析较少的次数。<!--欲更换DNS服务,首先需要获得新服务商的DNS服务器的IP地址,这通常可以在它们的官网找到。--> | |||
{{建议}}:由于部分DNS服务商的出口服务器全部位于中国大陆以外,或者出口服务器部署有限无法针对所有地区或运营商进行优化,可能会导致用户在访问中国大陆境内的网站时被解析到不合适的IP地址(例如中国网站在海外架设的[[CDN]]),进而产生延迟增大、加载缓慢甚至失败等情况。如您遇到这类现象,可以试着查询当前使用的DNS出口的有关信息,若结果显示当前DNS出口与您的运营商不一致、与您所处的省份不一致或位于中国大陆以外且DNS服务器未使用[https://tools.ietf.org/html/rfc7871 ECS功能](Edns-Client-Subnet),则可以考虑暂时停用上述DNS服务改用运营商的默认DNS或中国大陆主流厂商的智能DNS服务。 | |||
* 使用以下网址可以获得当前DNS用来查询的源服务器(亦即DNS出口)地址,可用于判断DNS出口服务器的区域: | |||
** {{url|https://ipleak.net/}}:能同时给出多组结果,但只显示IP地址的地理位置,不能给出运营商名称。使用方法:在“DNS Addresses”这一节,如果显示“DNS Address detection”或“pending”字样则表示正在查询 | |||
** {{url|https://nstool.netease.com/}}:一次只能给出一条结果,但能同时给出IP地址的地理位置和运营商名称 | |||
* 通过在终端中使用下列命令查询域名<code>edns-client-sub.net</code>的[[域名伺服器記錄類型列表#TXT|TXT记录]]可以获得DNS服务器的ECS功能状态(请将下文中的8.8.8.8替换成您需要查询的DNS入口服务器地址): | |||
::* dig:<code>dig edns-client-sub.net -t TXT @8.8.8.8</code> | |||
::* nslookup:<code>nslookup -type=TXT edns-client-sub.net 8.8.8.8</code> | |||
::** Windows系统下可能需要使用<code>nslookup -qt=TXT edns-client-sub.net 8.8.8.8</code> | |||
:* 查询会得到一个类似于[[JSON|JSON格式]]的结果,例如:<pre>{'ecs_payload':{'family':'1','optcode':'0x08','cc':'[ECS客户端国家代码]','ip':'[ECS客户端IP地址]','mask':'[ECS客户端CIDR码]','scope':'0'},'ecs':'[ECS状态]','ts':'[请求UNIX时间戳]','recursive':{'cc':'[DNS服务器国家代码]','srcip':'[DNS服务器源IP地址]','sport':'[DNS服务器源端口]'}}</pre> | |||
:* 如果DNS服务器没有使用ECS功能(也就是<code>ecs</code>的值为<code>False</code>),则不会出现<code>ecs_payload</code>字段,属正常现象。例如:<pre>{'ecs':'False','ts':'[请求UNIX时间戳]','recursive':{'cc':'[DNS服务器国家代码]','srcip':'[DNS服务器源IP地址]','sport':'[DNS服务器源端口]'}}</pre> | |||
* '''注释:''' | |||
** '''DNS入口'''是DNS服务商用来接收用户请求和返回解析结果的服务器地址,例如Google的8.8.8.8;'''DNS出口'''是DNS服务商用来向权威DNS服务器发起查询的服务器地址,智能DNS服务商通常拥有多个出口节点,能根据用户的地理位置和使用的网络运营商就近分配DNS出口以确保用户能获得合适的解析结果。 | |||
** '''ECS功能'''允许DNS服务器向权威DNS服务器传达您的IP地址从而可以让权威DNS服务器返回合适的IP地址。因此,如果DNS服务商使用了该功能(如果查询返回的结果包含<code>'ecs':'True'</code>则说明DNS服务器使用了ECS功能;如果包含<code>'ecs':'False'</code>,则说明未使用ECS功能),那么不论DNS出口位于何处,返回给用户的结果都是合适的。 | |||
* {{注意}}:维基媒体服务器的部分IP被封锁,而DNS服务器仍然可能会将相关域名解析到被封锁的IP,此时需要仍然修改Hosts文件处理此问题,或设置[[#IP重定向|IP重定向]]。 | |||
=== 域前置 === | |||
[[域前置]]可以让用户向防火长城展示经过伪装的访问信息,借此避开SNI封锁,也就是说虽然访问的是维基百科,但在防火长城看来是在访问别的网站,从而使得连接不会被中断。但方法操作起来较为复杂,需要用户具有相当计算机相关知识,故不建议使用。若你有足够能力,也可以查看[[Help_talk:如何访问维基百科#修改火狐浏览器关于SNI的部分|维基百科用户就该方法进行过的讨论]]来进一步了解。 | |||
=== IP重定向 === | |||
有时DNS服务器会将部分域名解析到被封锁或无效的IP,此时可以将这些IP重定向到正确的IP。<!--以下设被封锁的IP为198.35.26.96(也可以是被污染的解析结果),可正常访问的IP为208.80.153.224。--> | |||
==== 路由器IP转发 ==== | |||
如果你的路由器支持DNAT功能,则可以设置IP重定向。 | |||
==== 使用iptables语句 ==== | |||
{{注意}}:此方法仅适用于Linux操作系统,且[https://github.com/microsoft/WSL/issues/767 不适用于Windows Subsystem for Linux]。 | |||
此方法未经检验,故暂时隐藏。请查看源代码 |
2020年2月7日 (五) 20:30的版本
感谢您在H萌娘的编辑
- 重定向 帮助:如何訪問
偷懒不想创建页面
|
本文旨在为访问中文里萌娘有困难障碍的中文用户,提供有效安全的访问方法。 Template:Pp-vandalism Template:NoteTA Template:Wikipedia how-to Template:Nutshell Template:Newbies
本文旨在为访问包括中文维基百科在内的部分维基媒体基金会旗下项目有困难障碍的中文用户,提供有效安全的访问方法。
中国大陆直连情况
維基百科的網址如下:
- https://zh.wikipedia.org/ (中文維基百科桌面版)
- https://zh.m.wikipedia.org/ (中文維基百科移动版)
- https://www.wikipedia.org/ (多语言入口,可以通过链接访问或搜索任意语言版本的维基百科)
自2015年6月中旬起,维基媒体基金会对旗下项目进行了强制性加密(HTTPS),未加密的明文版页面(HTTP)会被强制跳转到对应的加密版页面。如果访问中浏览器出现证书错误等提示,或者页面停留在明文版而未跳转至加密版(即地址栏不以https://
开头),说明连接极有可能已经受到了干扰,请停止访问,不要添加例外,以免传输的数据被窃听。
如果你在直接连接(未使用代理、4567等手段)维基百科时遇到的情况和下文描述不尽相同,也欢迎留下反馈信息。
IPv4连接
目前,在中国大陆直接访问维基媒体基金会的不同项目可能会遇到如下情况: Template:Wiki-accessibility-CHN 另外,由于目前维基媒体位于美国旧金山的服务器遭遇部分封锁,若您的DNS解析结果为198.35.26.96,则所有的项目均无法访问。
IPv6连接
维基媒体基金会旗下项目均支持IPv6连接。教育网和部分移动数据连接会使用IPv6,因此在不使用任何代理的情况下有可能可以直接访问维基百科。 然而,防火长城对维基百科部分项目的DNS污染可能会影响到IPv6地址的解析。如果有必要,仍然需要手动调整IPv6地址(参见修正域名解析)。
维基媒体服务器列表
维基媒体基金会使用下列IP地址提供服务入口,您可以使用下面的IP地址替换后续教程(如#修正域名解析)中提供的IP地址。text-lb
和upload-lb
之间的数据不互通,通常应该使用text-lb
中的IP地址,但是对于图片服务器(upload.wikimedia.org
)及地图服务(maps.wikimedia.org
)则应该使用upload-lb
中的IP地址。您可根据延迟和丢包率等测试数据决定使用哪个服务器。
另需指出Toolforge单独拥有数据中心,因此不使用以下任何IP地址,而有专用IP地址185.15.56.11
。
教育网屏蔽了部分IPv6地址,使用前应确认可用性。
位置 | 数据中心名 | 对应项目 | 网络地址 | |||
---|---|---|---|---|---|---|
text-lb | upload-lb | |||||
IPv4地址 | IPv6地址 | IPv4地址 | IPv6地址 | |||
Template:USA旧金山 | ulsfo | 大部分项目 | 1 198.35.26.96 | Template:Y 2620:0:863:ed1a::1 | Template:Y 198.35.26.112 | Template:Y 2620:0:863:ed1a::2:b |
Template:USA卡罗尔顿 | codfw | 大部分项目 | Template:Y 208.80.153.224 | Template:Y 2620:0:860:ed1a::1 | Template:Y 208.80.153.240 | Template:Y 2620:0:860:ed1a::2:b |
Template:USA阿什本 | eqiad | 大部分项目 | Template:Y 208.80.154.224 | Template:Y 2620:0:861:ed1a::1 | Template:Y 208.80.154.240 | Template:Y 2620:0:861:ed1a::2:b |
Template:NED阿姆斯特丹 | esams | 大部分项目 | Template:Y 91.198.174.192 | Template:Y 2620:0:862:ed1a::1 | Template:Y 91.198.174.208 | Template:Y 2620:0:862:ed1a::2:b |
Template:SGP | eqsin | 大部分项目 | Template:Y 103.102.166.224 | Template:Y 2001:df2:e500:ed1a::1 | Template:Y 103.102.166.240 | Template:Y 2001:df2:e500:ed1a::2:b |
Template:Y 在中国大陆可以直接连接的IP地址 |
2 在中国大陆不能直接连接的IP地址 |
通过查询 text-lb.(数据中心名).wikimedia.org
、upload-lb.(数据中心名).wikimedia.org
(lb是load balancer的缩写)可以获得上述的IP地址。此外也可以参考meta:Wikimedia servers或Wikipedia:服务器页面获得维基媒体基金会服务器的相关信息。
直接连接
本地反向代理
因维基百科的ip可以正常连接,所以可以通过本地反代的方式规避防火长城的SNI检测。使用Nginx进行本地反向代理,详见此处。nginx下载并配置后直接双击运行即可;如需要停止服务,可使用nginx -s quit命令或直接在任务管理器(或Linux中使用kill命令)终止nginx进程。
这里提供了一个完整配置(请删除nginx.conf的“server 198.35.26.96:443;”一行),但只支持维基百科。
如果您不懂得如何配置,可以使用Accesser(Python编写)。
修正域名解析
Template:Shortcut 截至2019年8月19日,防火长城会对部分维基媒体项目进行DNS污染和/或基于SNI检测的TCP连接重置。对此您可以在设置修正域名解析(具体方法参见下文)后先访问未被封锁的维基媒体基金会旗下的其他项目(例如元维基或维基数据)再切换至被封锁的项目,即可在接下来的一段时间内正常访问。如果上述操作无效,可以等待几分钟后重试,通常即可成功连接。您也可以使用代理服务访问维基百科以获得更加稳定的体验。
目前已知不能完全正常访问的项目包括:
- 所有语言版本的维基百科(所有以
.wikipedia.org
结尾的域名) - 中文维基语录桌面版(
zh.wikiquote.org
) - 维基共享资源移动版(
commons.m.wikimedia.org
) - 中文维基新闻桌面版和移动版(
zh.wikinews.org
、zh.m.wikinews.org
) - 英文维基新闻桌面版(
en.wikinews.org
)
修正域名解析后,用户在首次访问中文维基百科时,需输入以https://
开头的网址方可成功连接,否则仍会遭到屏蔽。由于应用了HSTS技术,使用较新版本浏览器的用户如果成功进入了维基媒体基金会旗下项目的页面,在之后的两周(1209600秒)内再次访问相同项目时浏览器会自动将http://
改为https://
来访问加密版页面而无须通过服务器进行该跳转。
(i)注意 :
- 使用这些按钮中的地址可以一键从其他维基媒体项目切换到中文维基百科(复制:桌面设备右键,移动设备长按):Template:Clickable button 2Template:Clickable button 2Template:Clickable button 2Template:Clickable button 2Template:Clickable button 2Template:Clickable button 2Template:Clickable button 2Template:Clickable button 2。
- 修正域名解析不会改变您的IP地址,因此您仍然会对维基媒体基金会旗下项目展现运营商的真实IP地址。不过不用担心,对于注册用户而言,其IP地址是不会对其他用户显示的(除了需要用户查核等特殊情况),仅根据维基媒体基金会的隐私政策储存在服务器后台。假如真的遇到用户查核,您的IP地址也不会和别人的混淆,进而避免被误认为是破坏者的傀儡/马甲/小号。
(i)注意 :
- 若您已经因为使用代理服务器或4567编辑维基百科而被自动封禁,现在希望通过设置Hosts或DNS服务器编辑维基百科,请在完成修改之后尝试不使用代理或关闭4567,直接访问维基百科。
- 由于phab:T152462,你可能还需要清空你的浏览器Cookie,或删除名为
zhwikiBlockID
的Cookie,才能正常编辑维基百科。
- 由于phab:T152462,你可能还需要清空你的浏览器Cookie,或删除名为
- TCP连接断开之后需要重复上面的步骤才能继续访问。因此使用该方法时请尽量避免进行绕过浏览器缓存操作。
- 如果你的浏览器安装了自动刷新网页的插件,你可以对某个未被封锁的维基媒体项目网页进行定期刷新以避免重复上面的步骤。
- 你也可以使用JavaScript脚本自动完成此操作,请登录后编辑页面Special:MyPage/common.js并将以下内容添加进去:
(function(){
var sites = [
'www.mediawiki.org',
'www.wikidata.org',
'incubator.wikimedia.org',
'meta.wikimedia.org',
'en.wiktionary.org',
'wikitech.wikimedia.org',
'commons.wikimedia.org'
]
var activateSni = function(){
mw.loader.using('mediawiki.ForeignApi').done(function(){
(new mw.ForeignApi('https://'+sites[Math.floor(Math.random() * sites.length)]+'/w/api.php')).get({
action: 'query',
meta: 'userinfo',
sand: Math.random() * 10000
})
sites.push(sites.shift())
})
window.setTimeout(activateSni, 30000 + Math.random() * 20000)
}
activateSni()
})()
Hosts文件
Template:Shortcut Hosts文件存在于计算机本地,通过修改该文件可以改变域名至IP地址的映射。
修改Hosts文件的具体做法是:
- 获取设备的管理员权限或者对设备进行root/越狱操作:
- 打开Hosts文件:
- Windows系统:從Template:Key press菜單中找到Template:Key press程序,右键选择Template:Key press(根据用户帐户控制策略,可能需要输入管理员账户的密码),使用左上角菜单中的Template:Key press→Template:Key press,在下面的文件名中输入
C:\Windows\System32\drivers\etc\hosts
回车打开文件。(取决于系统安装位置的不同,System32的位置也可能不同。可以通过在命令提示符中运行echo %WINDIR%\system32\etc\hosts
确认。如果您使用64位系统,请保证自己使用的编辑器为64位编辑器——Windows对于32位程序会暴露一个虚假的System32(即SysWow64),其中不含hosts。) - 类UNIX系统(Linux、Android):一般都可在类似于
/etc/hosts
的位置找到,然后使用gedit(图形界面)或vi(终端界面)编辑。 - 其他系统:请参见hosts文件。
- Windows系统:從Template:Key press菜單中找到Template:Key press程序,右键选择Template:Key press(根据用户帐户控制策略,可能需要输入管理员账户的密码),使用左上角菜单中的Template:Key press→Template:Key press,在下面的文件名中输入
- 在该文件中加入下列内容(可根据设备类型选择添加):
- 维基媒体服务器列表Template:`桌面设备参考格式Template:`移动设备参考格式
- (&)建议 :维基媒体基金会有多个IP地址,您可以参考维基媒体的服务器列表并根据实际访问情况选择填写不同的IP地址。为方便起见,在桌面设备上可以只添加下文的前半部分,在移动设备上可以只添加下文的后半部分。另外由于维基百科有数百种语言版本,您可以根据实际情况选择性地添加项目以免列表过长造成维护困难,例如对于只会普通话的用户,可以只添加中文项目而跳过粤文、藏文等项目。下文仅为格式参考,具体添加哪些语言版本根据您的使用习惯而定,如果您因特殊情况需要添加较多语言版本,可使用此链接中列出的全语言版本hosts。
- (i)注意 :Hosts文件不支持通配符,因此需要逐个添加地址。另外,由于SNI检测的存在,使用时需要确保Hosts列表中的IP地址与运营商的解析结果保持一致,解析结果可以通过查询未被DNS污染的维基媒体域名获得,如
mediawiki.org
、wikidata.org
、w.wiki
。
# Wikimedia Start 維基媒體開始
103.102.166.224 meta.wikimedia.org
2620:0:863:ed1a::1 meta.wikimedia.org
# Wikimedia End 維基媒體結束
# Wikipedia Start 維基百科開始
103.102.166.224 www.wikipedia.org
2620:0:863:ed1a::1 www.wikipedia.org
103.102.166.224 en.wikipedia.org
2620:0:863:ed1a::1 en.wikipedia.org
103.102.166.224 zh.wikipedia.org
2620:0:863:ed1a::1 zh.wikipedia.org
103.102.166.224 ja.wikipedia.org
2620:0:863:ed1a::1 ja.wikipedia.org
103.102.166.224 zh-yue.wikipedia.org
2620:0:863:ed1a::1 zh-yue.wikipedia.org
103.102.166.224 gan.wikipedia.org
2620:0:863:ed1a::1 gan.wikipedia.org
103.102.166.224 wuu.wikipedia.org
2620:0:863:ed1a::1 wuu.wikipedia.org
103.102.166.224 zh-min-nan.wikipedia.org
2620:0:863:ed1a::1 zh-min-nan.wikipedia.org
103.102.166.224 cdo.wikipedia.org
2620:0:863:ed1a::1 cdo.wikipedia.org
103.102.166.224 hak.wikipedia.org
2620:0:863:ed1a::1 hak.wikipedia.org
103.102.166.224 bo.wikipedia.org
2620:0:863:ed1a::1 bo.wikipedia.org
103.102.166.224 ug.wikipedia.org
2620:0:863:ed1a::1 ug.wikipedia.org
103.102.166.224 zh-classical.wikipedia.org
2620:0:863:ed1a::1 zh-classical.wikipedia.org
#Wikipedia End 維基百科結束
#Wikinews Start 維基新聞開始
103.102.166.224 zh.wikinews.org
2620:0:863:ed1a::1 zh.wikinews.org
103.102.166.224 en.wikinews.org
2620:0:863:ed1a::1 en.wikinews.org
#Wikinews End 維基新聞結束
#Wikiquote Start 維基文庫開始
103.102.166.224 zh.wikiquote.org
2620:0:863:ed1a::1 zh.wikiquote.org
#Wikiquote End 維基文庫結束
# Wikimedia Start 維基媒體開始
103.102.166.224 meta.m.wikimedia.org
2620:0:863:ed1a::1 meta.m.wikimedia.org
103.102.166.224 commons.m.wikimedia.org
2620:0:863:ed1a::1 commons.m.wikimedia.org
# Wikimedia End 維基媒體結束
# Wikipedia Start 維基百科開始
103.102.166.224 www.wikipedia.org
2620:0:863:ed1a::1 www.wikipedia.org
103.102.166.224 en.m.wikipedia.org
2620:0:863:ed1a::1 en.m.wikipedia.org
103.102.166.224 zh.m.wikipedia.org
2620:0:863:ed1a::1 zh.m.wikipedia.org
103.102.166.224 ja.m.wikipedia.org
2620:0:863:ed1a::1 ja.m.wikipedia.org
103.102.166.224 zh-yue.m.wikipedia.org
2620:0:863:ed1a::1 zh-yue.m.wikipedia.org
103.102.166.224 gan.m.wikipedia.org
2620:0:863:ed1a::1 gan.m.wikipedia.org
103.102.166.224 wuu.m.wikipedia.org
2620:0:863:ed1a::1 wuu.m.wikipedia.org
103.102.166.224 zh-min-nan.m.wikipedia.org
2620:0:863:ed1a::1 zh-min-nan.m.wikipedia.org
103.102.166.224 cdo.m.wikipedia.org
2620:0:863:ed1a::1 cdo.m.wikipedia.org
103.102.166.224 hak.m.wikipedia.org
2620:0:863:ed1a::1 hak.m.wikipedia.org
103.102.166.224 bo.m.wikipedia.org
2620:0:863:ed1a::1 bo.m.wikipedia.org
103.102.166.224 ug.m.wikipedia.org
2620:0:863:ed1a::1 ug.m.wikipedia.org
103.102.166.224 zh-classical.m.wikipedia.org
2620:0:863:ed1a::1 zh-classical.m.wikipedia.org
#Wikipedia End 維基百科結束
#Wikinews Start 維基新聞開始
103.102.166.224 zh.m.wikinews.org
2620:0:863:ed1a::1 zh.m.wikinews.org
#Wikinews End 維基新聞結束
Template:HideF 注:元维基是可以直接访问的,但是为了防止DNS解析结果变动造成访问不便,可以先访问此地址再访问中文维基百科等项目。您也可以根据个人喜好改为其他可直接访问的项目。
保存文件。如果保存的时候出现任何错误提示,如“权限不足”等,请允许电脑保存;如果杀毒软件提示这一举动存在安全风险,请您忽视。按照本教程的方式修改Hosts文件不会对您的电脑造成损害。通常修改后的Hosts记录可以立即生效,但若保存之后还不能正常访问,您可以通过清除DNS缓存来实现:
- 重新启动设备。
- 执行下列命令:
- Windows:
ipconfig /flushdns
- OS X / macOS:
lookupd -flushcache
或dscacheutil -flushcache
- Linux:
sudo service nscd restart
- Ubuntu:
sudo /etc/init.d/dns-clean start
- Ubuntu:
- Android:开启再关闭飞行模式
- Windows:
值得注意的是,有的时候IP地址虽然能正常连接,但是非加密状态下URL会被防火长城进行关键字拦截,导致最终访问失败。
加密DNS
针对DNS的加密技术包括DNS over TLS(DoT)和DNS over HTTPS(DoH),它们比传统DNS更加安全,可以对解析结果进行加密以防止被第三方窃听或篡改,同时也可以作为无法修改Hosts且DNS失效的情况下的替代方案。
- DoT服务器列表:DNS over TLS#公共DNS服务器列表
- DoH服务器列表:DNS over HTTPS#公共DNS
- Android
Android从9.0开始提供了原生的DoT支持,也就是私人DNS,配置方法是:
- 打开“设置”;
- 点击“网络和互联网”,再点击“高级”,再点击“私人 DNS”;
- 然后在打开的窗口中输入DoT服务器地址,只需要输入IP地址或域名,不需要加上协议或端口。
对于华为和荣耀手机用户,EMUI 9.0以上系统版本中有此功能,可以在“设置>无线和网络>加密DNS”中找到。
对于Android 9.0以下的系统,可以使用软件进行DoT/DoH查询:
- Intra(直接下载):由于此软件的默认DoH服务器
dns.google.com
受到IP阻断,所以需要设置其他服务器,点击软件左上角的菜单按钮,再点击“设置”,再点击“选择 DNS-over-HTTPS 服务器”,然后选择“自定义服务器网址”并输入DoH服务器地址。或者选择cloudflare-dns.com
。 - 1.1.1.1 App(直接下载)
- Firefox
Firefox从60.0开始提供了DoH支持,配置方法是:
- 桌面版:
- 在地址栏输入
about:preferences
并打开; - 将页面翻到最下方,点击“网络设置”下方的“设置”按钮;
- 勾上“启用基于 HTTPS 的 DNS”选项;
- 选择“自定义”(如果您想使用默认的DoH服务器则可以不修改);
- 填入DoH服务器地址,需以
https://
开头,端口可选。
- 在地址栏输入
- 注意:通过图形界面设置后Firefox默认会在DoH查询失败时回退到传统DNS,如果需要用DoH做所有的DNS查询:
- 在地址栏输入
about:config
并打开,如果出现警告提示请继续; - 在页面上方的搜索框输入
network.trr.mode
; - 修改
network.trr.mode
的值为3
。
- 移动版:
- 在地址栏输入
about:config
并打开,如果出现警告提示请继续; - 在页面右上角的搜索框输入
network.trr.uri
; - 修改
network.trr.uri
的值为DoH服务器地址(如果您想使用默认的DoH服务器则可以不修改),需以https://
开头,端口可选; - 在页面右上角的搜索框输入
network.trr.mode
; - 修改
network.trr.mode
的值为3
(如果想在DoH查询失败时回退到传统DNS,请设置为2
)。
- 在地址栏输入
Chromium瀏覽器內核自78版本開始支援部分DoH服務;基於Chromium的瀏覽器(Google Chrome, Opera, Vivaldi, Brave等)均可使用此功能。
啟用方法:
- 將系統 DNS 設定為以下服務提供者之一的地址:
- Cleanbrowsing
- Cloudflare
- Comcast
- DNS.SB
- OpenDNS
- Quad9
- 在瀏覽器中前往 chrome://flags/#dns-over-https
- 將最頂端的選項中的「Default」改為「Enabled」
- 重新啟動瀏覽器
传统DNS
通常情况下无论使用设置在中国大陆的DNS服务还是使用设置在海外的DNS服务,因为解析结果都需要穿过防火长城,所以都会被污染。但是仍有一些设置在中国大陆的小型DNS使用技术手段回避防火长城的污染并提供不受污染的结果,通常使用这些小型DNS也能够访问部分其他被封锁的网站,此类DNS服务包括:(带删除线的项目可能无法使用,或不对公众开放使用)
服务提供者 | 首选网络地址 | 备选网络地址 | ||
---|---|---|---|---|
IPv4地址 | IPv6地址 | IPv4地址 | IPv6地址 | |
中国科学技术大学DNS | 202.141.162.123 (中国电信) |
|||
清华大学TUNA协会DNS | 2001:da8::666 (教育网) | 无 | 无 | |
其他DNS服务 | 140.143.226.193 110.43.41.122 |
40.73.101.101 150.242.98.63 |
部分海外IPv6 DNS服务(如Google Public DNS的2001:4860:4860::8888和2001:4860:4860::8844)也可能可以给出正确的解析结果,但使用前建议先检查可用性。IPv4 DNS则很可能会受到干扰。关于海外的DNS服务,详见公共域名解析服务。
获得DNS服务商的IP地址后,更改DNS服务器的方法如下:
- Windows 7 / Vista
- OS X 10.10 Yosemite
- Android(第三方教程,不同设备的操作方法可能不同,请参考设备厂商的说明)
- iOS(第三方教程)
一些路由器等网络硬件设备也允许用户指定DNS地址,这样一来所有连接到该网络设备并设置了“自动获得DNS服务器地址”(DHCP)的计算机、手机等终端设备都会自动使用该DNS服务,较为方便。详情请参阅设备说明书。
***以下内容同时适用于加密DNS和传统DNS***
(i)注意 :使用DNS服务时要注意潜在的安全问题。DNS服务器的控制者尽管无法监视您与网站之间传输的内容,但是却有能力记录您的IP地址和您试图访问的网站域名。DNS服务商可能会利用这些信息或将其分享给第三方以用于用户行为收集、广告和政府监管等目的,因此请仔细阅读服务条款,选择自己信任的服务商。另外,DNS服务商也可能有意或无意地为您提供错误甚至有害的结果(这也是防火长城的工作原理之一)。此外,在首选和备选IP地址中填入不同DNS服务提供者的地址也是可以的。部分地区可能只能解析较少的次数。
(&)建议 :由于部分DNS服务商的出口服务器全部位于中国大陆以外,或者出口服务器部署有限无法针对所有地区或运营商进行优化,可能会导致用户在访问中国大陆境内的网站时被解析到不合适的IP地址(例如中国网站在海外架设的CDN),进而产生延迟增大、加载缓慢甚至失败等情况。如您遇到这类现象,可以试着查询当前使用的DNS出口的有关信息,若结果显示当前DNS出口与您的运营商不一致、与您所处的省份不一致或位于中国大陆以外且DNS服务器未使用ECS功能(Edns-Client-Subnet),则可以考虑暂时停用上述DNS服务改用运营商的默认DNS或中国大陆主流厂商的智能DNS服务。
- 使用以下网址可以获得当前DNS用来查询的源服务器(亦即DNS出口)地址,可用于判断DNS出口服务器的区域:
- Template:Url:能同时给出多组结果,但只显示IP地址的地理位置,不能给出运营商名称。使用方法:在“DNS Addresses”这一节,如果显示“DNS Address detection”或“pending”字样则表示正在查询
- Template:Url:一次只能给出一条结果,但能同时给出IP地址的地理位置和运营商名称
- 通过在终端中使用下列命令查询域名
edns-client-sub.net
的TXT记录可以获得DNS服务器的ECS功能状态(请将下文中的8.8.8.8替换成您需要查询的DNS入口服务器地址):
- dig:
dig edns-client-sub.net -t TXT @8.8.8.8
- nslookup:
nslookup -type=TXT edns-client-sub.net 8.8.8.8
- Windows系统下可能需要使用
nslookup -qt=TXT edns-client-sub.net 8.8.8.8
- Windows系统下可能需要使用
- dig:
- 查询会得到一个类似于JSON格式的结果,例如:
{'ecs_payload':{'family':'1','optcode':'0x08','cc':'[ECS客户端国家代码]','ip':'[ECS客户端IP地址]','mask':'[ECS客户端CIDR码]','scope':'0'},'ecs':'[ECS状态]','ts':'[请求UNIX时间戳]','recursive':{'cc':'[DNS服务器国家代码]','srcip':'[DNS服务器源IP地址]','sport':'[DNS服务器源端口]'}}
- 如果DNS服务器没有使用ECS功能(也就是
ecs
的值为False
),则不会出现ecs_payload
字段,属正常现象。例如:{'ecs':'False','ts':'[请求UNIX时间戳]','recursive':{'cc':'[DNS服务器国家代码]','srcip':'[DNS服务器源IP地址]','sport':'[DNS服务器源端口]'}}
- 注释:
- DNS入口是DNS服务商用来接收用户请求和返回解析结果的服务器地址,例如Google的8.8.8.8;DNS出口是DNS服务商用来向权威DNS服务器发起查询的服务器地址,智能DNS服务商通常拥有多个出口节点,能根据用户的地理位置和使用的网络运营商就近分配DNS出口以确保用户能获得合适的解析结果。
- ECS功能允许DNS服务器向权威DNS服务器传达您的IP地址从而可以让权威DNS服务器返回合适的IP地址。因此,如果DNS服务商使用了该功能(如果查询返回的结果包含
'ecs':'True'
则说明DNS服务器使用了ECS功能;如果包含'ecs':'False'
,则说明未使用ECS功能),那么不论DNS出口位于何处,返回给用户的结果都是合适的。
- (i)注意 :维基媒体服务器的部分IP被封锁,而DNS服务器仍然可能会将相关域名解析到被封锁的IP,此时需要仍然修改Hosts文件处理此问题,或设置IP重定向。
域前置
域前置可以让用户向防火长城展示经过伪装的访问信息,借此避开SNI封锁,也就是说虽然访问的是维基百科,但在防火长城看来是在访问别的网站,从而使得连接不会被中断。但方法操作起来较为复杂,需要用户具有相当计算机相关知识,故不建议使用。若你有足够能力,也可以查看维基百科用户就该方法进行过的讨论来进一步了解。
IP重定向
有时DNS服务器会将部分域名解析到被封锁或无效的IP,此时可以将这些IP重定向到正确的IP。
路由器IP转发
如果你的路由器支持DNAT功能,则可以设置IP重定向。
使用iptables语句
(i)注意 :此方法仅适用于Linux操作系统,且不适用于Windows Subsystem for Linux。
此方法未经检验,故暂时隐藏。请查看源代码