<?xml version="1.0" encoding="utf-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0"><channel><title>菜鸟自习生</title><link>https://blog.sdjy.eu.org/</link><description>Good Luck To You!</description><item><title>测绘空间酒店源搜索教程</title><link>https://blog.sdjy.eu.org/?id=57</link><description>&lt;head&gt;&lt;/head&gt;&lt;body&gt;&lt;h2 id=&quot;h2-u4E00u3001u641Cu7D22uFF1A-1&quot;&gt;&lt;a class=&quot;reference-link&quot; name=&quot;一、搜索：&quot;&gt;&lt;/a&gt;&lt;span class=&quot;header-link octicon octicon-link&quot;&gt;&lt;/span&gt;一、搜索：&lt;/h2&gt;&lt;pre&gt;&lt;code&gt;iptv/live/zh_cn.js
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;如得到第一个结果为广州的 219.137.29.213:4433，然后通过访问&lt;a href=&quot;http://219.137.29.213:4433/iptv/live/1000.json?key=txiptv&quot;&gt;http://219.137.29.213:4433/iptv/live/1000.json?key=txiptv&lt;/a&gt;, 可得到节目内容的json：&lt;/p&gt;
&lt;h2 id=&quot;h2-u4E8Cu3001u641Cu7D22uFF1A-8&quot;&gt;&lt;a class=&quot;reference-link&quot; name=&quot;二、搜索：&quot;&gt;&lt;/a&gt;&lt;span class=&quot;header-link octicon octicon-link&quot;&gt;&lt;/span&gt;二、搜索：&lt;/h2&gt;&lt;pre&gt;&lt;code&gt;zhgxtv
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;得到第一个结果为赣州的 117.44.0.79:20000然后通过访问&lt;a href=&quot;http://117.44.0.79:20000/ZHGXTV/Public/json/live_interface.txt&quot;&gt;http://117.44.0.79:20000/ZHGXTV/Public/json/live_interface.txt&lt;/a&gt;, 得到节目列表&lt;/p&gt;
&lt;h2 id=&quot;h2-u4E09u3001u76F8u5173u8BF4u660E1u3001u6211u4EECu53EFu4EE5u901Au8FC7u6DFBu52A0u9650u5B9Au6761u4EF6u6765u83B7u53D6u6211u4EECu9700u8981u7684u8282u76EEuFF0Cu5982u589Eu52A0u9650u5B9Au533Au57DFuFF1A-14&quot;&gt;&lt;a class=&quot;reference-link&quot; name=&quot;三、相关说明1、我们可以通过添加限定条件来获取我们需要的节目，如增加限定区域：&quot;&gt;&lt;/a&gt;&lt;span class=&quot;header-link octicon octicon-link&quot;&gt;&lt;/span&gt;三、相关说明1、我们可以通过添加限定条件来获取我们需要的节目，如增加限定区域：&lt;/h2&gt;&lt;pre&gt;&lt;code&gt;ZHGXTV +subdivisions:&quot;广西&quot;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;只搜索广西的酒店源的IP&lt;/p&gt;
&lt;p&gt;这个是搜索广东地区的，搜索其他的就改其他地区的拼音&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-php&quot;&gt;body=&quot;/iptv/live/zh_cn.js&quot; &amp;amp;&amp;amp; region=&quot;Guangdong&quot;
&lt;/code&gt;&lt;/pre&gt;
&lt;/body&gt;</description><pubDate>Wed, 17 Jun 2026 14:40:03 +0800</pubDate></item><item><title>C盘爆红清理方法</title><link>https://blog.sdjy.eu.org/?id=56</link><description>&lt;head&gt;&lt;/head&gt;&lt;body&gt;&lt;h1 id=&quot;h1-Cu76D8u7206u7EA2u6E05u7406u65B9u6CD5-1&quot;&gt;&lt;a class=&quot;reference-link&quot; name=&quot;C盘爆红清理方法&quot;&gt;&lt;/a&gt;&lt;span class=&quot;header-link octicon octicon-link&quot;&gt;&lt;/span&gt;C盘爆红清理方法&lt;/h1&gt;&lt;p&gt;一、下载工具：&lt;a href=&quot;https://ld0766.lanzouu.com/ivuW53q7vryj&quot;&gt;Windows Install Clean Up&lt;/a&gt;&lt;br&gt;二、以管理员身份运行CMD&lt;br&gt;由于这个工具需要注册系统服务，必须在命令行下以管理员身份运行。 在Windows搜索框输入 cmd ，然后在“命令提示符”上右键，选择&amp;nbsp;“以管理员身份运行”。&lt;/p&gt;
&lt;p&gt;三、打开命令行后，首先进入桌面路径。输入以下命令后按回车：&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;cd C：\Users\Administrator\Desktop\wicleanup
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;此处路径结合你实际存放该文件的路径。&lt;br&gt;四、执行清理命令 输入清理命令并回车：&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;WICleanupC -s
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;这里的 -s 参数是关键，它会静默扫描并清理那些孤立的、也就是不再被系统需要的Windows Installer缓存文件。&lt;/p&gt;
&lt;/body&gt;</description><pubDate>Sun, 24 May 2026 11:39:34 +0800</pubDate></item><item><title>国内常用镜像源大全</title><link>https://blog.sdjy.eu.org/?id=55</link><description>&lt;head&gt;&lt;/head&gt;&lt;body&gt;&lt;h1 id=&quot;h1-u56FDu5185u5E38u7528u955Cu50CFu6E90u5927u5168-1&quot;&gt;&lt;a class=&quot;reference-link&quot; name=&quot;国内常用镜像源大全&quot;&gt;&lt;/a&gt;&lt;span class=&quot;header-link octicon octicon-link&quot;&gt;&lt;/span&gt;国内常用镜像源大全&lt;/h1&gt;&lt;blockquote&gt;&lt;p&gt;作者实战总结 · 覆盖 Linux / Python / Node / Java / Go / Docker / Conda / Homebrew&lt;br&gt;目标：一条命令能搞定，绝不让你多敲一行&lt;/p&gt;
&lt;/blockquote&gt;&lt;hr&gt;
&lt;h2 id=&quot;h2-u4E00u3001u4E3Au4EC0u4E48u8981u6362u56FDu5185u955Cu50CFu6E90uFF1F-8&quot;&gt;&lt;a class=&quot;reference-link&quot; name=&quot;一、为什么要换国内镜像源？&quot;&gt;&lt;/a&gt;&lt;span class=&quot;header-link octicon octicon-link&quot;&gt;&lt;/span&gt;一、为什么要换国内镜像源？&lt;/h2&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;场景&lt;/th&gt;
&lt;th&gt;不换源&lt;/th&gt;
&lt;th&gt;换源后&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;pip install numpy&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;等 10 分钟&lt;/td&gt;
&lt;td&gt;10 秒搞定&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;apt update&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;转圈到天亮&lt;/td&gt;
&lt;td&gt;秒完&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;docker pull&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;卡在 0%&lt;/td&gt;
&lt;td&gt;正常速度&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;strong&gt;核心原因只有一个：&lt;/strong&gt;  &lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;默认源在境外，国内访问慢甚至根本连不上。&lt;/p&gt;
&lt;/blockquote&gt;&lt;hr&gt;
&lt;h2 id=&quot;h2-u4E8Cu3001u901Au7528u516Cu5171u955Cu50CFu7AD9uFF08720u4E2AuFF09-21&quot;&gt;&lt;a class=&quot;reference-link&quot; name=&quot;二、通用公共镜像站（7 个）&quot;&gt;&lt;/a&gt;&lt;span class=&quot;header-link octicon octicon-link&quot;&gt;&lt;/span&gt;二、通用公共镜像站（7 个）&lt;/h2&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;#&lt;/th&gt;
&lt;th&gt;名称&lt;/th&gt;
&lt;th&gt;地址&lt;/th&gt;
&lt;th&gt;特点&lt;/th&gt;
&lt;th&gt;推荐指数&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;1&lt;/td&gt;
&lt;td&gt;清华大学开源镜像站&lt;/td&gt;
&lt;td&gt;&lt;a href=&quot;https://mirrors.tuna.tsinghua.edu.cn/&quot;&gt;https://mirrors.tuna.tsinghua.edu.cn/&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;覆盖最全，HTTPS + IPv6&lt;/td&gt;
&lt;td&gt;⭐⭐⭐⭐⭐&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;2&lt;/td&gt;
&lt;td&gt;阿里云开源镜像站&lt;/td&gt;
&lt;td&gt;&lt;a href=&quot;https://mirrors.aliyun.com/&quot;&gt;https://mirrors.aliyun.com/&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;企业级稳定，ECS 内网加速&lt;/td&gt;
&lt;td&gt;⭐⭐⭐⭐⭐&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;3&lt;/td&gt;
&lt;td&gt;中科大开源镜像站&lt;/td&gt;
&lt;td&gt;&lt;a href=&quot;https://mirrors.ustc.edu.cn/&quot;&gt;https://mirrors.ustc.edu.cn/&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;科研友好&lt;/td&gt;
&lt;td&gt;⭐⭐⭐⭐⭐&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;4&lt;/td&gt;
&lt;td&gt;腾讯云开源镜像站&lt;/td&gt;
&lt;td&gt;&lt;a href=&quot;https://mirrors.cloud.tencent.com/&quot;&gt;https://mirrors.cloud.tencent.com/&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;K8s / Docker 优化&lt;/td&gt;
&lt;td&gt;⭐⭐⭐⭐&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;5&lt;/td&gt;
&lt;td&gt;华为云开源镜像站&lt;/td&gt;
&lt;td&gt;&lt;a href=&quot;https://mirrors.huaweicloud.com/&quot;&gt;https://mirrors.huaweicloud.com/&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;ARM / openEuler&lt;/td&gt;
&lt;td&gt;⭐⭐⭐⭐&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;6&lt;/td&gt;
&lt;td&gt;网易开源镜像站&lt;/td&gt;
&lt;td&gt;&lt;a href=&quot;https://mirrors.163.com/&quot;&gt;https://mirrors.163.com/&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;老旧系统支持好&lt;/td&gt;
&lt;td&gt;⭐⭐⭐&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;7&lt;/td&gt;
&lt;td&gt;华中科技大学镜像站&lt;/td&gt;
&lt;td&gt;&lt;a href=&quot;https://mirror.hust.edu.cn/&quot;&gt;https://mirror.hust.edu.cn/&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;中部区域优化&lt;/td&gt;
&lt;td&gt;⭐⭐⭐&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;hr&gt;
&lt;h2 id=&quot;h2-u4E09u3001Linux20u7CFBu7EDFu4E13u5C5Eu955Cu50CFu6E90uFF08520u4E2AuFF09-35&quot;&gt;&lt;a class=&quot;reference-link&quot; name=&quot;三、Linux 系统专属镜像源（5 个）&quot;&gt;&lt;/a&gt;&lt;span class=&quot;header-link octicon octicon-link&quot;&gt;&lt;/span&gt;三、Linux 系统专属镜像源（5 个）&lt;/h2&gt;&lt;h3 id=&quot;h3-Ubuntu-37&quot;&gt;&lt;a class=&quot;reference-link&quot; name=&quot;Ubuntu&quot;&gt;&lt;/a&gt;&lt;span class=&quot;header-link octicon octicon-link&quot;&gt;&lt;/span&gt;Ubuntu&lt;/h3&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;#&lt;/th&gt;
&lt;th&gt;镜像站&lt;/th&gt;
&lt;th&gt;地址&lt;/th&gt;
&lt;th&gt;推荐版本&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;8&lt;/td&gt;
&lt;td&gt;清华大学&lt;/td&gt;
&lt;td&gt;&lt;a href=&quot;https://mirrors.tuna.tsinghua.edu.cn/ubuntu/&quot;&gt;https://mirrors.tuna.tsinghua.edu.cn/ubuntu/&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;全版本&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;9&lt;/td&gt;
&lt;td&gt;阿里云&lt;/td&gt;
&lt;td&gt;&lt;a href=&quot;https://mirrors.aliyun.com/ubuntu/&quot;&gt;https://mirrors.aliyun.com/ubuntu/&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;全版本&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;10&lt;/td&gt;
&lt;td&gt;中科大&lt;/td&gt;
&lt;td&gt;&lt;a href=&quot;https://mirrors.ustc.edu.cn/ubuntu/&quot;&gt;https://mirrors.ustc.edu.cn/ubuntu/&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;全版本&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id=&quot;h3-CentOS20/20RHEL-45&quot;&gt;&lt;a class=&quot;reference-link&quot; name=&quot;CentOS / RHEL&quot;&gt;&lt;/a&gt;&lt;span class=&quot;header-link octicon octicon-link&quot;&gt;&lt;/span&gt;CentOS / RHEL&lt;/h3&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;#&lt;/th&gt;
&lt;th&gt;镜像站&lt;/th&gt;
&lt;th&gt;地址&lt;/th&gt;
&lt;th&gt;说明&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;11&lt;/td&gt;
&lt;td&gt;阿里云 CentOS&lt;/td&gt;
&lt;td&gt;&lt;a href=&quot;https://mirrors.aliyun.com/centos/&quot;&gt;https://mirrors.aliyun.com/centos/&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;CentOS 7/8，ECS 内网优化&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;12&lt;/td&gt;
&lt;td&gt;兰州大学&lt;/td&gt;
&lt;td&gt;&lt;a href=&quot;https://mirror.lzu.edu.cn/&quot;&gt;https://mirror.lzu.edu.cn/&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;西北区域加速，IPv6&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id=&quot;h3-Debian-52&quot;&gt;&lt;a class=&quot;reference-link&quot; name=&quot;Debian&quot;&gt;&lt;/a&gt;&lt;span class=&quot;header-link octicon octicon-link&quot;&gt;&lt;/span&gt;Debian&lt;/h3&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;#&lt;/th&gt;
&lt;th&gt;镜像站&lt;/th&gt;
&lt;th&gt;地址&lt;/th&gt;
&lt;th&gt;说明&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;13&lt;/td&gt;
&lt;td&gt;网易 Debian&lt;/td&gt;
&lt;td&gt;&lt;a href=&quot;https://mirrors.163.com/debian/&quot;&gt;https://mirrors.163.com/debian/&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;老旧版本（Debian 9）支持最好&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;14&lt;/td&gt;
&lt;td&gt;清华大学 Debian&lt;/td&gt;
&lt;td&gt;&lt;a href=&quot;https://mirrors.tuna.tsinghua.edu.cn/debian/&quot;&gt;https://mirrors.tuna.tsinghua.edu.cn/debian/&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;稳定，全分支覆盖&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;hr&gt;
&lt;h2 id=&quot;h2-u56DBu3001Python20/20pip20u955Cu50CFu6E90uFF08620u4E2AuFF09-61&quot;&gt;&lt;a class=&quot;reference-link&quot; name=&quot;四、Python / pip 镜像源（6 个）&quot;&gt;&lt;/a&gt;&lt;span class=&quot;header-link octicon octicon-link&quot;&gt;&lt;/span&gt;四、Python / pip 镜像源（6 个）&lt;/h2&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;#&lt;/th&gt;
&lt;th&gt;名称&lt;/th&gt;
&lt;th&gt;地址&lt;/th&gt;
&lt;th&gt;稳定性&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;15&lt;/td&gt;
&lt;td&gt;清华 PyPI&lt;/td&gt;
&lt;td&gt;&lt;a href=&quot;https://pypi.tuna.tsinghua.edu.cn/simple/&quot;&gt;https://pypi.tuna.tsinghua.edu.cn/simple/&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;极稳，首选&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;16&lt;/td&gt;
&lt;td&gt;阿里云 PyPI&lt;/td&gt;
&lt;td&gt;&lt;a href=&quot;https://mirrors.aliyun.com/pypi/simple/&quot;&gt;https://mirrors.aliyun.com/pypi/simple/&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;企业首选&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;17&lt;/td&gt;
&lt;td&gt;中科大 PyPI&lt;/td&gt;
&lt;td&gt;&lt;a href=&quot;https://pypi.mirrors.ustc.edu.cn/simple/&quot;&gt;https://pypi.mirrors.ustc.edu.cn/simple/&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;科研场景好&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;18&lt;/td&gt;
&lt;td&gt;腾讯云 PyPI&lt;/td&gt;
&lt;td&gt;&lt;a href=&quot;https://mirrors.cloud.tencent.com/pypi/simple/&quot;&gt;https://mirrors.cloud.tencent.com/pypi/simple/&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;腾讯云环境快&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;19&lt;/td&gt;
&lt;td&gt;华为云 PyPI&lt;/td&gt;
&lt;td&gt;&lt;a href=&quot;https://repo.huaweicloud.com/repository/pypi/simple/&quot;&gt;https://repo.huaweicloud.com/repository/pypi/simple/&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;华为云环境快&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;20&lt;/td&gt;
&lt;td&gt;豆瓣 PyPI&lt;/td&gt;
&lt;td&gt;&lt;a href=&quot;https://pypi.douban.com/simple/&quot;&gt;https://pypi.douban.com/simple/&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;个人测试用&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;hr&gt;
&lt;h2 id=&quot;h2-u4E94u3001Node.js20/20npm20u955Cu50CFu6E90uFF08220u4E2AuFF09-74&quot;&gt;&lt;a class=&quot;reference-link&quot; name=&quot;五、Node.js / npm 镜像源（2 个）&quot;&gt;&lt;/a&gt;&lt;span class=&quot;header-link octicon octicon-link&quot;&gt;&lt;/span&gt;五、Node.js / npm 镜像源（2 个）&lt;/h2&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;#&lt;/th&gt;
&lt;th&gt;名称&lt;/th&gt;
&lt;th&gt;地址&lt;/th&gt;
&lt;th&gt;说明&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;21&lt;/td&gt;
&lt;td&gt;淘宝 npmmirror&lt;/td&gt;
&lt;td&gt;&lt;a href=&quot;https://registry.npmmirror.com/&quot;&gt;https://registry.npmmirror.com/&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;原 npm.taobao.org 已废弃&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;22&lt;/td&gt;
&lt;td&gt;腾讯云 npm&lt;/td&gt;
&lt;td&gt;&lt;a href=&quot;https://mirrors.cloud.tencent.com/npm/&quot;&gt;https://mirrors.cloud.tencent.com/npm/&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;腾讯云环境备选&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;hr&gt;
&lt;h2 id=&quot;h2-u516Du3001Java20/20Maven20u955Cu50CFu6E90uFF08220u4E2AuFF09-83&quot;&gt;&lt;a class=&quot;reference-link&quot; name=&quot;六、Java / Maven 镜像源（2 个）&quot;&gt;&lt;/a&gt;&lt;span class=&quot;header-link octicon octicon-link&quot;&gt;&lt;/span&gt;六、Java / Maven 镜像源（2 个）&lt;/h2&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;#&lt;/th&gt;
&lt;th&gt;名称&lt;/th&gt;
&lt;th&gt;地址&lt;/th&gt;
&lt;th&gt;说明&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;23&lt;/td&gt;
&lt;td&gt;阿里云 Maven&lt;/td&gt;
&lt;td&gt;&lt;a href=&quot;https://maven.aliyun.com/repository/public&quot;&gt;https://maven.aliyun.com/repository/public&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;Spring Boot 优化&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;24&lt;/td&gt;
&lt;td&gt;华为云 Maven&lt;/td&gt;
&lt;td&gt;&lt;a href=&quot;https://repo.huaweicloud.com/repository/maven/&quot;&gt;https://repo.huaweicloud.com/repository/maven/&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;ARM 服务器友好&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;hr&gt;
&lt;h2 id=&quot;h2-u4E03u3001Go20u6A21u5757u4EE3u7406uFF08320u4E2AuFF09-92&quot;&gt;&lt;a class=&quot;reference-link&quot; name=&quot;七、Go 模块代理（3 个）&quot;&gt;&lt;/a&gt;&lt;span class=&quot;header-link octicon octicon-link&quot;&gt;&lt;/span&gt;七、Go 模块代理（3 个）&lt;/h2&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;#&lt;/th&gt;
&lt;th&gt;名称&lt;/th&gt;
&lt;th&gt;地址&lt;/th&gt;
&lt;th&gt;说明&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;25&lt;/td&gt;
&lt;td&gt;goproxy.cn&lt;/td&gt;
&lt;td&gt;&lt;a href=&quot;https://goproxy.cn&quot;&gt;https://goproxy.cn&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;七牛云出品，最稳定&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;26&lt;/td&gt;
&lt;td&gt;goproxy.io&lt;/td&gt;
&lt;td&gt;&lt;a href=&quot;https://goproxy.io&quot;&gt;https://goproxy.io&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;有时更快&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;27&lt;/td&gt;
&lt;td&gt;阿里云 Go 代理&lt;/td&gt;
&lt;td&gt;&lt;a href=&quot;https://mirrors.aliyun.com/goproxy/&quot;&gt;https://mirrors.aliyun.com/goproxy/&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;ECS 内网加速&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;hr&gt;
&lt;h2 id=&quot;h2-u516Bu3001Docker20u955Cu50CFu52A0u901FuFF08520u4E2AuFF09-102&quot;&gt;&lt;a class=&quot;reference-link&quot; name=&quot;八、Docker 镜像加速（5 个）&quot;&gt;&lt;/a&gt;&lt;span class=&quot;header-link octicon octicon-link&quot;&gt;&lt;/span&gt;八、Docker 镜像加速（5 个）&lt;/h2&gt;&lt;p&gt;⚠️ 注意：阿里云公共加速器、中科大、清华、网易等旧 Docker 源已于 2024 年前后陆续停止同步。&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;#&lt;/th&gt;
&lt;th&gt;名称&lt;/th&gt;
&lt;th&gt;地址&lt;/th&gt;
&lt;th&gt;速度&lt;/th&gt;
&lt;th&gt;稳定性&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;28&lt;/td&gt;
&lt;td&gt;轩辕镜像&lt;/td&gt;
&lt;td&gt;&lt;a href=&quot;https://docker.xuanyuan.me&quot;&gt;https://docker.xuanyuan.me&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;~12 MB/s&lt;/td&gt;
&lt;td&gt;99.2%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;29&lt;/td&gt;
&lt;td&gt;毫秒镜像&lt;/td&gt;
&lt;td&gt;&lt;a href=&quot;https://docker.1ms.run&quot;&gt;https://docker.1ms.run&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;~12 MB/s&lt;/td&gt;
&lt;td&gt;99.5%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;30&lt;/td&gt;
&lt;td&gt;DaoCloud&lt;/td&gt;
&lt;td&gt;&lt;a href=&quot;https://docker.m.daocloud.io&quot;&gt;https://docker.m.daocloud.io&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;~9 MB/s&lt;/td&gt;
&lt;td&gt;97.6%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;31&lt;/td&gt;
&lt;td&gt;AtomHub&lt;/td&gt;
&lt;td&gt;&lt;a href=&quot;https://atomhub.openatom.cn&quot;&gt;https://atomhub.openatom.cn&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;~8 MB/s&lt;/td&gt;
&lt;td&gt;100%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;32&lt;/td&gt;
&lt;td&gt;阿里云专属加速&lt;/td&gt;
&lt;td&gt;&lt;a href=&quot;https://cr.console.aliyun.com/&quot;&gt;https://cr.console.aliyun.com/&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;需登录获取专属地址&lt;/td&gt;
&lt;td&gt;极稳&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;hr&gt;
&lt;h2 id=&quot;h2-u4E5Du3001Conda20/20Anaconda20u955Cu50CFu6E90uFF08220u4E2AuFF09-116&quot;&gt;&lt;a class=&quot;reference-link&quot; name=&quot;九、Conda / Anaconda 镜像源（2 个）&quot;&gt;&lt;/a&gt;&lt;span class=&quot;header-link octicon octicon-link&quot;&gt;&lt;/span&gt;九、Conda / Anaconda 镜像源（2 个）&lt;/h2&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;#&lt;/th&gt;
&lt;th&gt;名称&lt;/th&gt;
&lt;th&gt;地址&lt;/th&gt;
&lt;th&gt;说明&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;33&lt;/td&gt;
&lt;td&gt;清华 Conda&lt;/td&gt;
&lt;td&gt;&lt;a href=&quot;https://mirrors.tuna.tsinghua.edu.cn/anaconda/&quot;&gt;https://mirrors.tuna.tsinghua.edu.cn/anaconda/&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;首选&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;34&lt;/td&gt;
&lt;td&gt;北京外国语大学&lt;/td&gt;
&lt;td&gt;&lt;a href=&quot;https://mirrors.bfsu.edu.cn/anaconda/&quot;&gt;https://mirrors.bfsu.edu.cn/anaconda/&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;清华抖动时备选&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;hr&gt;
&lt;h2 id=&quot;h2-u5341u3001Homebrew20u955Cu50CFu6E90uFF08120u4E2AuFF09-125&quot;&gt;&lt;a class=&quot;reference-link&quot; name=&quot;十、Homebrew 镜像源（1 个）&quot;&gt;&lt;/a&gt;&lt;span class=&quot;header-link octicon octicon-link&quot;&gt;&lt;/span&gt;十、Homebrew 镜像源（1 个）&lt;/h2&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;#&lt;/th&gt;
&lt;th&gt;名称&lt;/th&gt;
&lt;th&gt;地址&lt;/th&gt;
&lt;th&gt;说明&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;35&lt;/td&gt;
&lt;td&gt;清华 Homebrew&lt;/td&gt;
&lt;td&gt;&lt;a href=&quot;https://mirrors.tuna.tsinghua.edu.cn/homebrew-bottles/&quot;&gt;https://mirrors.tuna.tsinghua.edu.cn/homebrew-bottles/&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;macOS 必备&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;hr&gt;
&lt;h2 id=&quot;h2-u5341u4E00u3001u5404u573Au666Fu4E00u952Eu6362u6E90u547Du4EE4-133&quot;&gt;&lt;a class=&quot;reference-link&quot; name=&quot;十一、各场景一键换源命令&quot;&gt;&lt;/a&gt;&lt;span class=&quot;header-link octicon octicon-link&quot;&gt;&lt;/span&gt;十一、各场景一键换源命令&lt;/h2&gt;&lt;h3 id=&quot;h3-uD83DuDC2720Ubuntu20/20Debian-135&quot;&gt;&lt;a class=&quot;reference-link&quot; name=&quot;🐧 Ubuntu / Debian&quot;&gt;&lt;/a&gt;&lt;span class=&quot;header-link octicon octicon-link&quot;&gt;&lt;/span&gt;🐧 Ubuntu / Debian&lt;/h3&gt;&lt;h4 id=&quot;h4-u4E00u952Eu6362u6E05u534Eu6E90uFF08Ubuntu2022.04uFF09-137&quot;&gt;&lt;a class=&quot;reference-link&quot; name=&quot;一键换清华源（Ubuntu 22.04）&quot;&gt;&lt;/a&gt;&lt;span class=&quot;header-link octicon octicon-link&quot;&gt;&lt;/span&gt;一键换清华源（Ubuntu 22.04）&lt;/h4&gt;&lt;pre&gt;&lt;code class=&quot;language-bash&quot;&gt;sudo sed -i 's|http://archive.ubuntu.com/ubuntu|https://mirrors.tuna.tsinghua.edu.cn/ubuntu|g' /etc/apt/sources.list
sudo apt update
&lt;/code&gt;&lt;/pre&gt;
&lt;h4 id=&quot;h4-u81EAu52A8u8BC6u522Bu7248u672CuFF08u63A8u8350uFF09-143&quot;&gt;&lt;a class=&quot;reference-link&quot; name=&quot;自动识别版本（推荐）&quot;&gt;&lt;/a&gt;&lt;span class=&quot;header-link octicon octicon-link&quot;&gt;&lt;/span&gt;自动识别版本（推荐）&lt;/h4&gt;&lt;pre&gt;&lt;code class=&quot;language-bash&quot;&gt;ubuntu_codename=$(lsb_release -cs)
sudo tee /etc/apt/sources.list &amp;lt;&amp;lt;EOF
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ ${ubuntu_codename} main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ ${ubuntu_codename}-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ ${ubuntu_codename}-security main restricted universe multiverse
EOF
sudo apt update
&lt;/code&gt;&lt;/pre&gt;
&lt;hr&gt;
&lt;h3 id=&quot;h3-uD83DuDC2720CentOS207-156&quot;&gt;&lt;a class=&quot;reference-link&quot; name=&quot;🐧 CentOS 7&quot;&gt;&lt;/a&gt;&lt;span class=&quot;header-link octicon octicon-link&quot;&gt;&lt;/span&gt;🐧 CentOS 7&lt;/h3&gt;&lt;pre&gt;&lt;code class=&quot;language-bash&quot;&gt;sudo mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak
sudo curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
sudo yum makecache
&lt;/code&gt;&lt;/pre&gt;
&lt;hr&gt;
&lt;h3 id=&quot;h3-uD83DuDC0D20pip-165&quot;&gt;&lt;a class=&quot;reference-link&quot; name=&quot;🐍 pip&quot;&gt;&lt;/a&gt;&lt;span class=&quot;header-link octicon octicon-link&quot;&gt;&lt;/span&gt;🐍 pip&lt;/h3&gt;&lt;h4 id=&quot;h4-u4E34u65F6u4F7Fu7528-167&quot;&gt;&lt;a class=&quot;reference-link&quot; name=&quot;临时使用&quot;&gt;&lt;/a&gt;&lt;span class=&quot;header-link octicon octicon-link&quot;&gt;&lt;/span&gt;临时使用&lt;/h4&gt;&lt;pre&gt;&lt;code class=&quot;language-bash&quot;&gt;pip install 包名 -i https://pypi.tuna.tsinghua.edu.cn/simple/
&lt;/code&gt;&lt;/pre&gt;
&lt;h4 id=&quot;h4-u6C38u4E45u751Fu6548uFF08Linux20/20macOSuFF09-172&quot;&gt;&lt;a class=&quot;reference-link&quot; name=&quot;永久生效（Linux / macOS）&quot;&gt;&lt;/a&gt;&lt;span class=&quot;header-link octicon octicon-link&quot;&gt;&lt;/span&gt;永久生效（Linux / macOS）&lt;/h4&gt;&lt;pre&gt;&lt;code class=&quot;language-bash&quot;&gt;pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple/
pip config set global.trusted-host pypi.tuna.tsinghua.edu.cn
&lt;/code&gt;&lt;/pre&gt;
&lt;h4 id=&quot;h4-Windows20PowerShell-178&quot;&gt;&lt;a class=&quot;reference-link&quot; name=&quot;Windows PowerShell&quot;&gt;&lt;/a&gt;&lt;span class=&quot;header-link octicon octicon-link&quot;&gt;&lt;/span&gt;Windows PowerShell&lt;/h4&gt;&lt;pre&gt;&lt;code class=&quot;language-powershell&quot;&gt;pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple/
&lt;/code&gt;&lt;/pre&gt;
&lt;h4 id=&quot;h4-u6062u590Du5B98u65B9u6E90-183&quot;&gt;&lt;a class=&quot;reference-link&quot; name=&quot;恢复官方源&quot;&gt;&lt;/a&gt;&lt;span class=&quot;header-link octicon octicon-link&quot;&gt;&lt;/span&gt;恢复官方源&lt;/h4&gt;&lt;pre&gt;&lt;code class=&quot;language-bash&quot;&gt;pip config unset global.index-url
&lt;/code&gt;&lt;/pre&gt;
&lt;hr&gt;
&lt;h3 id=&quot;h3-uD83DuDCE620npm-190&quot;&gt;&lt;a class=&quot;reference-link&quot; name=&quot;📦 npm&quot;&gt;&lt;/a&gt;&lt;span class=&quot;header-link octicon octicon-link&quot;&gt;&lt;/span&gt;📦 npm&lt;/h3&gt;&lt;h4 id=&quot;h4-u4E34u65F6-192&quot;&gt;&lt;a class=&quot;reference-link&quot; name=&quot;临时&quot;&gt;&lt;/a&gt;&lt;span class=&quot;header-link octicon octicon-link&quot;&gt;&lt;/span&gt;临时&lt;/h4&gt;&lt;pre&gt;&lt;code class=&quot;language-bash&quot;&gt;npm install --registry=https://registry.npmmirror.com
&lt;/code&gt;&lt;/pre&gt;
&lt;h4 id=&quot;h4-u6C38u4E45-197&quot;&gt;&lt;a class=&quot;reference-link&quot; name=&quot;永久&quot;&gt;&lt;/a&gt;&lt;span class=&quot;header-link octicon octicon-link&quot;&gt;&lt;/span&gt;永久&lt;/h4&gt;&lt;pre&gt;&lt;code class=&quot;language-bash&quot;&gt;npm config set registry https://registry.npmmirror.com
&lt;/code&gt;&lt;/pre&gt;
&lt;h4 id=&quot;h4-u4F7Fu752820nrm-202&quot;&gt;&lt;a class=&quot;reference-link&quot; name=&quot;使用 nrm&quot;&gt;&lt;/a&gt;&lt;span class=&quot;header-link octicon octicon-link&quot;&gt;&lt;/span&gt;使用 nrm&lt;/h4&gt;&lt;pre&gt;&lt;code class=&quot;language-bash&quot;&gt;npm install -g nrm
nrm ls
nrm use taobao
nrm test
&lt;/code&gt;&lt;/pre&gt;
&lt;hr&gt;
&lt;h3 id=&quot;h3-u261520Maven-212&quot;&gt;&lt;a class=&quot;reference-link&quot; name=&quot;☕ Maven&quot;&gt;&lt;/a&gt;&lt;span class=&quot;header-link octicon octicon-link&quot;&gt;&lt;/span&gt;☕ Maven&lt;/h3&gt;&lt;p&gt;在 &lt;code&gt;~/.m2/settings.xml&lt;/code&gt; 中添加：&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-xml&quot;&gt;&amp;lt;mirror&amp;gt;
  &amp;lt;id&amp;gt;aliyunmaven&amp;lt;/id&amp;gt;
  &amp;lt;mirrorOf&amp;gt;*&amp;lt;/mirrorOf&amp;gt;
  &amp;lt;name&amp;gt;阿里云公共仓库&amp;lt;/name&amp;gt;
  &amp;lt;url&amp;gt;https://maven.aliyun.com/repository/public&amp;lt;/url&amp;gt;
&amp;lt;/mirror&amp;gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;hr&gt;
&lt;h3 id=&quot;h3-uD83DuDC3920Go-226&quot;&gt;&lt;a class=&quot;reference-link&quot; name=&quot;🐹 Go&quot;&gt;&lt;/a&gt;&lt;span class=&quot;header-link octicon octicon-link&quot;&gt;&lt;/span&gt;🐹 Go&lt;/h3&gt;&lt;pre&gt;&lt;code class=&quot;language-bash&quot;&gt;go env -w GOPROXY=https://goproxy.cn,direct
go env -w GONOSUMCHECK=*
go env GOPROXY
&lt;/code&gt;&lt;/pre&gt;
&lt;hr&gt;
&lt;h3 id=&quot;h3-uD83DuDC3320Docker-235&quot;&gt;&lt;a class=&quot;reference-link&quot; name=&quot;🐳 Docker&quot;&gt;&lt;/a&gt;&lt;span class=&quot;header-link octicon octicon-link&quot;&gt;&lt;/span&gt;🐳 Docker&lt;/h3&gt;&lt;h4 id=&quot;h4-Linux20u4E00u952Eu914Du7F6E-237&quot;&gt;&lt;a class=&quot;reference-link&quot; name=&quot;Linux 一键配置&quot;&gt;&lt;/a&gt;&lt;span class=&quot;header-link octicon octicon-link&quot;&gt;&lt;/span&gt;Linux 一键配置&lt;/h4&gt;&lt;pre&gt;&lt;code class=&quot;language-bash&quot;&gt;sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json &amp;lt;&amp;lt;EOF
{
  &quot;registry-mirrors&quot;: [
    &quot;https://docker.xuanyuan.me&quot;,
    &quot;https://docker.1ms.run&quot;,
    &quot;https://docker.m.daocloud.io&quot;
  ]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
&lt;/code&gt;&lt;/pre&gt;
&lt;h4 id=&quot;h4-u9A8Cu8BC1-253&quot;&gt;&lt;a class=&quot;reference-link&quot; name=&quot;验证&quot;&gt;&lt;/a&gt;&lt;span class=&quot;header-link octicon octicon-link&quot;&gt;&lt;/span&gt;验证&lt;/h4&gt;&lt;pre&gt;&lt;code class=&quot;language-bash&quot;&gt;docker info | grep -A5 &quot;Registry Mirrors&quot;
&lt;/code&gt;&lt;/pre&gt;
&lt;h4 id=&quot;h4-u4E34u65F6u62C9u53D6-258&quot;&gt;&lt;a class=&quot;reference-link&quot; name=&quot;临时拉取&quot;&gt;&lt;/a&gt;&lt;span class=&quot;header-link octicon octicon-link&quot;&gt;&lt;/span&gt;临时拉取&lt;/h4&gt;&lt;pre&gt;&lt;code class=&quot;language-bash&quot;&gt;docker pull docker.xuanyuan.me/library/nginx:latest
&lt;/code&gt;&lt;/pre&gt;
&lt;hr&gt;
&lt;h3 id=&quot;h3-uD83DuDC0D20Conda-265&quot;&gt;&lt;a class=&quot;reference-link&quot; name=&quot;🐍 Conda&quot;&gt;&lt;/a&gt;&lt;span class=&quot;header-link octicon octicon-link&quot;&gt;&lt;/span&gt;🐍 Conda&lt;/h3&gt;&lt;pre&gt;&lt;code class=&quot;language-bash&quot;&gt;conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --set show_channel_urls yes
conda config --show channels
&lt;/code&gt;&lt;/pre&gt;
&lt;hr&gt;
&lt;h3 id=&quot;h3-uD83CuDF7A20HomebrewuFF08macOSuFF09-275&quot;&gt;&lt;a class=&quot;reference-link&quot; name=&quot;🍺 Homebrew（macOS）&quot;&gt;&lt;/a&gt;&lt;span class=&quot;header-link octicon octicon-link&quot;&gt;&lt;/span&gt;🍺 Homebrew（macOS）&lt;/h3&gt;&lt;pre&gt;&lt;code class=&quot;language-bash&quot;&gt;export HOMEBREW_BREW_GIT_REMOTE=&quot;https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/brew.git&quot;
export HOMEBREW_CORE_GIT_REMOTE=&quot;https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/homebrew-core.git&quot;
export HOMEBREW_BOTTLE_DOMAIN=&quot;https://mirrors.tuna.tsinghua.edu.cn/homebrew-bottles&quot;

echo 'export HOMEBREW_BREW_GIT_REMOTE=&quot;https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/brew.git&quot;' &amp;gt;&amp;gt; ~/.zshrc
echo 'export HOMEBREW_CORE_GIT_REMOTE=&quot;https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/homebrew-core.git&quot;' &amp;gt;&amp;gt; ~/.zshrc
echo 'export HOMEBREW_BOTTLE_DOMAIN=&quot;https://mirrors.tuna.tsinghua.edu.cn/homebrew-bottles&quot;' &amp;gt;&amp;gt; ~/.zshrc
source ~/.zshrc
brew update
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;✅ &lt;strong&gt;收藏这篇，新机器部署、新项目搭环境，直接翻出来抄命令。&lt;/strong&gt;&lt;/p&gt;
&lt;/body&gt;</description><pubDate>Sun, 17 May 2026 08:55:39 +0800</pubDate></item><item><title>组播有效IP</title><link>https://blog.sdjy.eu.org/?id=54</link><description>&lt;head&gt;&lt;/head&gt;&lt;body&gt;&lt;pre&gt;&lt;code class=&quot;language-python&quot;&gt;[Task1]
name = 广东电信
ip = 113.101.245.14
port = 9988
multicast = 239.77.0.198:5146
start_c = 245
end_c = 246
enabled = yes

[Task2]
name = 广东惠州电信
ip = 219.131.11.149
port = 8188
multicast = 239.77.0.198:5146
start_c = 8
end_c = 11
enabled = yes

[Task3]
name = 四川自贡电信
ip = 125.66.145.243
port = 8848
multicast = 239.77.0.198:5146
start_c = 145
end_c = 255
enabled = yes

[Task4]
name = 广东东莞电信
ip = 14.216.135.1
port = 8188
multicast = 239.77.0.1:5146
start_c = 135
end_c = 255
enabled = yes

[Task5]
name = 广东电信\移动
ip = 113.95.137.190
port = 30001
multicast = 239.77.0.1:5146
start_c = 132
end_c = 149
enabled = yes

[Task6]
name = 广东省惠州
ip = 183.30.202.198
port = 8000
multicast = 239.77.0.1:5146
start_c = 202
end_c = 203
enabled = yes

[Task7]
name = 广州花都
ip = 218.20.54.77
port = 2888
multicast = 239.77.0.1:5146
start_c = 54
end_c = 55
enabled = yes

[Task8]
name = 广东省东莞市
ip = 116.4.97.43
port = 4080
multicast = 239.77.0.1:5146
start_c = 93
end_c = 110
enabled = yes
&lt;/code&gt;&lt;/pre&gt;
&lt;/body&gt;</description><pubDate>Sat, 16 May 2026 11:23:15 +0800</pubDate></item><item><title>python虚拟环境的创建与激活</title><link>https://blog.sdjy.eu.org/?id=53</link><description>&lt;head&gt;&lt;/head&gt;&lt;body&gt;&lt;h2 id=&quot;h2-u865Au62DFu73AFu5883u7684u521Bu5EFA-1&quot;&gt;&lt;a class=&quot;reference-link&quot; name=&quot;虚拟环境的创建&quot;&gt;&lt;/a&gt;&lt;span class=&quot;header-link octicon octicon-link&quot;&gt;&lt;/span&gt;虚拟环境的创建&lt;/h2&gt;&lt;pre&gt;&lt;code class=&quot;language-python&quot;&gt;python -m venv myenv  
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;myenv是你的虚拟环境所在的默认文件夹名称,如果是在其它盘符的就把文件夹的路径复制到这,如我在桌面上创建的文件夹是名称是py:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-python&quot;&gt;python -m venv C:\Users\Administrator\Desktop\py
&lt;/code&gt;&lt;/pre&gt;
&lt;h2 id=&quot;h2-u865Au62DFu73AFu5883u7684u6FC0u6D3B-10&quot;&gt;&lt;a class=&quot;reference-link&quot; name=&quot;虚拟环境的激活&quot;&gt;&lt;/a&gt;&lt;span class=&quot;header-link octicon octicon-link&quot;&gt;&lt;/span&gt;虚拟环境的激活&lt;/h2&gt;&lt;p&gt;在Windows上&lt;/p&gt;
&lt;h3 id=&quot;h3-u65B9u6CD51uFF1ACMDuFF08u547Du4EE4u63D0u793Au7B26uFF09-12&quot;&gt;&lt;a class=&quot;reference-link&quot; name=&quot;方法1：CMD（命令提示符）&quot;&gt;&lt;/a&gt;&lt;span class=&quot;header-link octicon octicon-link&quot;&gt;&lt;/span&gt;方法1：CMD（命令提示符）&lt;/h3&gt;&lt;pre&gt;&lt;code class=&quot;language-python&quot;&gt;# 进入虚拟环境所在的目录（这里是桌面）
cd C:\Users\Administrator\Desktop

# 激活虚拟环境
py\Scripts\activate
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;或完整路径：&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-python&quot;&gt;py\Scripts\activate.bat
&lt;/code&gt;&lt;/pre&gt;
&lt;h3 id=&quot;h3-u65B9u6CD52uFF1APowerShell-24&quot;&gt;&lt;a class=&quot;reference-link&quot; name=&quot;方法2：PowerShell&quot;&gt;&lt;/a&gt;&lt;span class=&quot;header-link octicon octicon-link&quot;&gt;&lt;/span&gt;方法2：PowerShell&lt;/h3&gt;&lt;pre&gt;&lt;code class=&quot;language-python&quot;&gt;# 进入桌面
cd C:\Users\Administrator\Desktop

# 激活虚拟环境
.\py\Scripts\Activate.ps1
&lt;/code&gt;&lt;/pre&gt;
&lt;h3 id=&quot;h3-u9A8Cu8BC1u662Fu5426u6210u529F-32&quot;&gt;&lt;a class=&quot;reference-link&quot; name=&quot;验证是否成功&quot;&gt;&lt;/a&gt;&lt;span class=&quot;header-link octicon octicon-link&quot;&gt;&lt;/span&gt;验证是否成功&lt;/h3&gt;&lt;p&gt;激活成功后，命令行提示符前面会显示 (py)：&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-python&quot;&gt;(py) C:\Users\Administrator\Desktop&amp;gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;h3 id=&quot;h3-u521Bu5EFAu5FEBu6377u542Fu52A8u6587u4EF6uFF08u63A8u8350uFF09-38&quot;&gt;&lt;a class=&quot;reference-link&quot; name=&quot;创建快捷启动文件（推荐）&quot;&gt;&lt;/a&gt;&lt;span class=&quot;header-link octicon octicon-link&quot;&gt;&lt;/span&gt;创建快捷启动文件（推荐）&lt;/h3&gt;&lt;p&gt;为了方便，可以在桌面创建一个批处理文件 activate_env.bat，内容：&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-python&quot;&gt;@echo off
cd /d &quot;C:\Users\Administrator\Desktop\py&quot;
call Scripts\activate.bat
cmd /k
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;其它路径的文件改上面cd哪路径就是了&lt;br&gt;双击这个文件就会自动激活虚拟环境并打开命令窗口。&lt;/p&gt;
&lt;h3 id=&quot;h3-u5982u679Cu9047u5230u95EEu9898-50&quot;&gt;&lt;a class=&quot;reference-link&quot; name=&quot;如果遇到问题&quot;&gt;&lt;/a&gt;&lt;span class=&quot;header-link octicon octicon-link&quot;&gt;&lt;/span&gt;如果遇到问题&lt;/h3&gt;&lt;p&gt;文件不存在错误：确认虚拟环境是否真的在 C:\Users\Administrator\Desktop\py&lt;/p&gt;
&lt;p&gt;PowerShell 执行策略限制：&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-python&quot;&gt;Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
&lt;/code&gt;&lt;/pre&gt;
&lt;h3 id=&quot;h3-u68C0u67E5u865Au62DFu73AFu5883u7ED3u6784uFF1Au5E94u8BE5u6709u4EE5u4E0Bu6587u4EF6u5939u7ED3u6784uFF1A-58&quot;&gt;&lt;a class=&quot;reference-link&quot; name=&quot;检查虚拟环境结构：应该有以下文件夹结构：&quot;&gt;&lt;/a&gt;&lt;span class=&quot;header-link octicon octicon-link&quot;&gt;&lt;/span&gt;检查虚拟环境结构：应该有以下文件夹结构：&lt;/h3&gt;&lt;pre&gt;&lt;code class=&quot;language-python&quot;&gt;C:\Users\Administrator\Desktop\py\
    ├── Scripts\       # 包含 activate.bat, python.exe, pip.exe
    ├── Lib\           # 安装的包在这里
    └── pyvenv.cfg     # 配置文件
&lt;/code&gt;&lt;/pre&gt;
&lt;/body&gt;</description><pubDate>Wed, 13 May 2026 16:46:15 +0800</pubDate></item><item><title>使用测绘空间搜索：广东电信组播ip</title><link>https://blog.sdjy.eu.org/?id=52</link><description>&lt;head&gt;&lt;/head&gt;&lt;body&gt;&lt;ol&gt;
&lt;li&gt;登陆 &lt;a href=&quot;https://fofa.info/&quot;&gt;测绘空间&lt;/a&gt;&lt;/li&gt;&lt;li&gt;登陆后在搜索框中搜索&lt;/li&gt;&lt;/ol&gt;
&lt;pre&gt;&lt;code&gt;&quot;udpxy&quot; &amp;amp;&amp;amp; region=&quot;Guangdong&quot; &amp;amp;&amp;amp; org=&quot;Chinanet&quot;
&lt;/code&gt;&lt;/pre&gt;
&lt;ol&gt;
&lt;li&gt;页面【Ctrl+A】全选，【Ctrl+C】复制页面内容，利用正则方法提取IP出来测试&lt;/li&gt;&lt;/ol&gt;
&lt;/body&gt;</description><pubDate>Tue, 12 May 2026 10:00:11 +0800</pubDate></item><item><title>电信组播ip</title><link>https://blog.sdjy.eu.org/?id=51</link><description>&lt;head&gt;&lt;/head&gt;&lt;body&gt;&lt;h2 id=&quot;h2-u5E7Fu4E1Cu7535u4FE1u7EC4u64ADIP-1&quot;&gt;&lt;a class=&quot;reference-link&quot; name=&quot;广东电信组播IP&quot;&gt;&lt;/a&gt;&lt;span class=&quot;header-link octicon octicon-link&quot;&gt;&lt;/span&gt;广东电信组播IP&lt;/h2&gt;&lt;pre&gt;&lt;code&gt;14.145.163.25:8000
14.153.169.247:5555
14.118.74.55:10001
218.15.103.203:8000
113.65.124.131:9530
119.123.175.3:22
202.105.239.77:8181
113.65.124.131:9527
14.155.183.40:8888
58.62.234.243:10000
14.145.179.142:8888
14.154.195.12:4022
14.145.205.10:6006
14.19.178.5:4022
113.116.246.90:9999
113.81.250.81:8081
113.95.140.68:8880
&lt;/code&gt;&lt;/pre&gt;
&lt;h2 id=&quot;h2-u5E7Fu4E1Cu7535u4FE1u7EC4u64ADID-21&quot;&gt;&lt;a class=&quot;reference-link&quot; name=&quot;广东电信组播ID&quot;&gt;&lt;/a&gt;&lt;span class=&quot;header-link octicon octicon-link&quot;&gt;&lt;/span&gt;广东电信组播ID&lt;/h2&gt;&lt;pre&gt;&lt;code&gt;央视频道,#genre#
CCTV1,http://113.95.140.68:8880/rtp/239.77.1.17:5146
CCTV1,http://113.95.140.68:8880/rtp/239.77.0.119:5146
CCTV1,http://113.95.140.68:8880/rtp/239.77.0.30:5146
CCTV1,http://113.95.140.68:8880/rtp/239.77.0.14:5146
CCTV1,http://113.95.140.68:8880/rtp/239.77.0.86:5146
CCTV2,http://113.95.140.68:8880/rtp/239.77.0.137:5146
CCTV4美洲,http://113.95.140.68:8880/rtp/239.253.43.121:5146
CCTV5,http://113.95.140.68:8880/rtp/239.77.0.170:5146
CCTV5,http://113.95.140.68:8880/rtp/239.77.1.8:5146
CCTV5,http://113.95.140.68:8880/rtp/239.77.0.34:5146
CCTV5+,http://113.95.140.68:8880/rtp/239.77.1.31:5146
CCTV6,http://113.95.140.68:8880/rtp/239.77.0.35:5146
CCTV6,http://113.95.140.68:8880/rtp/239.77.1.9:5146
CCTV6,http://113.95.140.68:8880/rtp/239.77.0.171:5146
CCTV7,http://113.95.140.68:8880/rtp/239.77.0.138:5146
CCTV7,http://113.95.140.68:8880/rtp/239.77.0.36:5146
CCTV7,http://113.95.140.68:8880/rtp/239.77.1.159:5146
CCTV8,http://113.95.140.68:8880/rtp/239.77.0.172:5146
CCTV10,http://113.95.140.68:8880/rtp/239.77.0.39:5146
CCTV10,http://113.95.140.68:8880/rtp/239.77.0.134:5146
CCTV10,http://113.95.140.68:8880/rtp/239.77.1.113:5146
CCTV11,http://113.95.140.68:8880/rtp/239.77.0.40:5146
CCTV11,http://113.95.140.68:8880/rtp/239.77.1.238:5146
CCTV11,http://113.95.140.68:8880/rtp/239.77.1.108:5146
CCTV13,http://113.95.140.68:8880/rtp/239.253.43.196:5146
CCTV13,http://113.95.140.68:8880/rtp/239.77.0.42:5146
CCTV14,http://113.95.140.68:8880/rtp/239.77.0.43:5146
CCTV14,http://113.95.140.68:8880/rtp/239.77.0.133:5146
CCTV14,http://113.95.140.68:8880/rtp/239.77.1.161:5146
CCTV15,http://113.95.140.68:8880/rtp/239.77.1.239:5146
CCTV17,http://113.95.140.68:8880/rtp/239.77.0.198:5146
CETV早期教育,http://113.95.140.68:8880/rtp/239.77.1.122:5146

中数传媒,#genre#
风云剧场,http://113.95.140.68:8880/rtp/239.253.43.26:5146
兵器科技,http://113.95.140.68:8880/rtp/239.253.43.9:5146
高尔夫网球,http://113.95.140.68:8880/rtp/239.253.43.22:5146
中学生,http://113.95.140.68:8880/rtp/239.77.1.195:5146
中国天气,http://113.95.140.68:8880/rtp/239.77.1.2:5146

4K节目,#genre#
CCTV16 4K,http://113.95.140.68:8880/rtp/239.77.0.165:5146
北京卫视4K,http://113.95.140.68:8880/rtp/239.77.0.233:5146
湖南卫视4K,http://113.95.140.68:8880/rtp/239.77.0.56:5146

卫视频道,#genre#
重庆卫视,http://113.95.140.68:8880/rtp/239.77.1.162:5146
浙江卫视,http://113.95.140.68:8880/rtp/239.77.0.89:5146
东方卫视,http://113.95.140.68:8880/rtp/239.77.0.98:5146
天津卫视,http://113.95.140.68:8880/rtp/239.77.1.141:5146
云南卫视,http://113.95.140.68:8880/rtp/239.253.43.100:5146
旅游卫视,http://113.95.140.68:8880/rtp/239.253.43.35:5146
广东卫视,http://113.95.140.68:8880/rtp/239.77.0.166:5146
大湾区卫视,http://113.95.140.68:8880/rtp/239.77.1.12:5146
宁夏卫视,http://113.95.140.68:8880/rtp/239.77.1.28:5146
卡酷少儿,http://113.95.140.68:8880/rtp/239.77.1.50:5146
卡酷少儿,http://113.95.140.68:8880/rtp/239.77.0.79:5146
山东教育卫视,http://113.95.140.68:8880/rtp/239.77.1.35:5146

重庆节目,#genre#
重庆汽摩,http://113.95.140.68:8880/rtp/239.77.0.209:5146

江苏节目,#genre#
优漫卡通,http://113.95.140.68:8880/rtp/239.77.0.222:5146

IPTV,#genre#
睛彩竞技,http://113.95.140.68:8880/rtp/239.77.1.20:5146
睛彩广场舞,http://113.95.140.68:8880/rtp/239.77.1.23:5146
睛彩篮球,http://113.95.140.68:8880/rtp/239.77.1.21:5146
睛彩青少,http://113.95.140.68:8880/rtp/239.77.1.22:5146

广东频道,#genre#
广东珠江,http://113.95.140.68:8880/rtp/239.77.1.94:5146
广东珠江,http://113.95.140.68:8880/rtp/239.77.0.114:5146
广东新闻,http://113.95.140.68:8880/rtp/239.77.0.173:5146
广东影视,http://113.95.140.68:8880/rtp/239.77.0.217:5146
广东民生,http://113.95.140.68:8880/rtp/239.77.0.225:5146
广东经济科教,http://113.95.140.68:8880/rtp/239.77.0.85:5146
广东经济科教,http://113.95.140.68:8880/rtp/239.77.0.167:5146
岭南戏曲,http://113.95.140.68:8880/rtp/239.77.0.122:5146
广州综合,http://113.95.140.68:8880/rtp/239.253.43.71:5146
深圳电视剧,http://113.95.140.68:8880/rtp/239.77.1.177:5146
深圳都市,http://113.95.140.68:8880/rtp/239.77.1.176:5146
深圳龙岗,http://113.95.140.68:8880/rtp/239.77.1.223:5146
佛山顺德,http://113.95.140.68:8880/rtp/239.253.43.55:5146
汕头综合,http://113.95.140.68:8880/rtp/239.253.43.45:5146
河源生活,http://113.95.140.68:8880/rtp/239.253.43.214:5146
惠州2,http://113.95.140.68:8880/rtp/239.77.1.233:5146
梅州客家生活,http://113.95.140.68:8880/rtp/239.253.43.124:5146
阳江1,http://113.95.140.68:8880/rtp/239.253.43.82:5146

地方频道,#genre#
IPTV经典电影,http://113.95.140.68:8880/rtp/239.77.1.89:5146
华数爱电影,http://113.95.140.68:8880/rtp/239.77.1.138:5146
经典电影,http://113.95.140.68:8880/rtp/239.77.0.104:5146
&lt;/code&gt;&lt;/pre&gt;
&lt;h2 id=&quot;h2-u56DBu5DDDu7535u4FE1u7EC4u64ADIP-120&quot;&gt;&lt;a class=&quot;reference-link&quot; name=&quot;四川电信组播IP&quot;&gt;&lt;/a&gt;&lt;span class=&quot;header-link octicon octicon-link&quot;&gt;&lt;/span&gt;四川电信组播IP&lt;/h2&gt;&lt;pre&gt;&lt;code&gt;略卡
http://171.213.177.195:8888/udp/239.94.2.51:5140
http://182.143.101.158:8888/udp/239.94.2.51:5140

流畅
http://118.114.168.183:8033/udp/239.94.2.51:5140
http://171.213.243.223:8880/udp/239.94.2.51:5140
http://171.88.107.244:8118/udp/239.94.2.51:5140
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;全套&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-html&quot;&gt;CCTV-1 HD,239.94.0.31:5140
CCTV-1sd,239.94.2.146:5140
CCTV-2 HD,239.94.0.2:5140
CCTV-2sd,239.94.2.147:5140
CCTV-3 HD,239.94.0.32:5140
CCTV-3sd,239.94.2.148:5140
CCTV-4 HD,239.94.0.4:5140
CCTV-4K,239.94.0.20:5140
CCTV-4Ksd,239.94.2.163:5140
CCTV-4sd,239.94.2.149:5140
CCTV-5 HD,239.94.0.33:5140
CCTV-5＋ HD,239.94.0.23:5140
CCTV-5+sd,239.94.2.162:5140
CCTV-5sd,239.94.2.150:5140
CCTV-6 HD,239.94.0.34:5140
CCTV-6sd,239.94.2.151:5140
CCTV-7 HD,239.94.0.7:5140
CCTV-7sd,239.94.2.152:5140
CCTV-8 HD,239.94.0.35:5140
CCTV-8sd,239.94.2.153:5140
CCTV-9 HD,239.94.0.9:5140
CCTV-9sd,239.94.2.154:5140
CCTV-10 HD,239.94.0.10:5140
CCTV-10sd,239.94.2.155:5140
CCTV-11 HD,239.94.0.36:5140
CCTV-11-sd,239.94.2.156:5140
CCTV-12 HD,239.94.0.12:5140
CCTV-12sd,239.94.2.157:5140
CCTV-13 HD,239.94.0.37:5140
CCTV-13-sd,239.94.2.158:5140
CCTV-14 HD,239.94.0.14:5140
CCTV-14 sd,239.94.2.159:5140
CCTV-15-sd,239.94.2.160:5140
CCTV-15 HD,239.94.0.38:5140
CCTV-17 HD,239.94.0.39:5140
CCTV-17 sd,239.94.2.161:5140
CDTV-1 HD,239.94.0.154:5140
CDTV-1sd,239.94.2.166:5140
CDTV-2 HD,239.94.0.155:5140
CDTV-2-sd,239.94.2.217:5140
CDTV-3 HD,239.94.0.156:5140
CDTV-3-sd,239.94.2.218:5140
CDTV-4 HD,239.94.0.157:5140
CDTV-4-sd,239.94.2.219:5140
CDTV-5 HD,239.94.0.158:5140
CDTV-5sd,239.94.2.220:5140
CDTV-6 HD,239.94.0.159:5140
CDTV-6-sd,239.94.2.221:5140
CDTV-8 HD,239.94.0.160:5140
CDTV-8-sd,239.94.2.222:5140
CETV-1 HD,239.94.1.2:5140
CETV-1sd,239.94.2.224:5140
CETV-2,239.94.1.19:5140
CETV-2sd,239.94.2.228:5140
CETV-4 HD,239.94.1.20:5140
CETV-4sd,239.94.2.229:5140
CGTN法语,239.94.1.66:5140
CGTN法语sd,239.94.2.238:5140
CGTN西班牙语,239.94.1.65:5140
CGTN西班牙语sd,239.94.2.237:5140
CGTN英语,239.94.0.40:5140
CGTN英语sd,239.94.2.164:5140
CHC动作电影,239.94.1.175:5140
CHC家庭影院,239.94.1.173:5140
CHC影迷电影,239.94.1.174:5140
i成都,239.94.2.1:5140
SCTV-2 HD,239.94.0.70:5140
SCTV-2sd,239.94.2.176:5140
SCTV-3 HD,239.94.0.71:5140
SCTV-3sd,239.94.2.177:5140
SCTV-4 HD,239.94.0.72:5140
SCTV-4sd,239.94.2.178:5140
SCTV-5 HD,239.94.0.73:5140
SCTV-5sd,239.94.2.179:5140
SCTV-6 HD,239.94.0.74:5140
SCTV-6sd,239.94.2.180:5140
SCTV-7 HD,239.94.0.75:5140
SCTV-7sd,239.94.2.181:5140
SCTV-科教 HD,239.94.0.76:5140
SCTV-科教sd,239.94.2.182:5140
爱宠宠物,239.94.1.145:5140
爱谍战,239.94.1.134:5140
爱动漫,239.94.1.141:5140
爱科幻,239.94.1.131:5140
爱浪漫,239.94.1.128:5140
爱乐山,239.94.2.2:5140
爱历史,239.94.1.135:5140
爱旅行,239.94.1.137:5140
爱奇谈,239.94.1.130:5140
爱赛车,239.94.1.144:5140
爱上4K,239.94.0.21:5140
爱生活 HD,239.94.1.41:5140
爱体育,239.94.1.143:5140
爱体育,239.94.1.44:5140
爱玩具,239.94.1.140:5140
爱喜剧,239.94.1.129:5140
爱悬疑,239.94.1.136:5140
爱幼教,239.94.1.139:5140
爱院线,239.94.1.132:5140
&lt;/code&gt;&lt;/pre&gt;
&lt;/body&gt;</description><pubDate>Tue, 12 May 2026 10:00:11 +0800</pubDate></item><item><title>组播IP扫描Python脚本</title><link>https://blog.sdjy.eu.org/?id=50</link><description>&lt;head&gt;&lt;/head&gt;&lt;body&gt;&lt;h1 id=&quot;h1-u7EC4u64ADIPu626Bu63CFu4E4Bpythonu811Au672C-1&quot;&gt;&lt;a class=&quot;reference-link&quot; name=&quot;组播IP扫描之python脚本&quot;&gt;&lt;/a&gt;&lt;span class=&quot;header-link octicon octicon-link&quot;&gt;&lt;/span&gt;组播IP扫描之python脚本&lt;/h1&gt;&lt;pre&gt;&lt;code&gt;import asyncio
import configparser
import logging
import os
import sys
import time
from datetime import datetime
import aiohttp
from typing import List, Optional

 ==================== 极简日志系统 ====================
logging.basicConfig(
    level=logging.INFO,
    format='%(asctime)s - %(levelname)s - %(message)s',
    handlers=[
        logging.FileHandler('scanner.log', encoding='utf-8'),
        logging.StreamHandler(sys.stdout)
    ]
)
logger = logging.getLogger(__name__)

 ==================== 配置 ====================
CONFIG_FILE = &quot;config.ini&quot;
SCAN_INTERVAL = 15 * 60
TIMEOUT = 8
MAX_CONCURRENT = 200
PROGRESS_STEP = 1000  # 每1000个IP打印一次进度

 ==================== 工具函数 ====================
def create_default_config():
    if not os.path.exists(CONFIG_FILE):
        config = configparser.ConfigParser()
        sample_tasks = [
            (&quot;Task1&quot;, &quot;广东电信&quot;, &quot;113.101.245.14&quot;, &quot;9988&quot;, &quot;239.77.0.198:5146&quot;, &quot;245&quot;, &quot;246&quot;, &quot;yes&quot;),
            (&quot;Task2&quot;, &quot;广东惠州电信&quot;, &quot;219.131.11.149&quot;, &quot;8188&quot;, &quot;239.77.0.198:5146&quot;, &quot;8&quot;, &quot;11&quot;, &quot;yes&quot;),
            (&quot;Task3&quot;, &quot;四川自贡电信&quot;, &quot;125.66.145.243&quot;, &quot;8848&quot;, &quot;239.77.0.198:5146&quot;, &quot;145&quot;, &quot;255&quot;, &quot;yes&quot;),
            (&quot;Task4&quot;, &quot;广东东莞电信&quot;, &quot;14.216.135.1&quot;, &quot;8188&quot;, &quot;239.77.0.1:5146&quot;, &quot;135&quot;, &quot;255&quot;, &quot;yes&quot;),
        ]
        for tid, name, ip, port, mc, sc, ec, en in sample_tasks:
            config[tid] = {
                &quot;name&quot;: name, &quot;ip&quot;: ip, &quot;port&quot;: port,
                &quot;multicast&quot;: mc, &quot;start_c&quot;: sc, &quot;end_c&quot;: ec, &quot;enabled&quot;: en
            }
        with open(CONFIG_FILE, &quot;w&quot;, encoding=&quot;utf-8&quot;) as f:
            config.write(f)
        logger.info(&quot;已创建默认配置文件 config.ini&quot;)

def load_config():
    config = configparser.ConfigParser()
    config.read(CONFIG_FILE, encoding=&quot;utf-8&quot;)
    return config

def generate_ip_list(base_ip: str, start_c: int, end_c: int) -&amp;gt; List[str]:
    prefix = '.'.join(base_ip.split('.')[:2]) + '.'
    return [f&quot;{prefix}{c}.{d}&quot; for c in range(start_c, end_c + 1) for d in range(256)]

async def check_ip_valid(session, ip, port, multicast) -&amp;gt; bool:
    try:
        async with session.get(
            f&quot;http://{ip}:{port}/udp/{multicast}&quot;,
            timeout=aiohttp.ClientTimeout(total=TIMEOUT)
        ) as r:
            return r.status &amp;lt; 400
    except:
        return False

async def scan_task(task_id, info, exist_ip=None):
    name = info[&quot;name&quot;]
    ip = info[&quot;ip&quot;]
    port = info[&quot;port&quot;]
    multicast = info[&quot;multicast&quot;]
    sc = int(info[&quot;start_c&quot;])
    ec = int(info[&quot;end_c&quot;])
    
    total_ips = (ec - sc + 1) * 256
    logger.info(f&quot;开始任务 {task_id}: {name}&quot;)
    logger.info(f&quot;IP范围: {ip} C段 {sc}-{ec} | 端口: {port} | 组播: {multicast}&quot;)
    logger.info(f&quot;待扫描IP总数: {total_ips:,}&quot;)
    
    # 检查现有IP
    if exist_ip:
        logger.info(f&quot;检查现有IP: {exist_ip}:{port}&quot;)
        async with aiohttp.ClientSession() as s:
            if await check_ip_valid(s, exist_ip, port, multicast):
                logger.info(f&quot;IP {exist_ip}:{port} 仍然有效，跳过扫描&quot;)
                return exist_ip
            logger.warning(f&quot;IP {exist_ip}:{port} 已失效，重新扫描&quot;)
    
    ips = generate_ip_list(ip, sc, ec)
    found = None
    checked = 0
    start_time = time.time()
    
    semaphore = asyncio.Semaphore(MAX_CONCURRENT)
    
    async def check_one(session, ip):
        nonlocal found, checked
        async with semaphore:
            if found:
                return
            
            checked += 1
            if checked % PROGRESS_STEP == 0:
                elapsed = time.time() - start_time
                rate = checked / elapsed if elapsed &amp;gt; 0 else 0
                logger.info(f&quot;进度: {checked:,}/{total_ips:,} ({checked/total_ips*100:.1f}%) | 速率: {rate:.1f}/s&quot;)
            
            if await check_ip_valid(session, ip, port, multicast):
                found = ip
                logger.info(f&quot;发现有效IP: {ip}:{port}&quot;)
    
    connector = aiohttp.TCPConnector(limit=MAX_CONCURRENT, force_close=True)
    async with aiohttp.ClientSession(connector=connector) as session:
        tasks = [check_one(session, ip) for ip in ips]
        for i in range(0, len(tasks), 2000):
            await asyncio.gather(*tasks[i:i+2000])
            await asyncio.sleep(0.1)
    
    if not found:
        logger.warning(f&quot;任务 {task_id} 未发现有效IP&quot;)
    
    return found

def save_ip(task_id, ip, port):
    with open(f&quot;udp_ip_{task_id}.txt&quot;, &quot;w&quot;, encoding=&quot;utf-8&quot;) as f:
        f.write(f&quot;{ip}:{port}&quot;)
    logger.info(f&quot;已保存IP到 udp_ip_{task_id}.txt: {ip}:{port}&quot;)

 ==================== 主循环 ====================
async def main_loop():
    create_default_config()
    round_num = 0
    
    while True:
        round_num += 1
        logger.info(&quot;=&quot; * 60)
        logger.info(f&quot;第 {round_num} 轮扫描开始 | 时间: {datetime.now().strftime('%Y-%m-%d %H:%M:%S')}&quot;)
        logger.info(&quot;=&quot; * 60)
        
        config = load_config()
        enabled_tasks = [s for s in config.sections() if config[s].get(&quot;enabled&quot;, &quot;no&quot;) == &quot;yes&quot;]
        
        for idx, section in enumerate(enabled_tasks, 1):
            task_id = section.replace(&quot;Task&quot;, &quot;&quot;)
            info = config[section]
            
            logger.info(f&quot;\n处理任务 {idx}/{len(enabled_tasks)}: {info['name']}&quot;)
            
            # 检查现有文件
            exist_ip = None
            ip_file = f&quot;udp_ip_{task_id}.txt&quot;
            if os.path.exists(ip_file):
                with open(ip_file, 'r', encoding='utf-8') as f:
                    content = f.read().strip()
                    if content:
                        exist_ip = content.split(':')[0]
                        logger.info(f&quot;检测到已保存IP: {content}&quot;)
            
            try:
                result = await scan_task(task_id, info, exist_ip)
                if result:
                    save_ip(task_id, result, info[&quot;port&quot;])
            except Exception as e:
                logger.error(f&quot;任务 {task_id} 执行失败: {e}&quot;)
        
        logger.info(&quot;=&quot; * 60)
        logger.info(f&quot;第 {round_num} 轮扫描完成，休眠 {SCAN_INTERVAL//60} 分钟&quot;)
        logger.info(&quot;=&quot; * 60)
        await asyncio.sleep(SCAN_INTERVAL)

if __name__ == &quot;__main__&quot;:
    try:
        asyncio.run(main_loop())
    except KeyboardInterrupt:
        logger.info(&quot;程序已手动终止&quot;)
    except Exception as e:
        logger.error(f&quot;程序崩溃: {e}&quot;)
&lt;/code&gt;&lt;/pre&gt;
&lt;hr&gt;
&lt;/body&gt;</description><pubDate>Mon, 11 May 2026 07:43:52 +0800</pubDate></item><item><title>Lucky stun穿透 + Cloudflare 实现无公网 IPv4 访问、端口隐藏与 v4或v6 分流</title><link>https://blog.sdjy.eu.org/?id=49</link><description>&lt;head&gt;&lt;/head&gt;&lt;body&gt;&lt;h1 id=&quot;h1-Lucky20stunu7A7Fu900F20+20Cloudflare20u5B9Eu73B0u65E0u516Cu7F5120IPv420u8BBFu95EEu3001u7AEFu53E3u9690u85CFu4E0E20v4u6216v620u5206u6D41-1&quot;&gt;&lt;a class=&quot;reference-link&quot; name=&quot;Lucky stun穿透 + Cloudflare 实现无公网 IPv4 访问、端口隐藏与 v4或v6 分流&quot;&gt;&lt;/a&gt;&lt;span class=&quot;header-link octicon octicon-link&quot;&gt;&lt;/span&gt;Lucky stun穿透 + Cloudflare 实现无公网 IPv4 访问、端口隐藏与 v4或v6 分流&lt;/h1&gt;&lt;h2 id=&quot;h2-u524Du8A00-2&quot;&gt;&lt;a class=&quot;reference-link&quot; name=&quot;前言&quot;&gt;&lt;/a&gt;&lt;span class=&quot;header-link octicon octicon-link&quot;&gt;&lt;/span&gt;前言&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;本人为网络技术小白，本文内容基于网络大佬分享的知识整理融合，仅作个人备忘。&lt;/li&gt;&lt;li&gt;核心目标：家庭设备仅有公网 IPv6、无公网 IPv4 时，实现外网 IPv4 环境访问、IPv6 环境自动分流，且统一使用不带端口的泛域名访问。&lt;/li&gt;&lt;/ul&gt;
&lt;h2 id=&quot;h2-u4E00u3001u524Du7F6Eu51C6u5907-5&quot;&gt;&lt;a class=&quot;reference-link&quot; name=&quot;一、前置准备&quot;&gt;&lt;/a&gt;&lt;span class=&quot;header-link octicon octicon-link&quot;&gt;&lt;/span&gt;一、前置准备&lt;/h2&gt;&lt;ol&gt;
&lt;li&gt;网络环境：家庭宽带有公网 IPv6，路由器拨号（推荐，减少 NAT 层数和端口转发配置）。&lt;/li&gt;&lt;li&gt;NAT 类型：Lucky 的 STUN 穿透页面测试，NAT1 最佳，NAT3 通常可用，NAT4 需搜索降低层级方法。lucky 的 stun 页面可以测试，如果不是就不用看本篇文章了&lt;/li&gt;&lt;li&gt;域名与 CF 托管：拥有一个域名（推荐付费，免费二级域名可能存在问题），并托管至 Cloudflare（简称 CF），本文以 123.xyz为例。&lt;/li&gt;&lt;li&gt;软件基础：已安装 Lucky，会使用其动态解析、反向代理功能&lt;/li&gt;&lt;/ol&gt;
&lt;h2 id=&quot;h2-u4E8Cu3001Cloudflareu914Du7F6E-10&quot;&gt;&lt;a class=&quot;reference-link&quot; name=&quot;二、Cloudflare配置&quot;&gt;&lt;/a&gt;&lt;span class=&quot;header-link octicon octicon-link&quot;&gt;&lt;/span&gt;二、Cloudflare配置&lt;/h2&gt;&lt;ol&gt;
&lt;li&gt;点击DNS记录，添加一条A记录，名称填入通配符星号 * 。ipv4随便填一个即可，不产生实际作用，这里填入的8.8.8.8。代理状态勾选上，点亮小黄云。&lt;/li&gt;&lt;/ol&gt;
&lt;p&gt;这里解释一下这样设置的作用。CF代理了 *.123.xyz，以后访问如emby.123.xyz的时候，首先就会请求到CF这里来，然后根据我们后面会添加的规则，进行v4或者v6的重定向。&lt;/p&gt;
&lt;p&gt;注意如果之前已经有了这条二级泛域名的解析，直接勾选代理即可。同时删除或者关闭lucky的这一条动态域名配置。&lt;br&gt;&lt;img style=&quot;max-width:100%;&quot; title=&quot;A记录.png&quot; alt=&quot;null&quot; src=&quot;https://img.sdjy.eu.org/2026/03/25/69c40033ae123.png&quot;&gt;&lt;br&gt;2. 进入“规则”，点击“创建规则”，选择“重定向规则”。&lt;br&gt;&lt;img style=&quot;max-width:100%;&quot; title=&quot;创建重定向规则.png&quot; alt=&quot;null&quot; src=&quot;https://img.sdjy.eu.org/2026/03/25/69c4009dc6a34.png&quot;&gt;&lt;br&gt;3. 配置v4重定向规则&lt;br&gt;①规则名称为了区别，添加v4后缀&lt;br&gt;②选择自定义筛选表达式。&lt;br&gt;③然后按图示配置字段，运算符，和值。第一栏是之前DNS解析添加的泛域名，*.123.xyz；第二栏可以不配置，这里是一种示意，如果某个以&amp;nbsp;.123.xyz&amp;nbsp;结尾的域名已经作特殊使用了，就排除一下；第三栏填入的值 0.0.0.0/0，表示匹配所有的ipv4地址。&lt;br&gt;④重定向类型选择“动态”&lt;br&gt;⑤表达式填入下面的一段代码。中间的 ipv4 是为了区别于 ipv6，实现分流，端口号6211在v4重定向规则中随便填入，后面会通过lucky的webhook同步成stun穿透获取的公网端口&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;wildcard_replace(http.request.full_uri, &quot;*://*.123.xyz/*&quot;, &quot;https://${2}.ipv4.123.xyz:6211/${3}&quot;)
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;⑥状态代码选择307或者302（一般是302，但某些应用中使用时，307才有效；具体差异我不懂）。&lt;br&gt;⑦勾选保留查询字符串&lt;br&gt;&lt;img style=&quot;max-width:100%;&quot; title=&quot;v4规则设置.png&quot; alt=&quot;null&quot; src=&quot;https://img.sdjy.eu.org/2026/03/25/69c401d6646ad.png&quot;&gt;&lt;br&gt;4. 配置v6重定向规则&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;直接从v4重定向规则复制，修改一下规则名称，修改ip源地址为2000::/3，URL重定向表达式，把ipv4替换为ipv6，端口号改为lucky反向代理监听地址&lt;br&gt;&lt;img style=&quot;max-width:100%;&quot; title=&quot;v6重定向规则.png&quot; alt=&quot;null&quot; src=&quot;https://img.sdjy.eu.org/2026/03/25/69c4029550a54.png&quot;&gt;&lt;br&gt;&lt;img style=&quot;max-width:100%;&quot; title=&quot;V6规则设置.png&quot; alt=&quot;null&quot; src=&quot;https://img.sdjy.eu.org/2026/03/25/69c402998d1c7.png&quot;&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;ol&gt;
&lt;li&gt;创建API令牌&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;点击页面右上角》配置文件》API令牌》创建令牌》（最底下）自定义令牌。&lt;/li&gt;&lt;/ol&gt;
&lt;p&gt;①名称说明用途即可&lt;br&gt;②权限添加 “账户》规则策略》编辑”&lt;br&gt;③权限添加 “区域》单一重定向》编辑”&lt;br&gt;④账户资源添加 “包括》你自己的账户”&lt;br&gt;⑤区域资源添加 “包括》特定区域》你的域名”&lt;br&gt;继续以显示摘要》创建令牌》复制令牌，保存到一个合适的位置，后面要用。&lt;br&gt;&lt;img style=&quot;max-width:100%;&quot; title=&quot;配置.png&quot; alt=&quot;null&quot; src=&quot;https://img.sdjy.eu.org/2026/03/25/69c403d7a30f9.png&quot;&gt;&lt;br&gt;&lt;img style=&quot;max-width:100%;&quot; title=&quot;创建令牌.png&quot; alt=&quot;null&quot; src=&quot;https://img.sdjy.eu.org/2026/03/25/69c4043a653ef.png&quot;&gt;&lt;br&gt;&lt;img style=&quot;max-width:100%;&quot; title=&quot;令牌设置.png&quot; alt=&quot;null&quot; src=&quot;https://img.sdjy.eu.org/2026/03/25/69c404039c059.png&quot;&gt;&lt;br&gt;&lt;img style=&quot;max-width:100%;&quot; title=&quot;准备创建令牌.png&quot; alt=&quot;null&quot; src=&quot;https://img.sdjy.eu.org/2026/03/25/69c40403128a0.png&quot;&gt;&lt;br&gt;&lt;img style=&quot;max-width:100%;&quot; title=&quot;显示创建令牌.png&quot; alt=&quot;null&quot; src=&quot;https://img.sdjy.eu.org/2026/03/25/69c403ff6bed5.png&quot;&gt;&lt;br&gt;以上是CF端的准备工作。总结一下：我们添加了一条二级泛域名解析*.123.xyz，由CF代理，然后创建了两条重定向规则，根据不同的访问ip来源，再分别重定向到v4或v6的地址上去。接下来是lucky端的配置，需要用到三级泛域名*.ipv4.123.xyz和*.ipv6.123.xyz，以及账户ID，区域ID，以及具有编辑账户规则策略和区域重定向规则权限的API令牌。&lt;/p&gt;
&lt;h2 id=&quot;h2-Luckyu914Du7F6E-50&quot;&gt;&lt;a class=&quot;reference-link&quot; name=&quot;Lucky配置&quot;&gt;&lt;/a&gt;&lt;span class=&quot;header-link octicon octicon-link&quot;&gt;&lt;/span&gt;Lucky配置&lt;/h2&gt;&lt;p&gt;我用的lucky版本是3.0，如果版本太过老旧，建议先升级到最新版。如果原来有二级泛域名*.123.xyz的解析，一定要先删除或者关闭，同时在CF的DNS解析记录也要删除。&lt;/p&gt;
&lt;p&gt;1.配置DDNS（域名动态解析）&lt;br&gt;如果之前不是用的CF做动态解析，这里简单说一下配置方法：&lt;br&gt;首先也是要在CF创建一个API令牌，权限：区域》DNS》编辑；区域资源：包括》特定区域》123.xyz。然后保存好令牌。&lt;br&gt;编辑已有任务或者添加一个任务；托管商选择CF；Token填入刚刚创建的API令牌；{ipv4Addr}和{ipv6Addr}的开关都打开；添加同步记录；记录名填*.ipv4.123.xyz，记录类型选择A；再添加一条同步记录，记录名填*.ipv6.123.xyz，记录类型选择AAAA。&lt;br&gt;&lt;img style=&quot;max-width:100%;&quot; title=&quot;ddns.png&quot; alt=&quot;null&quot; src=&quot;https://img.sdjy.eu.org/2026/03/25/69c405df31643.png&quot;&gt;&lt;br&gt;&lt;img style=&quot;max-width:100%;&quot; title=&quot;ddns成功.png&quot; alt=&quot;null&quot; src=&quot;https://img.sdjy.eu.org/2026/03/25/69c40643d6c87.png&quot;&gt;&lt;br&gt;2. 配置web服务的反向代理&lt;br&gt;这里默认读者已经会配置反向代理，并且已经配置有反向代理服务了。那么编辑已有的反向代理服务，前端地址中，添加两条带ipv4和ipv6字段的地址，后端地址保持不变。&lt;br&gt;&lt;img style=&quot;max-width:100%;&quot; title=&quot;反向代理.png&quot; alt=&quot;null&quot; src=&quot;https://img.sdjy.eu.org/2026/03/26/69c4069a03526.png&quot;&gt;&lt;/p&gt;
&lt;h2 id=&quot;h2-u6DFBu52A0Stunu7A7Fu900F-62&quot;&gt;&lt;a class=&quot;reference-link&quot; name=&quot;添加Stun穿透&quot;&gt;&lt;/a&gt;&lt;span class=&quot;header-link octicon octicon-link&quot;&gt;&lt;/span&gt;添加Stun穿透&lt;/h2&gt;&lt;p&gt;打开重定向规则的页面进入编辑状态，然后按F12–网络，点击保存按钮右侧就会出现一个API地址，把它复制出来备用，如图所示&lt;br&gt;&lt;img style=&quot;max-width:100%;&quot; title=&quot;id.png&quot; alt=&quot;null&quot; src=&quot;https://img.sdjy.eu.org/2026/03/26/69c40918bca66.png&quot;&gt;&lt;br&gt;只需要把复制出来的地址替换前面的部分：&lt;br&gt;&lt;a href=&quot;https://dash.cloudflare.com/api/v4&quot;&gt;https://dash.cloudflare.com/api/v4&lt;/a&gt;&lt;br&gt;替换成&lt;br&gt;&lt;a href=&quot;https://api.cloudflare.com/client/v4&quot;&gt;https://api.cloudflare.com/client/v4&lt;/a&gt;&lt;/p&gt;
&lt;h3 id=&quot;h3-u4E0Bu9762u662Fu6DFBu52A0stunu7684u5177u4F53u5185u5BB9-69&quot;&gt;&lt;a class=&quot;reference-link&quot; name=&quot;下面是添加stun的具体内容&quot;&gt;&lt;/a&gt;&lt;span class=&quot;header-link octicon octicon-link&quot;&gt;&lt;/span&gt;下面是添加stun的具体内容&lt;/h3&gt;&lt;p&gt;现在创建一个stun穿透任务&lt;/p&gt;
&lt;p&gt;①取一个描述作用的名称&lt;br&gt;②穿透类型选择TCP，UDP也可以&lt;br&gt;③穿透通道本地端口填一个没有使用的，或者填0，会使用随机端口&lt;br&gt;④开启防火墙自动放行&lt;br&gt;⑤目标地址：哪个设备要使用这个穿透就填谁的ip。这里，是供lucky的反向代理用的，lucky装在路由器上，就填192.168.31.1&lt;br&gt;⑥目标端口，就填lucky反向代理的监听端口&lt;br&gt;⑦打开WebHook开关，下面内容就复用上面创建的最有一条手动任务。请求体有所不同的是，端口号改成了lucky提供的变量#{port}，表示传入stun穿透获取到的公网端口。&lt;br&gt;⑧调用成功填入”success”: true&lt;/p&gt;
&lt;p&gt;接口地址：就是F12复制出来并替换前面部分的地址&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;https://api.cloudflare.com/client/v4/zones/区域ID/rulesets/重定向规则集ID/rules/重定向规则ID
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;请求方式：PATCH&lt;/p&gt;
&lt;p&gt;请求头：Authorization: Bearer 创建的重定向API令牌&lt;br&gt;Content-Type: application/json&lt;/p&gt;
&lt;p&gt;请求体：&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;{
  &quot;description&quot;: &quot;stun-重定向-v4&quot;,
  &quot;expression&quot;: &quot;(http.host wildcard \&quot;*.123.xyz\&quot; and not http.host contains \&quot;nas.123.xyz\&quot; and ip.src in {0.0.0.0/0})&quot;,
  &quot;action&quot;: &quot;redirect&quot;,
  &quot;action_parameters&quot;: {
    &quot;from_value&quot;: {
      &quot;status_code&quot;: 307,
      &quot;target_url&quot;: {
        &quot;expression&quot;: &quot;wildcard_replace(http.request.full_uri, \&quot;*://*.123.xyz/*\&quot;, \&quot;https://${2}.ipv4.123.xyz:#{port}/${3}\&quot;)&quot;
      },
      &quot;preserve_query_string&quot;: true
    }
  }
} 
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;记得把请求体中的域名替换成你自己的。&lt;br&gt;&lt;img style=&quot;max-width:100%;&quot; title=&quot;stun设置.png&quot; alt=&quot;null&quot; src=&quot;https://img.sdjy.eu.org/2026/03/26/69c40bd6de233.png&quot;&gt;&lt;/p&gt;
&lt;h3 id=&quot;h3-u6D4Bu8BD5-109&quot;&gt;&lt;a class=&quot;reference-link&quot; name=&quot;测试&quot;&gt;&lt;/a&gt;&lt;span class=&quot;header-link octicon octicon-link&quot;&gt;&lt;/span&gt;测试&lt;/h3&gt;&lt;p&gt;可以点击“WebHook手动触发测试”，看一下CF规则页面是否修改，lucky是否返回成功。保存后，stun穿透开始运行，最终成功的情况如下图。看CF规则页面的表达式中的端口是否变成了stun穿透获取的公网端口&lt;br&gt;若测试成功在最下面的地方会有”success”: true显示。&lt;br&gt;最后点一下关闭按钮再打开，这个非常的重要，不然webhook不会自动更新的&lt;br&gt;&lt;img style=&quot;max-width:100%;&quot; title=&quot;stun.png&quot; alt=&quot;null&quot; src=&quot;https://img.sdjy.eu.org/2026/03/26/69c40d15c943e.png&quot;&gt;&lt;/p&gt;
&lt;h3 id=&quot;h3-u6D4Bu8BD5u6210u679Cu53CAu540Eu7EEDu5DE5u4F5C-115&quot;&gt;&lt;a class=&quot;reference-link&quot; name=&quot;测试成果及后续工作&quot;&gt;&lt;/a&gt;&lt;span class=&quot;header-link octicon octicon-link&quot;&gt;&lt;/span&gt;测试成果及后续工作&lt;/h3&gt;&lt;p&gt;现在在浏览器输入emby.123.xyz，应该就可以跳转到emby.ipv4.123.xyz:动态端口  这个地址了。如果是在v6环境下访问，比如手机流量，那么会自动跳转到emby.ipv6.123.xyz:15556。&lt;/p&gt;
&lt;/body&gt;</description><pubDate>Thu, 26 Mar 2026 00:03:24 +0800</pubDate></item><item><title>GitHub访问加速</title><link>https://blog.sdjy.eu.org/?id=48</link><description>&lt;head&gt;&lt;/head&gt;&lt;body&gt;&lt;h1 id=&quot;h1-u4FEEu653920Hosts20u6587u4EF6-1&quot;&gt;&lt;a class=&quot;reference-link&quot; name=&quot;修改 Hosts 文件&quot;&gt;&lt;/a&gt;&lt;span class=&quot;header-link octicon octicon-link&quot;&gt;&lt;/span&gt;修改 Hosts 文件&lt;/h1&gt;&lt;p&gt;下载SwitchHosts这个工具定时修改host文件，下载地址：&lt;a href=&quot;https://github.com/oldj/SwitchHosts&quot;&gt;https://github.com/oldj/SwitchHosts&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&quot;h2-u64CDu4F5Cu6B65u9AA4-3&quot;&gt;&lt;a class=&quot;reference-link&quot; name=&quot;操作步骤&quot;&gt;&lt;/a&gt;&lt;span class=&quot;header-link octicon octicon-link&quot;&gt;&lt;/span&gt;操作步骤&lt;/h2&gt;&lt;p&gt;添加一条规则：&lt;/p&gt;
&lt;p&gt;方案名：GitHub（可以自行命名）&lt;br&gt;类型：远程&lt;br&gt;URL 地址：&lt;a href=&quot;https://gitlab.com/ineo6/hosts/-/raw/master/hosts&quot;&gt;https://gitlab.com/ineo6/hosts/-/raw/master/hosts&lt;/a&gt;&lt;br&gt;自动更新：1个小时（时间可自行调整）&lt;br&gt;这样就可以和最新的hosts保持同步。&lt;br&gt;&lt;img style=&quot;max-width:100%;&quot; title=&quot;ScreenShot_2026-03-08_014654_834.png&quot; alt=&quot;null&quot; src=&quot;https://img.sdjy.eu.org/2026/03/08/69ac64e481dd9.png&quot;&gt;&lt;br&gt;附另一个URL：&lt;a href=&quot;https://raw.hellogithub.com/hosts&quot;&gt;https://raw.hellogithub.com/hosts&lt;/a&gt;&lt;/p&gt;
&lt;/body&gt;</description><pubDate>Sun, 08 Mar 2026 01:42:32 +0800</pubDate></item></channel></rss>