搜索
缓存时间12 现在时间12 缓存数据 我能坐你旁边吗
查看: 231|回复: 1

【教程】claw 使用自建dns 解锁chatgpt

[复制链接]
发表于 2024-10-15 19:28:33 | 显示全部楼层 |阅读模式

厌倦了滚动浏览相同的帖子?当您创建帐户后,您将始终回到您离开的地方。使用帐户,不仅可以享受无广告的清爽界面!

您需要 登录 才可以下载或查看,没有账号?注册

×
项目地址 https://github.com/nanci0406/dnsmasq_sniproxy_install 在此仅补充一点细节

首先把claw称为被解锁机,解锁比较好的落地机称为解锁机(确保两台机器53(tcp udp都要以防万一) 80 443 端口互通)假设解锁机ip为2.2.2.2
1.解锁机上部署sniproxy
执行命令
  1. wget --no-check-certificate -O dnsmasq_sniproxy.sh https://raw.githubusercontent.com/nanci0406/dnsmasq_sniproxy_install/master/dnsmasq_sniproxy.sh && bash dnsmasq_sniproxy.sh -fs
复制代码

这步注意被解锁机的80 443 无端口占用
执行完以后 使用以下命令查看
  1. root@sg:~# systemctl status sniproxy
  2. ● sniproxy.service - Sniproxy
  3.      Loaded: loaded (/etc/systemd/system/sniproxy.service; enabled; preset: enabled)
  4.      Active: active (running) since Tue 2024-10-15 18:01:12 CST; 41min ago
  5.     Process: 233185 ExecStart=/usr/sbin/sniproxy -c /etc/sniproxy.conf (code=exited, status=0/SUCCESS)
  6.    Main PID: 233186 (sniproxy)
  7.       Tasks: 2 (limit: 495)
  8.      Memory: 1.1M
  9.         CPU: 69ms
  10.      CGroup: /system.slice/sniproxy.service
  11.              ├─233186 /usr/sbin/sniproxy -c /etc/sniproxy.conf
  12.              └─233189 /usr/sbin/sniproxy -c /etc/sniproxy.conf

  13. Oct 15 18:01:12 sg systemd[1]: Starting sniproxy.service - Sniproxy...
  14. Oct 15 18:01:12 sg systemd[1]: Started sniproxy.service - Sniproxy.
复制代码

如果安装完没自己启动 执行命令
配置文件如下(大佬已经在项目上做好了,只解锁chatgpt的话不用管)
  1. systemctl start sniproxy
  2. systemctl enable sniproxy
复制代码
  1. root@sg:~# cat /etc/sniproxy.conf
  2. user daemon
  3. pidfile /var/tmp/sniproxy.pid

  4. error_log {
  5.     syslog daemon
  6.     priority notice
  7. }

  8. resolver {
  9.     nameserver 8.8.8.8
  10.     nameserver 8.8.4.4 # local dns should be better
  11.     mode ipv4_only
  12. }
  13. listener 0.0.0.0:80 {
  14.     proto http
  15.     access_log {
  16.         filename /var/log/sniproxy/http_access.log
  17.         priority notice
  18.     }
  19. }
  20. listener 0.0.0.0:443 {
  21.     proto tls
  22.     access_log {
  23.         filename /var/log/sniproxy/https_access.log
  24.         priority notice
  25.     }
  26. }

  27. table {
  28.     .*ai\.com$ *
  29.     .*chatgpt\.com$ *
  30.     .*chat\.openai\.com$ *
  31.     .*oaistatic\.com$ *
  32.     .*oaiusercontent\.com$ *
  33.     .*openai\.com$ *
  34.     .*openaicomproductionae4b\.blob\.core\.windows\.net$ *
  35.     .*openaicom-api-bdcpf8c6d2e9atf6\.z01\.azurefd\.net$ *
  36.     .*openai\.com\.cdn\.cloudflare\.net$ *
  37.     .*openaiapi-site\.azureedge\.net$ *
  38.     .*openaicom\.imgix\.net$ *

  39. }
复制代码

2.被解锁机也就是claw安装dnsmasq 需要53端口无占用
  1. wget --no-check-certificate -O dnsmasq_sniproxy.sh https://raw.githubusercontent.com/nanci0406/dnsmasq_sniproxy_install/master/dnsmasq_sniproxy.sh && bash dnsmasq_sniproxy.sh -id
复制代码

执行命令后会弹出提示 请输入sniproxy的ip地址 你就写解锁机的ip就可以 (这步很重要,中午就是因为这个导致死活无法成功,debian12可以成功 centos 9 libnetfilter_conntrack 这个包死活安装不上 换源都不行 一气之下dd了debian12)
同样执行命令查看dnsmasq情况
  1. root@localhost:~# systemctl status dnsmasq
  2. ● dnsmasq.service - dnsmasq - A lightweight DHCP and caching DNS server
  3.      Loaded: loaded (/lib/systemd/system/dnsmasq.service; enabled; preset: enabled)
  4.      Active: active (running) since Tue 2024-10-15 17:51:17 CST; 1h 1min ago
  5.    Main PID: 5478 (dnsmasq)
  6.       Tasks: 1 (limit: 2242)
  7.      Memory: 796.0K
  8.         CPU: 76ms
  9.      CGroup: /system.slice/dnsmasq.service
  10.              └─5478 /usr/sbin/dnsmasq -x /run/dnsmasq/dnsmasq.pid -u dnsmasq -7 /etc/dnsmasq.d,.dpkg-dist,.dpkg-old,.dpkg-new --local-service --trust-anchor=.,20326,8,2,e>

  11. Oct 15 17:51:17 localhost systemd[1]: Starting dnsmasq.service - dnsmasq - A lightweight DHCP and caching DNS server...
  12. Oct 15 17:51:17 localhost dnsmasq[5478]: started, version 2.90 cachesize 2048
  13. Oct 15 17:51:17 localhost dnsmasq[5478]: compile time options: IPv6 GNU-getopt DBus no-UBus i18n IDN DHCP DHCPv6 no-Lua TFTP conntrack ipset no-nftset auth cryptohash DNS>
  14. Oct 15 17:51:17 localhost dnsmasq[5478]: using nameserver 8.8.8.8#53
  15. Oct 15 17:51:17 localhost dnsmasq[5478]: using nameserver 1.1.1.1#53
  16. Oct 15 17:51:17 localhost dnsmasq[5478]: using nameserver 208.67.222.222#53
  17. Oct 15 17:51:17 localhost dnsmasq[5478]: using nameserver 4.2.2.1#53
  18. Oct 15 17:51:17 localhost dnsmasq[5478]: read /etc/hosts - 6 names
  19. Oct 15 17:51:17 localhost systemd[1]: Started dnsmasq.service - dnsmasq - A lightweight DHCP and caching DNS server.
复制代码

如果没启动就手动启动以下,加一下开机自启
  1. systemctl start dnsmasq
  2. systemctl enable dnsmasq
复制代码

查看dnsmasq的配置 /后面就是你解锁机的ip 比如2.2.2.2(会自动换成你的sniproxy的ip所在地址,没有就手动加一下再重启dnsmasq)
  1. root@localhost:~# cat /etc/dnsmasq.d/custom_netflix.conf
  2. domain-needed
  3. bogus-priv
  4. no-resolv
  5. no-poll
  6. all-servers
  7. server=8.8.8.8
  8. server=1.1.1.1
  9. server=208.67.222.222
  10. server=4.2.2.1
  11. cache-size=2048
  12. local-ttl=60
  13. interface=*
  14. address=/ai.com/2.2.2.2
  15. address=/chatgpt.com/2.2.2.2
  16. address=/chat.openai.com/2.2.2.2
  17. address=/oaistatic.com/2.2.2.2
  18. address=/oaiusercontent.com/2.2.2.2
  19. address=/openai.com/2.2.2.2
  20. address=/openaicomproductionae4b.blob.core.windows.net/2.2.2.2
  21. address=/openaicom-api-bdcpf8c6d2e9atf6.z01.azurefd.net/2.2.2.2
  22. address=/openai.com.cdn.cloudflare.net/2.2.2.2
  23. address=/openaiapi-site.azureedge.net/2.2.2.2
  24. address=/openaicom.imgix.net/2.2.2.2
复制代码

可以将以下域名写入你的hosts 文件中 类似如下
  1. root@localhost:~# cat /etc/hosts
  2. 127.0.0.1       localhost
  3. ::1             localhost ip6-localhost ip6-loopback
  4. ff02::1         ip6-allnodes
  5. ff02::2         ip6-allrouters

  6. 2.2.2.2 ai.com
  7. 2.2.2.2 openai.com
  8. 2.2.2.2 chat.openai.com.cdn.cloudflare.net
  9. 2.2.2.2 openaiapi-site.azureedge.net
  10. 2.2.2.2 openaicom-api-bdcpf8c6d2e9atf6.z01.azurefd.net
  11. 2.2.2.2 openaicomproductionae4b.blob.core.windows.net
  12. 2.2.2.2 production-openaicom-storage.azureedge.net
  13. 2.2.2.2 o33249.ingest.sentry.io
  14. 2.2.2.2 chatgpt.com
复制代码

再次执行
  1. systemctl restart dnsmasq
复制代码

就可以开始奔放了
ps 解锁机的80 443 53 无论tcp udp都要设置白名单(就是claw的ip) 也就是常说的过白 夫人 你也不想你的解锁机被人刷光流量吧
其他的解锁 照着葫芦画葫芦 需要在 /etc/dnsmasq.d/custom_netflix.conf 和 /etc/sniproxy.conf /etc/host中同步增加需要dns代理的域名(可以去geosite 查询 应该是这个东西,然后让傻蛋chatgpt给你写正则)并且重启这两个服务
再次感谢大佬们的项目和指导,有啥问题欢迎指正,知错就改
[发帖际遇]: 一个袋子砸在了 heardic 头上,heardic 赚了 3 点数. 幸运榜 / 衰神榜
爱生活,爱奶昔~
发表于 2024-10-15 21:47:35 | 显示全部楼层
非常赞!感谢分享
爱生活,爱奶昔~
回复 支持 反对

使用道具 举报

Powered by Nyarime. Licensed

GMT+8, 2024-11-4 12:34 , Processed in 0.024047 second(s), 12 queries , Gzip On, Redis On
发帖际遇 ·手机版 ·小黑屋 ·RSS ·奶昔网

登录切换风格
快速回复 返回顶部 返回列表