《PIXIV网页版及客户端访问恢复指南》历史存档

说明:此目录及后续内容为2018年9月13日 GFW 升级之前的教程,目前均已无法直接使用。一方面都是自己一个字一个字码出来的,所以舍不得删掉,所以暂时移到这个页面存放,可作为各平台 hosts 修改方法的参考。目前修改 hosts 需配合Nginx 本地代理方案使用才能访问 P 站!

目录

I. 网页版修复(修改hosts)
1. Windows
2. Mac
3. Linux Distributions
II. 客户端修复
1. Android(按推荐度排序)
· 方法一:修改hosts(无root权限版)
· 方法二:修改DNS(通过APP,已失效
· 方法三:修改DNS(直接修改网络,已失效
· 方法四:修改hosts(需root权限版)
2. iOS(按推荐度排序)
· 方法一:安装APP(需要海外Apple ID,已失效
· 方法二:修改DNS(已失效
3. 手机通用方法:(随身WiFi,需配合电脑使用)
III. SS/SSR 拯救之道
附:无法登陆/注册问题

注:本贴相关评论请提交至本文末的评论区,提问前请确认已认真读完教程。无论选择哪一种方法,都需要通过 https 访问,而通过 http 访问照样会翻车
举个栗子,请访问 https://www.pixiv.net,而不要访问 http://www.pixiv.net。

前言

昨天下午突然发现PIXIV的网页打不开了,一开始还没想到是被墙了,直到看到pixiv官方微博的一句「中国からpixivが見れないようです。調査中です。。 」

本来不应该怕被ban这种事,但是不想我的服务器IP被PIXIV禁了,所以我无法通过VPN访问。被禁的原因很多,不过我猜测这和Vultr脱不了干系。用服务器ping了pixiv.net,能ping通,但是没有返回,所以基本的判断是被pixiv拒绝访问。为什么?一个可能是因为我这个IP之前被人用过,而且用于攻击Pixiv或其关联网站,因此被禁;另一个可能是Vultr的IP段都被禁了,因为我不止一次看到Vultr的服务器被用来做肉鸡,另外不排除Vultr的主机上部署有大量爬虫,所以被禁。

* 2018.12.3 补充:经过大量测试,Pixiv 实际上只封禁了 Vultr 45打头的 IP,如果你运气好拿到了其他 IP 段,那就可以正常代理访问 P 站啦~45 IP 段主要出现在日本和新加坡,所以不妨试试欧洲线路,其中法兰克福和阿姆斯特丹速度和东京不相上下的哦。

总之VPN用不成,只能想别的办法了。

以下是正文,小白都能看得懂的教程

I. 网页版恢复教程

因防火墙升级,目前此方法直接使用还不行的,请先阅读文章开头部分的新方法。

以下是针对Windows的改法,其他系统类似,可自己Google hosts文件的位置。MAC用户看这里。Linux各发行版:sudo nano /etc/hosts,原则上立即生效。

首先,用文本编辑器(比如记事本)打开 "C:\Windows\System32\drivers\etc\hosts" 文件(64位和32位系统都是这个路径,不熟悉的注意看下后面的补充及截图),最下方直接粘贴下面片段:
* 使用 Nginx 反代理方案的同学直接使用压缩包里的 hosts 文件即可,其与下方内容一致。

#Pixiv Start
127.0.0.1       pixiv.net 
127.0.0.1       www.pixiv.net 
127.0.0.1       ssl.pixiv.net
127.0.0.1       accounts.pixiv.net 
127.0.0.1       touch.pixiv.net
127.0.0.1       oauth.secure.pixiv.net
127.0.0.1       dic.pixiv.net
127.0.0.1       en-dic.pixiv.net 
127.0.0.1       sketch.pixiv.net
127.0.0.1       payment.pixiv.net
127.0.0.1       factory.pixiv.net 
127.0.0.1       comic.pixiv.net  
127.0.0.1       novel.pixiv.net 
127.0.0.1       imgaz.pixiv.net 
127.0.0.1       sensei.pixiv.net
127.0.0.1       fanbox.pixiv.net
127.0.0.1       i.pximg.net
210.140.131.145 source.pixiv.net
210.129.120.50  app-api.pixiv.net  
74.120.148.207  g-client-proxy.pixiv.net 
210.140.131.145 i1.pixiv.net 
210.140.131.145 i2.pixiv.net 
210.140.131.145 i3.pixiv.net 
210.140.131.145 i4.pixiv.net 
210.140.131.159 d.pixiv.org 
210.140.92.135  pixiv.pximg.net  
210.140.92.134  s.pximg.net
#Pixiv End

以上内容填入 hosts 文件后保存(遇到权限问题无法保存看这里),之后就应该已经可以正常访问了。如果仍然无法访问,请按下 + R 键,输入 cmd,回车,进入 cmd 后输入 ipconfig /flushdns,回车执行以刷新DNS缓存,若还不行请尝试清理浏览器缓存、Cookie、停用所有浏览器插件并重启电脑。

另外,建议不要使用国产浏览器!诸如360浏览器等的云端加速功能,因为其代理服务器是在国内的,开启了加速功能流量实际就得经过国内的服务器,那样等于白改hosts了。建议使用 Mozilla Firefox FireFoxGoogle Chrome Chrome、Microsoft Edge 等正经一点儿的浏览器。

补充:

请注意: hosts文件无后缀,无后缀,无后缀! 同时 hosts 文件中不能有 http/https 等开头和斜杠 /

文件位置如下:

需要粘贴的如下:

如果你嫌上面的操作太麻烦了,或者极少数电脑原本就没有hosts文件,那么我已经上传了现成的hosts文件,下载后覆盖原文件或放到以上指定的路径就行了:下载

若出现站内某些按钮点击后无法打开,可尝试将跳转后无法加载的子域名加入hosts列表,按 210.129.120.41 xxx.xxx.xxx 这样的格式,将xxx.xxx.xxx换成对应的子域名,而 IP 部分则需要通过境外服务器的 ping 指令来获取,所以如果发现某个域名无法访问欢迎留言告诉我

相对于使用vpn,这个办法更彻底一些而且方便得多。同时,如果你了解基础的网络原理,你会知道hosts解析是永远优先于DNS解析的,对于DNS污染,修改hosts当然是最有效也最彻底的方法。

IMPORTANT: Windows当然也可像目录上所列的各手机系统一样通过修改网络DNS访问,但我个人非常不建议使用,故未列在目录中。如果一定要尝试请看这里:Windows 修改 DNS,注意里面提供的 1.1.1.1 DNS 在大陆并不能访问 Pixiv,DNS 信息应参照以下手机的填写,提醒一定记住默认配置并确保自己有能力改回来,然后不必要的时候尽量改回默认(否则可能影响网速、延时)。

II. 客户端恢复教程

上方的 hosts 目前暂时不适合手机使用,等我找到手机上运行 Nginx 的方法就 OK 了。目前手机据说还可以用第二组 DNS,不过最好的方法依然是 VPN。此处可以获取旧版 hosts 文件,虽然不知道还有什么用。

(1) Android
方法一

此方法强烈推荐。安装 Virtual Hosts (下载),然后再到这里下载基础版hosts文件。

启动Virtual Hosts,添加刚刚下载的hosts文件(Android系统默认下载位置为Download文件夹,其他浏览器下载位置请自行百度,hosts文件就叫hosts,没有文件类型后缀,如下载后出现后缀请自行删除),然后首页开关启动即可。

方法二

非常简单,下载 DNS Changer,按照以下截图配置(截图上的DNS已失效,请更换),启用后即可直接通过客户端访问。

公共DNS随时可能失效,截图下方留下了多组DNS以作备用(横向看,DNS1+DNS2为一组DNS)。

DNS 1DNS 2Provider
101.132.183.99193.112.15.186PdoMo-DNS
123.207.56.160留空即可unknown
111.230.37.44留空即可unknown
106.14.152.170留空即可BAI DNS
202.141.178.13202.141.162.123USTC
119.23.248.241111.231.199.82FUN DNS
115.159.146.99123.206.21.48AIXYZ DNS
123.207.137.88115.159.220.214Pure DNS

如以上DNS均不可用,请尝试其他方法,或自行寻找/搭建可用DNS。

Android较低版本用户可以试试这个(支持Android4.0.3+,不过似乎有广告)。

我的建议是通过APP设置DNS,不需的时候关闭。因为DNS服务器带宽有限,如果你直接修改了WiFI的DNS,那么网络拥挤时可能会严重影响其他网站的正常访问速度。如果仍要直接修改请继续看。

方法三

如以上方法不成功请按照这里修改 DNS,正如里面说的安卓改 DNS 确实很麻烦的。另外修改 DNS 可能对需要网页登陆的公共 WIFI 产生影响,不建议对此类 WIFI 使用,如遇无法登陆请先选择“忘记此 WIFI”后再重新登陆。

方法四

不同于方法一,如果你有能力修改Android的hosts,那么可以参考以上的电脑教程(Android的hosts文件格式与Windows略有不同,请不要直接覆盖)。

好像有人下载不到pixiv的客户端?到这里下吧https://m.apkpure.com/pixiv/jp.pxv.android(Google Play 版官方客户端)。

另外推荐一个不错的第三方客户端 Pivision

(2) iOS
方法一

iOS客户端修复原理与Android原理一致,推荐一个APP:DNS Override

方法二

iOS也可按照这个方法手动修改DNS:修改DNS的方法,注意里面提供的 1.1.1.1 DNS 在大陆并不能访问 Pixiv,请使用上面表格里的 DNS。另该法可能对需要网页登陆的公共WIFI产生影响,不建议对此类WIFI使用。

本人无iOS设备测试,有相应设备的志愿者测试后可以反馈给我一下。

@Dariolife 说:“iOS可以在无线局域网设置里直接修改DNS,不用下载app(主要是DNS override大陆苹果商店里没有,要切换海外账号才找到)。”

@BCTV 同学还给了一个方法,类似 Android 的方法一,详情可以艾特TA~

(3) 万能方法

适用于所有移动设备——直接分享电脑网络给移动设备使用。

如图,Windows 10 网络设置下可以分享网络作为移动热点使用,按照前文的方法修改了 hosts,这里手机连上就能直接访问 pixiv 了。

如果你的电脑没有这个功能,不妨试试这个:购买地址利益无关,不是广告

III. SS/SSR 拯救之道

如前言所说我的 SSR 代理 IP 被 Pixiv 封禁了,那么是不是代理完全没用了呢?今天发现并不是。

下面以 Android 为例(其他系统可以参考这里):

SSR 客户端中(SS 也有一个使用远程 DNS 的选项,与此一致),找到 UDP 转发选项并启用,同时按照图中设置使用 Google DNS 8.8.8.8,最后路由(Route)一项选择自定义 ACL 文件,使用我定制的 ACL 源(copy 链接的地址上去就行了)。

这样一来访问 pixiv 的请求都借由代理服务器使用 Google DNS 完成解析,而本质上流量却没有经由代理服务器,所以原则上和上面修改 DNS 的方法工作机理完全一样,不过 Google DNS 无论是安全性还是稳定性当然都比私有 DNS 高喽。

无法登陆/注册问题

修改 hosts 或 DNS 后都无法通过网页版登陆/注册,原因是 pixiv 登陆/注册页使用了一个 Google 的 API,于是如果你无法访问 Google 将导致整个页面都无法加载:

所以登陆/注册需保证你能够访问这个地址,点进去能看到几行代码就对了。

如何访问呢?不同于 Pixiv,Google 是 IP 完全被墙的状态,无法通过修改 host 或 DNS 访问,所以唯一的方法是 Shadowsocks/ShadowsocksR 等各种代理工具。但是如前面说的,部分代理无法访问 Pixiv,所以此时你不能使用全局代理,以 SSR 为例请使用 PAC/ACL 模式,同时 PAC/ACL 文件中应包含 Google 但不包含 Pixiv,可以使用我的 PAC/ACL 文件

没有代理怎么办呢?
在文章开头的 Nginx 方法中,已经通过本地化脚本解决了这个问题,记得在 hosts 中加一行:127.0.0.1 www.google.com