每日签到奶昔超市积分商城奶昔访达
1234下一页
返回列表 发布新帖
查看: 4855|回复: 78

[教程] iOS小火箭Shadowrocket百度直连方法(附Clash用法)

 
发表于 2025-8-26 10:30:51 | 查看全部 |阅读模式

登录后免广告,享受更多奶昔会员权益!

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

×
本帖最后由 btpan 于 2026-1-23 01:54 编辑

最近看大家都在讨论百度直连?讲个好玩的,我对HTTP代理服务器(proxy)还停留在7-8年前,当时人手一个CCProxy还去找透明代理翻。不过现在大家都人手一个Clash配上 127.0.0.1:7890 的本地proxy了,这些过时的技术好像又在论坛里复兴起来了!之前论坛分享的180.101.50.208只是cloudnproxy.baidu.com的其中一个解析,如果要特定IP可以把图中的域名改成 https://www.itdog.cn/ping/cloudnproxy.baidu.com 结果中的任意IP。刚刚换了个网连接,发现IP地址又变了,可以靠手动解析出IP设置锁落地
fakename.png

昨天在摸索小火箭Shadowrocket时发现内置的lua脚本来利用百度直连好像行得通,而对于百度服务器来说只是加一个header验证,大概是这样
fakename.png

接下来讲实操
首先新建一个lua脚本的代理服务器配置
fakename.png
然后填入代理服务器的ip地址和端口,method选none;再点进File去修改
结尾我会留下Clash用法,总之出国的时候还能解锁下国内流媒体(翻回去)
fakename.png
在这里我们需要用lua脚本做header验证。我写的脚本有问题,感谢奶友提供的修改。
他的帖子地址:https://forum.naixi.net/thread-9195-1-1.html
  1. -- file: lua/backend-baidu.lua

  2. local http = require 'http'
  3. local backend = require 'backend'

  4. local char = string.char
  5. local byte = string.byte
  6. local find = string.find
  7. local sub = string.sub

  8. local ADDRESS = backend.ADDRESS
  9. local PROXY = backend.PROXY
  10. local DIRECT_WRITE = backend.SUPPORT.DIRECT_WRITE

  11. local SUCCESS = backend.RESULT.SUCCESS
  12. local HANDSHAKE = backend.RESULT.HANDSHAKE
  13. local DIRECT = backend.RESULT.DIRECT

  14. local ctx_uuid = backend.get_uuid
  15. local ctx_proxy_type = backend.get_proxy_type
  16. local ctx_address_type = backend.get_address_type
  17. local ctx_address_host = backend.get_address_host
  18. local ctx_address_bytes = backend.get_address_bytes
  19. local ctx_address_port = backend.get_address_port
  20. local ctx_write = backend.write
  21. local ctx_free = backend.free
  22. local ctx_debug = backend.debug

  23. local flags = {}
  24. local kHttpHeaderSent = 1
  25. local kHttpHeaderRecived = 2

  26. function wa_lua_on_flags_cb(ctx)
  27.     return DIRECT_WRITE
  28. end

  29. function wa_lua_on_handshake_cb(ctx)
  30.     local uuid = ctx_uuid(ctx)

  31.     if flags[uuid] == kHttpHeaderRecived then
  32.         return true
  33.     end

  34.     if flags[uuid] ~= kHttpHeaderSent then
  35.         local host = ctx_address_host(ctx)
  36.         local port = ctx_address_port(ctx)
  37.         local res = 'CONNECT ' .. host .. ':' .. port .. ' HTTP/1.1\r\n' ..
  38.                     'Host: ascdn.baidu.com\r\n' ..
  39.                     'Proxy-Connection: Keep-Alive\r\n'..
  40.                     'X-T5-Auth: 1951164069\r\n' ..
  41.                     'User-Agent: okhttp/3.11.0 SP-engine/2.71.0 Dalvik/2.1.0 (Linux; U; Android 9; HMA-AL00 Build/PQ3B.190801.002) baiduboxapp/13.33.0.11 (Baidu; P1 9)\r\n\r\n'
  42.         ctx_write(ctx, res)
  43.         flags[uuid] = kHttpHeaderSent
  44.     end

  45.     return false
  46. end

  47. function wa_lua_on_read_cb(ctx, buf)
  48.     ctx_debug('wa_lua_on_read_cb')
  49.     local uuid = ctx_uuid(ctx)
  50.     if flags[uuid] == kHttpHeaderSent then
  51.         flags[uuid] = kHttpHeaderRecived
  52.         return HANDSHAKE, nil
  53.     end
  54.     return DIRECT, buf
  55. end

  56. function wa_lua_on_write_cb(ctx, buf)
  57.     ctx_debug('wa_lua_on_write_cb')
  58.     return DIRECT, buf
  59. end

  60. function wa_lua_on_close_cb(ctx)
  61.     ctx_debug('wa_lua_on_close_cb')
  62.     local uuid = ctx_uuid(ctx)
  63.     flags[uuid] = nil
  64.     ctx_free(ctx)
  65.     return SUCCESS
  66. end
复制代码

点右上角的+号,添加lua脚本,填入 https://raw.githubusercontent.co ... in/Shadowrocket.lua
fakename.png
点击这个远程lua文件,选择下载,得到一个本地lua文件(注意,你得到的文件名中的数字可能和我不一样),并选中它。
fakename.png
然后返回上一个界面,最终结果如下:
fakename.png
最后点击右上角的done就可以使用了
fakename.png
如果你的卡对百度应用(定向)免费,那可以直接用这个免。
如何在Clash上使用百度直连
众所周知,Clash是支持header的代理工具之一,此时我们只需要添加http代理:
  1. - name: 南京电信
  2.   server: 180.101.50.208
  3.   type: http
  4.   port: 443
  5.   headers:
  6.       Host: "ascdn.baidu.com"
  7.       X-T5-Auth: "1951164069"
  8.       User-Agent: "okhttp/3.11.0 SP-engine/2.71.0 Dalvik/2.1.0 (Linux; U; Android 9; HMA-AL00 Build/PQ3B.190801.002) baiduboxapp/13.33.0.11 (Baidu; P1 9)"
复制代码
如开头所说,我们可以修改上面的180.101.50.208为cloudnproxy.baidu.com或任意该域名解析出的IP,这样就能得到这些节点:
fakename.png
上面有些参数可能有些佬看不懂,没事。这是因为百度直连最近升级了验证程序,目前需要验证UA(useragent中包含“baiduboxapp”即可),如果你用tiny做前置代理,后置v2。v2的端口必须为80或443。
爱生活,爱奶昔~
回复

使用道具 举报

发表于 2025-8-26 21:38:07 来自手机 | 查看全部
本帖最后由 xiaoguiday 于 2025-8-26 22:45 编辑

小火箭打开网页提示错误:Internal Error: Missing Template ERR_INVALID_URL

我二次修改了一下配置,可以用了

baidu1.lua

2.21 KB, 阅读权限: 20, 下载次数: 35

爱生活,爱奶昔~
发表于 2025-8-26 11:24:25 来自手机 | 查看全部
讲实话看到这个标题的第一眼:百度这种国内网址大部分代理工具大家应该都是直连规则啊,怎么还要配置。打开以后发现不是一回事
爱生活,爱奶昔~
发表于 2025-11-12 09:27:53 来自手机 | 查看全部
ethanhooks 发表于 2025-8-26 21:38
小火箭打开网页提示错误:Internal Error: Missing Template ERR_INVALID_URL

我二次修改了一下配置,可以 ...

老哥稳!
爱生活,爱奶昔~
发表于 2025-8-26 10:35:17 | 查看全部
优秀
爱生活,爱奶昔~
发表于 2025-8-26 10:45:37 来自手机 | 查看全部
百度直连一直这个样子没变吧
爱生活,爱奶昔~
发表于 2025-8-26 10:53:35 | 查看全部
看看 学习一下
爱生活,爱奶昔~
发表于 2025-8-26 11:08:58 | 查看全部
学习一下
爱生活,爱奶昔~
发表于 2025-8-26 11:18:37 来自手机 | 查看全部
学习一下
爱生活,爱奶昔~
发表于 2025-8-26 11:32:34 | 查看全部
学习一下多谢大佬
爱生活,爱奶昔~
发表于 2025-8-26 12:55:01 | 查看全部
厉害👍学习一下~
爱生活,爱奶昔~
发表于 2025-8-26 13:41:35 | 查看全部
过来学习学习
爱生活,爱奶昔~
发表于 2025-8-26 13:56:31 | 查看全部
用上去了 但是为啥我这用不了啊
fakename.png
爱生活,爱奶昔~
发表于 2025-8-26 14:11:27 | 查看全部
学习一下~
爱生活,爱奶昔~
发表于 2025-8-26 14:13:49 | 查看全部
看看学学
爱生活,爱奶昔~
发表于 2025-8-26 14:51:42 | 查看全部
看看内容
爱生活,爱奶昔~
发表于 2025-8-26 14:56:17 来自手机 | 查看全部
谢谢大侠分享
爱生活,爱奶昔~
发表于 2025-8-26 18:52:20 | 查看全部
学习一下
爱生活,爱奶昔~
发表于 2025-8-26 18:54:46 | 查看全部
感谢感谢感谢感谢感谢
爱生活,爱奶昔~
发表于 2025-8-26 19:31:42 | 查看全部
看看怎么玩
爱生活,爱奶昔~
发表于 2025-8-26 20:13:42 来自手机 | 查看全部
看看呢
爱生活,爱奶昔~
发表于 2025-8-26 20:53:43 | 查看全部
看看教学
爱生活,爱奶昔~
您需要登录后才可以回帖 登录 | 注册

本版积分规则

© 2026 Naixi Networks. 沪ICP备13020230号-1|沪公网安备 31010702007642号手机版小黑屋RSS
返回顶部 关灯 在本版发帖
快速回复 返回顶部 返回列表