通过VPS使用VPN或ShadowSocks访问Google或Google Schoolar出现验证码等的解决方法
背景
似乎出现这种问题的很大一部分是因为用的DigitalOcean的VPS...
这里只针对IPv4和IPv6双栈VPS给出可能的解决方法
问题描述
我用的是架设在DigitalOcean上的Shadowsocks,有时访问Google会被要求输入验证码:
或者访问Google Scholar连验证码都没了直接不让用:
简直了!还能不能好好用Google了!
原因分析
针对DigitalOcean,可能的原因:
- 你的VPS被人用来做爬虫爬Google,IP被封
- 你的IPv4网段有人做爬虫,网段被封,躺枪
- 你的IPv6网段有人做爬虫,网段被封,躺枪
不过呢,Google一般不会把你的IPv4和IPv6地址全都封掉的。
解决方法
对于第一种情况,还是老老实实做好安全策略吧...第二和第三种情况我们可以换用没有被封的IP协议来解决
确定被封的IP
在通过如Shadowsocks使用Google时,如果出现验证码,那么页面下方会告知此时访问Google的IP地址,你就能看到具体是IPv4被封还是IPv6被封啦。
强制IPv4
如果是IPv6地址被封,我们可以强制VPS使用IPv4访问Google。
我的情况是VPS支持IPv4/IPv6双栈,但默认会采用IPv4访问,所以你最好检查一下是不是VPS的hosts设置的Google的IPv6地址,如果这样只需要把hosts注释掉就好了
禁止VPS的IPv6访问:
编辑/etc/sysctl.conf
,在文件末尾加入:
# disable ipv6
net.ipv6.conf.all.disable_ipv6=1
net.ipv6.conf.default.disable_ipv6=1
net.ipv6.conf.lo.disable_ipv6=1
重启Shadowsocks再访问Google应该就没问题了。
强制IPv6
如果是IPv4地址被封,我们可以强制VPS使用IPv6访问Google。
方法很简单,VPS的hosts中指定Google的IPv6地址就好了。编辑/etc/hosts
,加入:
2607:f8b0:4005:801::200e google.com
2607:f8b0:4005:801::200e www.google.com
2607:f8b0:4007:805::100f scholar.google.cn
2607:f8b0:4007:805::100f scholar.google.com
2607:f8b0:4007:805::100f scholar.google.com.hk
2607:f8b0:4007:805::100f scholar.l.google.com
注意如上IPv6地址可能已失效,请参考ipv6-hosts/hosts at master · lennylxx/ipv6-hosts中提供的最新IPv6地址。
重启Shadowsocks再访问Google应该就没问题了。
◆支持基于用户的PPTP的访问控制 http://pciphone.heritagerealtorgroup.com/
这已经是2020年了...这个帖子都有五年了吧(捂脸)我的ipv4被谷歌403了之后换了个ipv6 发现仍然还是403,我怀疑是两个网段都被禁掉了...用的也是vultr,现在感觉vultr的vps已经没啥能访问google学术的了,打算换个别家的,但是看了看都没vultr便宜。。。(泪
我也是,vultr上不去,IPV4和IPV6都不行,返回的Error403
亲测vultr的洛杉矶节点目前是可以访问的
我也是服了,看冲10元送100元,搭好之后发现不能用谷歌学术
血亏
问题解决了,十分感谢,d=====( ̄▽ ̄*)b。有个问题想问问,如何检测是不是被别人黑了做爬虫了。明明之前好好的,但是这周突然谷歌学术就上不去了,谷歌可以正常使用,我们大概四五个人在用(都需要用谷歌学术),也没有做爬虫啊。如何检测是不是被别人黑了做爬虫了。
有些网友可能要说,这个价格有些商家现在还提供,但是你如果用过肯定不会这么认为,因为能做到这么低价且性能也稳定的至今还没有遇到这样的商家,但是搬瓦工VPS主机商能够做到。由于我们大部分国内商家提供的海外主机带宽都比较小,我们可以看到BandwagonHost商家提供的VPS主机带宽均是1Gbps起步,最高达到10Gbps,这个是目前主流商家很少遇到的。大小机房一共十几个,除了香港机房是独立机房,其他机房大部分都是可以相互切换的,但是也有特殊。
被封的ip显示为ipv6的 试了一下强制ipv4还是不行
电脑端的ss可以正常访问,但手机端的ss要么使用远程dns类似8.8.8.8,但这样的dns不能将域名解析到ipv6,要么使用本地的dns也不能解析。手机端不会通过服务器的hosts文件解析域名
这个你需要看看你用的客户端支不支持强制远程DNS,这样会把DNS请求包成如socks5走ss发到服务器去解析,就可以完成IPv6解析啦,像https://github.com/shadowsocks/shadowsocks-android/issues/1594这里有人提过issue
这个办法是有效的,vi命令编辑服务器的hosts,记得一定要重启代理服务!ss有效,v2ray有效,其他没试
好文!目前遇到一毛一样的问题,请问第一个“你的VPS被人用来做爬虫爬Google,IP被封”如何知道呢?
你要是想问怎么知道自己的VPS有没有被人用来做爬虫的话,这个是没有太简单的办法知道的~如果觉得自己的VPS可能被黑了的话,你需要查系统日志或者VPS管理台日志分析哟·~
凉凉,不知道为什么修改之后服务器好像直接凉了,ping不通,ssh不上
你好,请问后面解决了吗,我好像也出现啦一样的状况,要重新撘过服务器?
这个...不会吧....难道是格式不对把network service搞挂了?从VPS管理页面web terminal连上去?
请问服务器输入/etc/hosts后,拒绝我访问,这是怎么回事?
记得sudo哟~
我最近也发现不能访问google学术网站了,提示we‘re sorry。不过试了下ipv4/6都不能访问~
我强制改成ipv6,谷歌学术还是不能访问。
搞错了,我忘了重启代理服务。。。
感谢博主,改为ipv6可以访问了。
麻烦问问您,您是怎样ping的呀,可以教我弄一下么,我怎么都弄不会?
十分感谢,解决方案十分详细,通过更改为ipv6成功访问。可是目前有一个问题,就是pc端正常,但是安卓依然会有禁止访问的提示。请问可能是哪方面的问题呢?
这个不太清楚唉,首先要确定你的安卓手机确实走了代理,我猜可能是Google识别了手机浏览器的headers~
没必要动hosts,在/etc/shadowsocks-libev/config.json中配置:
"server":["[::0]", "0.0.0.0"], "dns_ipv6": true,就可以了。
您好,我用ssr最近都没法登录谷歌学术,也是显示sorry那些。
不过我是计算机小白,好多您讲的我不太明白,请求指教谢谢!
“如果是IPv4地址被封,我们可以强制VPS使用IPv6访问Google。
方法很简单,VPS的hosts中指定Google的IPv6地址就好了。编辑/etc/hosts,加入:”
您说的这句里面,怎么启动vps的hosts呢?还有用什么编辑/etc/hosts?
哈哈哈这个你还是去百度吧,太基础的概念了我解释不来呢~
编辑/etc/hosts用nano就好了,不要用vim,不然你会花一个小时寻找怎么退出vim的
先按esc键,再输入:wq即可保存.即冒号+w键+q键
这样就可以保存了.这是我之前花了三个小时得到的.
还有有疑问,960758036,我qq.我也是因为学术才,vpn看不了,才找到这文章
哈哈哈哈想起我第一次不知道怎么退出vim,挣扎了几个小时后选择了强制关机
我记得vim里会有提示的啊,第一次我连怎么进入编辑都不知道,后面好像有一个输入q退出的提示的。
感谢
请问如何 编辑/etc/sysctl.conf和编辑etc/hosts,,万分着急
哈哈哈,太心急会出错的哟,ubuntu的话简单点可以用nano /etc/sysctl.conf这样的命令开始编辑。
你好,vultr党。之前是PC上正常,但是IOS上会无限人机验证,显示的IP是ipv4的。host添加ipv6之后,有一台PC和IOS的浏览器会人机验证,但显示的是ipv6的ip。请教这个是怎么回事?
这个....我猜是你的那个IPv4和IPv6地址段附近都有人做爬虫之类的被Google标记了,我比较倾向认为是cookie没清空之类导致的问题~
按站长的教程,改好以后重启了ss后解决了
亲测有效。特来感谢一下博主! 我的也是vultr的vpn打不开scholar,都快绝望了,突然找到这里。用了最后一个强制使用ipv6的方法,地址用了最新的,然后就能打开了。
可以用,解决了棘手的问题,非常感谢!
亲测有效,非常感谢。
测试了vultr遇到scholar打不开的问题,采用的方法就是博主提到的强制ipv6的方法,只是ipv6地址使用了所给链接的最新地址。
我把最新的ipv6地址添加到电脑的host中了,但上google scholar依然会出现we're sorry...不知为何? 用ss和ssr翻都不行。。。
之前有评论说vultr存在改为IPv6后仍然打不开的问题,不知道你用的是不是vultr?
另外这里是需要修改服务器的hosts文件,而非本地计算机的,不知道你有没有改对~
本体计算机? 服务器的在哪里?
服务器的当然在服务器上啦,这是hosts文件的位置就因linux发行版的不同而不同了,比如Ubuntu的在/etc/hosts下。
windows从ssr换成ss上scholar就没问题了,汗
而且即便ssr能上scholar速度也比ss慢多了
哈哈,SSR闯了好多祸了~
哈哈哈,怎么讲?反正感觉ssr反倒不如ss好用了,是不是因为ssr有点流氓了,google忍不了了
不过,貌似同一个服务器,用iphone上就没出现问题,用windows就有问题,哈
看来不能用vultr了,大牛能不能推荐下性价比高的vps呢?
对,用的的确是vultr,后来改了服务器的hosts文件,google scholar有时能上,有时上不了,汗
通用搜索的话,我直接输入 ipv6.google.com 来解决。
不过还是很不爽,最近google越来越严,很多美国vps也被加入限制了。
ipv6.google.com是直接本地走IPv6连上Google咯,我用DO设置hosts强制走IPv6到现在一直没出现验证码之类的了
还是没有用,打不开
专门来说下,vultr需要手动登陆自己账户,在官网上开启ip6服务的,还不行的,应该是没有开
这...如果是DO的话可以考虑换个IP地址了
用的是vultr的vps
强制IPv6
2404:6800:4008:c06::be scholar.google.com
2404:6800:4008:c06::be scholar.google.com.hk
2404:6800:4008:c06::be scholar.google.com.tw
2401:3800:4001:10::101f scholar.google.cn #www.google.cn
我这也是没有用,用的是vultr的vps
vultr,用的是纽约的确的,经改为ipv6后是可以访问谷歌学术
感谢Penguin
开始我也是改VPS的hosts,结果试了很多次发现都不行。后来发现是ipv6已经换了,新的ipv6可以在Penguin提到的 https://raw.githubusercontent.com/lennylxx/ipv6-hosts/master/hosts 里找
我也是哈哈,太感谢了!~
请问大神如何在hosts中指定Google的IPv6地址?我用putty刷的SS,是在putty中编辑/etc/hosts然后加入那六行地址吗?
小白完全不懂求帮助
既然小白的话...那你得提前确定VPS是支持IPv6的,不然设置hosts了会完全访问不了的。
putty连上后sudo nano /etc/hosts,然后在文件末尾加上那6行,然后ctrl+O保存,然后重启ss就能看到效果了。
不太确定这些IPv6地址现在还能不能用,下面之前的评论里我有贴找最新地址的方法~
多谢速度回复~,
我是用vultr搭建,支持IPv6
但是按照步骤输入代码后出现如下错误,求大神帮忙看看。IP 地址我用'x' 隐藏了。thanks~
login as: root
root@xxx.xx.xxx.xxx's password:
Linux guest 3.2.0-4-amd64 #1 SMP Debian 3.2.89-2 x86_64
The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.
Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Tue Sep 12 15:43:07 2017 from xx.xx.xx.xxx
root@vultr:~# sudo nano /etc/hosts
-bash: sudo: command not found
root@vultr:~#
当前是root用户的话就不需要前面的sudo咯~
谢谢楼主~~
有点小小的疑惑, 为什么改了host要重启ss呢?
这个只是保险起见的,因为很多工具会自己做缓存,这样hosts就不能立即生效了~
你好,为什么我用IP checker(查询域名和IP http://ipinfo.info/html/ip_checker.php)
查不到scholar.google.com的IPv6地址呢,是说明谷歌学术没有IPV6地址了吗?
host scholar.google.com 返回的也只有一个IPV4地址呢
你好,抱歉回复晚了。
我刚才试了下确实用如host命令只会返回Google scholar的IPv4地址,你可以用这里https://raw.githubusercontent.com/lennylxx/ipv6-hosts/master/hosts提供的scholar.google.com的IPv6地址,亲测可用。
嗯嗯,按照你的网址我找到了scholar.google.com的IPV6地址,也更新到了系统的 /etc/hosts 文件中,但是我发现好像这个hosts文件的修改没有效果呢。比如,我把youtube.com 添加进来并添加一个错误的 IP地址,并重启网络服务,重启shadowsocks,结果我在我电脑浏览器照常打开youtube.com.
我的感觉是修改这个hosts并没有起到DNS的作用呢。是因为我某个地方设置没开?
我的系统是Ubuntu1704,shadowsocks-libev 最新版
我测试也用的Ubuntu 17.04,在/etc/hosts里将上文的scholar.google.com地址替换为最新地址,重启服务器shadowsocks,然后客户端访问scholar.google.com就从we are sorry变成正常访问了。
你遇到的这个情况我没碰到过,请你确认下是写在/etc/hosts中,客户端打开youtube.com时确实走的shadowsocks连上VPS。
我好像发现了什么,在/etc/hosts 文件的开头有这几行注释:
Your system has configured 'manage_etc_hosts' as True.As a result, if you wish for changes to this file to persistthen you will need to eithera.) make changes to the master file in /etc/cloud/templates/hosts.tmplb.) change or remove the value of 'manage_etc_hosts' in/etc/cloud/cloud.cfg or cloud-config from user-data您之前按照这个要求更改配置过吗?
抱歉没看到回复,这个我就不太懂啦~估计DO或者SO上会有更好的回答。
欢迎反馈你的解决方法!
嗯嗯,谢谢你的回复。
那我再试试吧,估计就是我这这hosts文件有问题。我把这个hosts文件中的主机名更换后并重启,用uname -a打印出的信息竟然还没有改变!
原来:
127.0.1.1 ubuntu-512mb-sfo2-01
改为:
127.0.0.1 ubuntu-512mb-sfo2-2
噢!我刚搞定了。。直接改hosts是有效的。
感谢chunchun以及博主Penguin
请问你是如何直接修改的hosts呀,我也碰到了和你一样的问题
你好,请问你的问题解决了吗?我和你的情况一样,/etc/hosts 的开头有那些提示,但也没在它所说的位置找到manage_etc_hosts的配置属性。
直接把google scholar的ipv6地址添加到hosts仍然是we're sorry..
好郁闷啊,我把droplet从SFO2迁移到SGP1、NYK1,还是we're sorry..
这是digitalocean vps全部被scholar.google.co block了吗。。
求问大神 按你的方法在hosts中添加ipv6后 SS无法启动如何解决
只是修改了hosts?那对ss是不可能有影响的,这个只是将服务器对google的访问强制到google的IPv6地址。ss无法启动?你是服务器端ss不能start么?看看服务器端日志或者报错?
ss的问题解决了 可是添加的地址无法打开scholar 怎样获得能用的scholar的ipv6地址呢?
简单的方法是,ssh到VPS,如果之前写了hosts,先把hosts删掉,然后
ping6 scholar.google.com
看到scholar.google.com的IPv6地址之后,再把这个地址写到hosts里面去,这样就是最新能用的地址了。
大神 ping6 scholar.google.com后出现
ping: scholar.google.com: 未知的名称或服务,何解?
抱歉之前回答轻率了...你可以使用
host google.com
得到
google.com has address 172.217.5.110
google.com has IPv6 address 2607:f8b0:4005:808::200e
这样把如上hosts中的IPv6地址替换为最新的IPv6地址即可。
感谢大神 终于成功了!
好文,解决问题了。
泪奔啊,好文