首页
推荐
🙈注册账户
🏠登录账户
📝写作投稿
👮前往后台
📩找回密码
Search
1
记录一次倍控J4125-G30折腾日记:从软路由到NAS的坎坷之路
337 阅读
2
从零开始搭建 Docker + 青龙面板 + 机器人框架 + 对接微信/QQ 机器人
327 阅读
3
青龙常用的JD脚本拉库命令和常用依赖2024年12月28日更新
317 阅读
4
【飞牛】飞牛系统挂载失败(内部错误)修复指南
159 阅读
5
家庭宽带IPv6搭建3X-UI全攻略
87 阅读
📑教程
💾资源
💐活动
🏡日常
👨💼版务
💌情感
登录
/
注册
Search
标签搜索
windows
Android
docker
青龙
typecho
软件
Debian
github
插件模块
joe
玩客云
ipv6
DDNS
网络
QQ
京东
框架
web
谷歌
免流
时间煮雨
累计撰写
101
篇文章
累计收到
312
条评论
首页
栏目
📑教程
💾资源
💐活动
🏡日常
👨💼版务
💌情感
页面
推荐
🙈注册账户
🏠登录账户
📝写作投稿
👮前往后台
📩找回密码
搜索到
41
篇与
的结果
2026-06-07
没有公网IPv4?我用Lucky+STUN+Cloudflare实现了IPv4/IPv6双栈访问
一、前置条件检查(必须满足)1.1 检测 NAT 类型下载 NatTypeTester,运行后选择 STUN 服务器测试:┌─────────────────────────────────────────┐ │ NAT 类型检测结果 │ │ ───────────────────────────────────── │ │ NAT Type: FullCone (NAT1) ✅ 可以穿透 │ │ 或 NAT Type: Restricted (NAT2) ✅ 可以 │ │ NAT Type: Symmetric (NAT3/4) ❌ 放弃 │ └─────────────────────────────────────────┘NAT3/NAT4 无法打洞,需联系运营商改 NAT1,或光猫改桥接 + 路由器拨号。1.2 网络环境优化设备推荐配置光猫改桥接模式,由路由器拨号(减少一层 NAT)路由器开启 UPnP;或给运行 Lucky 的设备设置 DMZLucky 安装位置推荐直接装在拨号路由器上(OpenWrt/软路由),效率最高;如果是 Docker 需用 --net=host 模式二、Lucky STUN 内网穿透配置2.1 安装/登录 Lucky访问: http://你的设备IP:16601 账号: 666 密码: 666 登录后务必在【设置】中修改密码2.2 添加 STUN 穿透规则(简易模式)进入 STUN 内网穿透 → 穿透规则列表 → 添加穿透规则┌─────────────────────────────────────────────────────┐ │ 【添加/编辑 STUN 穿透规则】 │ │ ───────────────────────────────────────────────── │ │ 规则名称: nas-web │ │ 启用规则: ☑️ 勾选 │ │ 操作模式: 简易模式 │ │ 穿透类型: IPv4-TCP │ │ 穿透通道监听端口: 0 (填0表示随机端口) │ │ 目标地址: 127.0.0.1 (Lucky和服务同设备) │ │ 目标端口: 5000 (你的NAS/Web服务端口) │ │ 防火墙自动放行: ☑️ 勾选 │ │ 启用 NAT-PMP: ☑️ 勾选 (或改用 UPNP) │ │ NAT-PMP/UPNP 网关地址: 192.168.1.1 (路由器地址) │ │ 保活间隔: 默认即可 │ └─────────────────────────────────────────────────────┘点击添加后,规则列表会显示:┌─────────────────────────────────────────────────────┐ │ 规则名称 穿透公网地址 状态 │ │ ───────────────────────────────────────────────── │ │ nas-web 123.45.67.89:16666 ✅ 运行中 │ │ ↑ 这个地址每次重启会变! │ └─────────────────────────────────────────────────────┘用手机流量访问 http://123.45.67.89:16666 测试,确认能打开你的服务。三、域名托管到 Cloudflare3.1 添加域名登录 Cloudflare Dashboard点击 添加站点,输入你的域名(如 example.com)选择 免费套餐拿到 Cloudflare 提供的两个 DNS 服务器(如 lara.ns.cloudflare.com)3.2 修改阿里云 DNS 服务器阿里云域名控制台 → 域名列表 → 找到你的域名 → 管理 → DNS 修改 → 修改 DNS 服务器 填入 Cloudflare 提供的两个地址 保存,等待 5-30 分钟生效3.3 创建 A 记录(占位)进入 Cloudflare 域名管理 → DNS → 添加记录:┌─────────────────────────────────────────┐ │ 类型: A │ │ 名称: @ (或你想用的子域名,如 stun) │ │ IPv4 地址: 1.1.1.1 (随便填,占位用) │ │ 代理状态: 🟡 已开启 (小云朵必须打开!) │ │ TTL: 自动 │ └─────────────────────────────────────────┘小云朵必须打开,但流量不经过 CDN 中转,只是用 Cloudflare 的规则功能。四、Cloudflare 重定向规则配置(核心)4.1 创建规则进入 规则 → 重定向规则 → 创建规则┌─────────────────────────────────────────────────────┐ │ 规则名称: ipv4-redirect │ │ 当传入请求匹配时: 自定义筛选表达式 │ │ ───────────────────────────────────────────────── │ │ 表达式: │ │ (http.host eq "stun.example.com") │ │ │ │ 则执行... URL 重定向 │ │ 类型: 动态 │ │ 表达式: │ │ concat("http://66.66.66.66:6666", http.request.uri.path) │ │ ↑ 先随便填一个 IP:端口,后面会被 Webhook 自动更新 │ │ │ │ 状态代码: 301 │ │ 保留查询字符串: 开启 │ └─────────────────────────────────────────────────────┘点击部署。4.2 抓包获取 API 参数(关键步骤)在重定向规则列表,点击刚才创建的规则 → 编辑按 F12 打开浏览器开发者工具 → 切换到 网络/Network 标签点击保存并部署在 F12 中找到一条 PATCH 请求,URL 类似:https://dash.cloudflare.com/api/v4/zones/区域ID/rulesets/规则集ID/rules/规则ID提取三个关键参数:区域 ID (zone_id):zones/ 后面那串规则集 ID (ruleset_id):rulesets/ 后面那串规则 ID (rule_id):rules/ 后面那串也可以参考 Cloudflare API 文档,通过 GET /zones/{zone_id}/rulesets 获取规则集 ID。五、Cloudflare API 令牌创建进入 Cloudflare API 令牌 页面:┌─────────────────────────────────────────────────────┐ │ 创建令牌 → 使用模板 → 编辑区域 DNS │ │ 或创建自定义令牌,权限选择: │ │ 区域 → 重定向规则 → 编辑 │ │ 区域 → 页面规则 → 编辑 (如果用旧版页面规则) │ │ 区域资源: 包括 → 特定区域 → 你的域名 │ │ 点击【继续以显示摘要】→ 创建令牌 │ │ 复制保存令牌(如: abcdef123456789) │ └─────────────────────────────────────────────────────┘六、Lucky Webhook 自动更新配置回到 Lucky → STUN 内网穿透 → 编辑刚才的规则 → Webhook:┌─────────────────────────────────────────────────────┐ │ 【Webhook 设置】 │ │ 启用 Webhook: ☑️ 勾选 │ │ ───────────────────────────────────────────────── │ │ 请求接口地址: │ │ https://api.cloudflare.com/client/v4/zones/ │ │ {区域ID}/rulesets/{规则集ID}/rules/{规则ID} │ │ │ │ 请求方法: PATCH │ │ ───────────────────────────────────────────────── │ │ 请求头: │ │ ┌─────────────────────────────────────────────┐ │ │ │ Authorization: Bearer 你的Cloudflare令牌 │ │ │ │ Content-Type: application/json │ │ │ └─────────────────────────────────────────────┘ │ │ ───────────────────────────────────────────────── │ │ 请求主体 (Body): │ │ { │ │ "action": "redirect", │ │ "expression": "(http.host eq \"stun.example.com\")", │ │ "description": "ipv4-redirect", │ │ "action_parameters": { │ │ "from_value": { │ │ "status_code": 301, │ │ "target_url": { │ │ "expression": "concat(\"http://#{ipAddr}\", http.request.uri.path)" │ │ }, │ │ "preserve_query_string": true │ │ } │ │ } │ │ } │ │ ───────────────────────────────────────────────── │ │ 接口调用成功包含的字符串: "success": true │ └─────────────────────────────────────────────────────┘测试 Webhook点击 Webhook 手动触发测试,如果返回成功,回到 Cloudflare 查看规则,目标地址应已自动更新为 STUN 获取的 IP:端口。七、IPv6 DDNS 配置(保持现有直连)进入 Lucky → 动态域名(DDNS) → 添加任务:┌─────────────────────────────────────────────────────┐ │ 【DDNS 任务设置】 │ │ 任务名称: ipv6-ddns │ │ 启用: ☑️ 勾选 │ │ 服务商: Cloudflare │ │ 令牌/密钥: 你的 Cloudflare API 令牌 │ │ ───────────────────────────────────────────────── │ │ IPv4: □ 不启用 │ │ IPv6: ☑️ 启用 │ │ 获取方式: 通过接口获取 或 网卡获取 │ │ ───────────────────────────────────────────────── │ │ 同步记录: │ │ 类型: AAAA │ │ 记录名: @ (或 www) │ │ 内容: {ipv6Addr} │ │ TTL: 自动 │ └─────────────────────────────────────────────────────┘这样 IPv6 用户访问 example.com 会直连你的设备,不走跳转。八、双栈访问效果验证用户类型访问地址解析结果实际访问路径IPv6 用户https://example.comAAAA → 你的 IPv6直连,速度快,无端口IPv4 用户https://example.comA → Cloudflare301 跳转 → http://STUN_IP:端口验证命令# IPv6 解析测试 nslookup -q=aaaa example.com # IPv4 解析测试 nslookup -q=a example.com # 查看重定向规则是否生效 curl -I -L http://example.com # 应看到 Location: http://123.45.67.89:16666九、进阶:HTTPS 安全访问(可选)由于 STUN 获取的是 IP:端口,申请证书较麻烦,推荐双域名方案:域名用途配置example.com入口跳转Cloudflare 重定向规则stun.example.com实际访问A 记录指向 STUN IP,申请证书在 Cloudflare 重定向规则中,将目标改为:concat("https://stun.example.com:#{port}", http.request.uri.path)然后在 Lucky 的 Web 服务 → 反向代理 中,给 stun.example.com 配置 TLS 证书(可用 Lucky ACME 模块自动申请)。十、常见问题排查问题排查方法STUN 获取不到公网地址检查是否 NAT1/NAT2;检查路由器 UPnP/DMZ;尝试关闭防火墙Webhook 测试失败检查 Cloudflare 令牌权限;检查 zone_id/ruleset_id/rule_id 是否填对IPv4 访问跳转后打不开确认 STUN 公网地址用手机流量能直接访问;检查路由器防火墙端口频繁变化正常现象,Webhook 会自动更新;若变化太频繁,尝试把 Lucky 直接装路由器上
2026年06月07日
8 阅读
0 评论
0 点赞
2025-10-01
Telegram实时消息转发工具
Telegram 实时消息转发工具,它能够7*24小时不间断地监听源频道的新消息,并实时转发到目标频道。
2025年10月01日
23 阅读
1 评论
1 点赞
2025-09-25
【Android】安卓APP(包含app数据)备份-(Backup_script)换机必备
Backup_script 数据备份脚本Stars Download Release License Channel概述创作该脚本是为了使用户能够更加完整地备份/恢复应用数据。支持设备必须符合以下条件:Android 8+ 及 arm64 架构。由于本人是台湾人,所以发布的版本为繁体版(针对中国大陆系统,脚本会自动将自身翻译为简体中文)。优势数据完整:在更换系统之后,原有的数据全部保留,无需重新登陆或者下载额外数据包。支持备份 SSAID:可完美备份 LINE 等应用。支持备份应用权限:可备份运行时权限与 Ops 权限。易操作:简单几步即可备份应用完整数据!限制少:不限制机型,可跨安卓版本。功能强:可备份恢复 Split APK。算法多:目前支持的压缩算法有 tar(默认)和 zstd。速度快:即使使用 zstd 压缩算法,速率依旧快速(对比钛备份、Swift Backup)。脚本自带 Tools 完整性校验与压缩包校验。如何使用请认真阅读以下说明,以减少不必要的问题。推荐工具:MT 管理器。若使用 Termux,则请勿使用 tsu。!!!以下操作皆须 ROOT 权限!!!首先将下载 github下载地址 到的脚本解压到任意目录后,可以看到以下目录结构。警告! 不论备份或是恢复都必须保证 tools 目录的存在与完整性,否则脚本失效或是二进制调用失败。脚本结构与说明:backup_script.zip│├── tools│ ├── Device_List│ ├── bc│ ├── busybox│ ├── classes.dex│ ├── cmd│ ├── jq│ ├── find│ ├── keycheck│ ├── soc.json│ ├── tar│ ├── tools.sh│ ├── zip│ └── zstd├── backup_settings.conf <--- 脚本默认行为设置└── start.sh <--- 执行脚本然后执行 start.sh 脚本,使用音量键选择 “生成应用列表”。等待脚本输出提示结束,此时会在当前目录生成一个 appList.txt,这就是你当前安装的所有第三方应用(脚本会屏蔽预装应用,可于 backup_settings.conf 设置需要备份的包名)。现在打开生成的 appList.txt,根据里面的提示操作后保存,这样你就设置好了需要备份的软件。最后找到 backup_settings.conf 打开后根据提示设置并保存,再执行 start.sh,使用音量键选择 “备份应用”。备份结束后会在当前目录生成一个以 Backup_压缩算法名 命名的文件夹,里面就是你的软件备份。将这个文件夹整个保存到其他位置,刷完机后复制回手机,直接执行 Backup_压缩算法名/start.sh 即可恢复备份的所有数据。恢复时,同样道理,里面也有个 appList.txt,使用方法跟第 3 步骤一样,不需要还原的应用条目删除即可。另外,进入备份好的文件夹,找到单独应用的文件夹,里面有 backup.sh 和 recover.sh 可以用于单独备份与恢复该应用。重要提示:脚本执行过程中请留意红色字眼提示有无任何错误。使用恢复脚本时,留意恢复结束后是否提示应用存在 SSAID。假设提示存在 SSAID,请在恢复后立刻重启设备以便套用 SSAID。假设恢复 SSAID 后立刻打开应用,会导致 SSAID 套用失败,因为 Android 会产生一个新的 SSAID,这会导致应用卡白屏或是提示需要重新登录。SSAID 是判断应用是否换过环境与设备的依据之一,保持一致可以减少诸如提示异地登录或需要重新登录验证的情况。附加说明:如何恢复找到恢复文件夹内的 appList.txt 打开,编辑列表(删除不想恢复的应用条目),保存退出。找到 start.sh,授予 ROOT 权限,使用音量键选择 “恢复备份”,然后等待脚本结束即可。关于 start.sh 的其他功能:“重新生成应用列表”功能:可用于刷新 appList.txt 内的列表。使用时机为当你删除列表内的任何应用备份时,或者是恢复备份提示列表错误时。“终止脚本”功能:用于突然想要终止脚本或是意外操作时使用。因为脚本无须后台的特性不能使用常规手段终止,故此另外写了一个终止功能。关于如何更新脚本?目前有三种更新方法:手动更新:将下载的备份脚本 ZIP 压缩包(不解压缩)直接放到脚本任意目录(不包括 tools 目录内)的任意地方,然后执行任何脚本即可,脚本将提示更新。自动检测更新:此备份的任何脚本在执行时均会联网检测脚本版本,当有更新时会自行提示与下载,根据脚本提示操作即可(需要在 backup_settings.conf 中设置 update=1 时生效)。脚本联网仅作为检查更新用途,无任何非法操作。下载目录检测:将下载的压缩包(不解压缩)直接放在 /storage/emulated/0/Download 目录下,脚本会自动检测更新,并按照提示操作即可。关于反馈如果使用过程中出现问题,请携带截图并详细说明问题,通过以下渠道反馈:酷安:@落叶凄凉TELQQ 群:976613477 (很少上,尽量来 TG)Telegram: https://t.me/yawasau_script答疑问:一个 Shell 脚本内为什么有 dex?答: dex 用来实现脚本难以实现的功能。目前 SSAID 备份恢复、备份恢复运行时权限与 Ops 权限、下载与访问 GitHub API 来检查脚本更新、列出用户应用名称与包名、繁体转简体均为 dex 的功能实现。感谢 Android-DataBackup by XayahSuSuSu。常见问题Q1:批量备份大量提示失败怎么办?A1: 退出脚本,删除 /data/backup_tools 目录,再重新备份一次。Q2:批量恢复大量提示失败怎么办?A2: 退出脚本,按照上面同样操作。如果还是错误,请通过反馈渠道建立 issue,帮你排除错误。Q3:微信/QQ 能不能完美备份 & 恢复数据?A3: 不能保证,有的人说不能,有的人说能,所以备份时会有提示。建议用你信赖的备份软件针对微信/QQ 再备份一次,以防丢失重要数据。Q4:为什么部分应用备份很久?例如王者荣耀、PUBG、原神、微信、QQ。A4: 因为连同样软件的数据包(如 OBB 文件等)都一起备份了,例如原神数据包可能超过 9GB,当然需要较长时间,恢复时也是同理,还需要解压缩数据包。Q5:脚本每次备份都是全新备份吗?A5: 脚本备份时会比对上次备份文件的大小,如果有差异就备份,反之则忽略备份以节省时间。铭谢贡献感谢以下各位的贡献与支持:臭批老k (kmou424):提供部分与验证函数思路屑老方 (雄氏老方):提供自动更新脚本方案胖子老陈 (雨季骚年)XayahSuSuSu (XayahSuSuSu):提供 App 支持, dex 支持
2025年09月25日
25 阅读
1 评论
1 点赞
2025-09-22
家庭宽带IPv6搭建3X-UI全攻略
🌐 家庭宽带IPv6搭建3X-UI全攻略一、📋 基础环境要求必备条件硬件设备:N1盒子/树莓派/x86设备/云服务器操作系统:OpenWrt/Linux/飞牛等(需支持IPv6)软件平台:Docker + Docker Compose 容器化部署网络环境:支持IPv6的宽带(联通/移动/电信)网络拓扑:主路由或二级路由(建议主路由直接拨号)二、🚀 快速部署方案方案选择建议根据使用习惯选择合适的部署模式:Host模式:适合频繁更改节点的用户,无需重启容器Bridge模式:适合端口固定的生产环境,隔离性更好(推荐)部署命令Host模式部署# 创建数据目录 mkdir -p /opt/3x-ui/{data,cert} # 启动容器 docker run -d --name 3x-ui --restart unless-stopped \ --network host --privileged \ -e PUID=0 -e PGID=0 \ -v /opt/3x-ui/data:/etc/x-ui \ -v /opt/3x-ui/cert:/root/cert \ enwaiax/x-ui:3x-uiBridge模式部署(推荐)创建 docker-compose.yml 文件:version: "3.8" services: 3x-ui: image: enwaiax/x-ui:3x-ui container_name: 3x-ui ports: - "2053:2053" - "50086:50086" - "50087:50087" restart: unless-stopped privileged: true volumes: - ./data:/etc/x-ui - ./cert:/root/cert运行部署命令:docker-compose up -d三、🔧 关键配置步骤1. 防火墙配置详解主路由环境登录路由器管理界面(通常为192.168.1.1)找到"防火墙"或"安全设置"添加入站规则,开放2053、50086、50087及未来需要的节点端口设置允许IPv4和IPv6访问二级路由环境需要配置端口转发外部端口映射到内部设备IP建议使用固定IP地址分配2. 端口验证方法使用在线工具检测端口状态:访问 https://port.tools输入您的IPv6地址或域名填写需要检测的端口号显示"Success"表示端口通畅💡 提示:如果端口检测失败,请检查防火墙设置和容器运行状态3. 动态域名解析(IPv6固定域名)推荐方案对比工具难度功能推荐度DDNS-GO⭐⭐基础解析★★★★★Lucky⭐⭐⭐功能丰富★★★★☆OpenWrt内置⭐⭐简单易用★★★☆☆DDNS-GO基础配置docker run -d --name ddns-go --restart always \ --net=host -v /opt/ddns-go:/root \ jeessy/ddns-go访问 http://localhost:9876 进行配置(具体配置请参考:DDNS-GO解析IPv6教程)4. ⚙️ 管理面板设置初始访问与节点配置首次登录:地址:http://你的IP:2053账号:admin密码:admin节点配置:添加入站规则VLESS+WebSocket:性能最优选择VMESS+WebSocket:兼容性好 四、📱 客户端配置指南各平台客户端推荐平台推荐客户端下载地址Androidv2rayNGhttps://github.com/2dust/v2rayNGiOSShadowrocketApp StoreWindowsV2RayNhttps://github.com/2dust/v2rayNmacOSClashXhttps://github.com/yichengchen/clashX配置导入方式订阅链接:获取订阅地址从面板客户端中导入订阅扫码添加:生成配置二维码客户端扫码导入手动配置:服务器IPv6地址端口和加密方式用户ID和流设置五、手机安装3X-UI如果你没有以上配置:N1盒子/树莓派/x86设备/云服务器但是有一部root后并安装了面具的的手机,可直接刷以下模块{cloud title="手机3x-ui模块" type="default" url="http://ys.chun7.cn:8000/s/64ea27bae62e4e4297" password=""/}刷入模块重启即可!后台地址: http://127.0.0.1:2233用户名: admin 密码: admin📝 注:本文仅提供技术参考,请确保遵守相关法律法规和服务条款。如有其他问题,欢迎在评论区交流讨论!
2025年09月22日
87 阅读
1 评论
1 点赞
2025-08-31
【Windows】Windows开机自启应用
在 Windows 系统中,为应用程序添加开机自启动可通过多种方法实现,以下整理四种常用方案,按操作复杂度从低到高排列,用户可根据需求选择:⚙️ 方法一:通过“启动”文件夹(推荐新手)适用场景:当前用户生效,无需管理员权限,操作简单。 步骤:按 Win + R 打开运行窗口,输入 shell:startup 并回车(若需对所有用户生效,输入 shell:common startup,需管理员权限)。将目标应用的快捷方式(.lnk 文件)复制到此文件夹中。 ◦ 创建快捷方式:右键点击应用主程序(如 C:\Program Files\App\app.exe)→ 选择“发送到”→“桌面快捷方式”,再将快捷方式移至启动文件夹。重启电脑测试生效。 注意:此方法仅对当前登录用户有效,路径无空格时无需特殊处理。🔧 方法二:任务计划程序(适合需管理员权限/延迟启动)适用场景:需以管理员身份运行、设置启动延迟或条件触发。 步骤:按 Win + R 输入 taskschd.msc 打开任务计划程序。右侧点击 “创建任务”(非“创建基本任务”)。常规选项卡: • 输入任务名称(如 MyApp AutoStart)。 • 勾选 “使用最高权限运行”(如需管理员权限)。触发器选项卡: • 点击“新建”→“登录时”或“计算机启动时”。操作选项卡: • 点击“新建”→“启动程序”,浏览选择应用主程序(.exe)。条件选项卡(可选): • 取消勾选 “只有在计算机使用交流电源时才启动此任务”(避免笔记本电池模式下不启动)。保存设置,重启测试。⚠️ 方法三:注册表编辑(高级用户)适用场景:需全局生效或与安装包集成。 步骤:按 Win + R 输入 regedit 打开注册表编辑器(需管理员权限)。定位路径: • 当前用户:HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run • 所有用户:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run右侧空白处右键 → 新建 → 字符串值,自定义名称(如 MyApp)。双击该值,在“数值数据”中输入应用完整路径(如 "C:\Program Files\App\app.exe")。 • 关键:路径含空格时必须用英文双引号包裹!重启生效。🛠️ 方法四:组策略(仅限专业版/企业版)适用场景:企业环境或需脚本批量部署。 步骤:按 Win + R 输入 gpedit.msc 打开组策略编辑器。导航至: • 用户配置 → Windows 设置 → 脚本(启动/关机)双击右侧“启动” → 点击“添加” → 浏览选择应用或脚本路径。保存后重启生效。💎 总结建议• 普通用户:优先选 启动文件夹(方法一)或 任务计划程序(方法二)。 • 开发者/安装包集成:用 注册表(方法三)或 代码自注册(参考)。 • 企业环境:组策略(方法四)更高效。 注意事项: • 避免过多自启动项影响开机速度(可通过任务管理器禁用冗余项)。 • 路径错误或权限不足是常见失败原因,请仔细检查路径格式及权限设置。
2025年08月31日
6 阅读
0 评论
0 点赞
1
2
...
9
0:00