设置shadowsocks的IPv6优先,解除ChatGPT访问限制

最近火爆的ChatGPT为了限制非法访问,屏蔽了大量IP,包括某些国家地区和非原生IP。

恰巧我使用的境外服务器跳板就是非原生IP(即IP所在区域和ISP登记区域不符),此前还能正常使用,但近几天忽然发现它也被屏蔽了,显示这个错误页面:

由于服务器机房只提供了IPv4地址,此前为了增加IPv6访问能力,我使用了Hurricane Electric提供的https://tunnelbroker.net/服务,只需要服务器上简单配置,添加两个虚拟网卡,即可为提供IPv6公网地址。而且这个IPv6是原生的。

问题是shadowsocks在监听端口可以使用IPv6,但对外访问时并未优先使用IPv6,在很多情况下仍然会使用IPv4访问,这也导致了ChatGPT对IP地址的屏蔽。

很多人也遇到过同样问题,解决方案五花八门。有的改用其他机房的海外服务器(甚至据说要求IP和手机号注册地址一致,但这种情况存疑),有的使用Cloudflare warp服务再加一层代理获得原生IP,也有的使用tor browser访问。

但更换服务器有成本,warp服务配置复杂且ss原生并不支持上级代理,tor我试用过之后发现速度实在太慢且不稳定。

最后,通过查阅代码和讨论,找到一个最简单的解决方案。只需在ss-server命令行后面增加一个-6选项即可让它优先使用IPv6访问。

我将ss注册成了systemd服务,修改/lib/systemd/system下的service文件,修改一处参数:

ExecStart=/usr/bin/ss-server -c $CONFFILE -6 $DAEMON_ARGS

重启服务后即可正常使用ChatGPT了。

8 comments

  1. 沙漠潜艇 says:

    你好,想请问一下tunnelborker的IPv6隧道配置有什么技巧吗?我的系统是腾讯云轻量服务器,centos,按tunnelbroker网站上的示例一直都没有配置成功。。。ping不通Google:
    [root@VM-4-14-centos ~]# ping6 google.com
    PING google.com(hkg12s34-in-x0e.1e100.net (2404:6800:4005:801::200e)) 56 data bytes
    From tunnel86xxxx-pt.tunnel.tserv22.tyo1.ipv6.he.net (2001:470:xx:xxx::2) icmp_seq=1 Destination unreachable: Address unreachable
    From tunnel86xxxx-pt.tunnel.tserv22.tyo1.ipv6.he.net (2001:470:xx:xxx::2) icmp_seq=2 Destination unreachable: Address unreachable

  2. Akira says:

    想请教下,我是根据https://gfw.report/blog/ss_tutorial/zh/这篇文章里用snap部署的ss,请问应该怎么修改呀?

      • 苏莉安 says:

        config里配置没用,既然它的方案是创建systemd的服务,那就直接改原始.service文件的命令行,一般在/etc/systemd/system/multi-user.target.wants里

        • Akira says:

          非常感谢您的回复,我在您说的路径里找到了service文件,但是execstart启动服务的命令是用snap来启动的,也就是ExecStart=/usr/bin/snap run shadowsocks-libev.ss-server-daemon,无法直接添加启动参数。另外,抱歉我之前的回复里没有讲清楚,其实在config文件中设置ipv6_first=true已经可以实现ipv6优先了,chatgpt的access denied页面里的ip address也显示是ipv6地址。被ban的主要原因推测是我使用的vps供应商的ip全被ban(换美国地区的vps测试了),目前在网上也查到那些常用的例如Digitalocean、vultr等vps服务商被chatgpt禁用。目前使用微软的azure是可以访问的,缺点就是没有ipv6,ipv4经常被GFW干掉😂。

          • 苏莉安 says:

            原来如此,看来是我草率了,之前测试config时第一次无效就没继续测。看来openai那边封禁力度比墙还大……

    • 苏莉安 says:

      是host的话也这么改就行。要是bridge就麻烦了,所以我也烦bridge,自己配置的ss都是原生网络的。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注