Loading... 校园网的 IPv6 没有 IPv4 拥挤,需要我们好好利用一下。 ## 准备工作 * 闲置电脑 (网卡、硬盘) * U盘 * PT 账号 ## 开始 ### 安装 OpenWrt 系统 也可以是其他 Linux 系统,这里图省事就用 OpenWrt 做演示 1. 制作 PE 系统,我们使用[**微 PE**](https://www.wepe.com.cn/download.html) 来制作,这里需要一个 U 盘 2. 下载 eSir [**高大全版本 OpenWrt**](https://drive.google.com/drive/folders/1BNjtBTnhoK1S9Ww-e2O5yv0uomoWKT2y),根据机器本身选择 legacy 或 uefi 格式,下载后解压得到 img 文件,把这个文件拷贝到 U 盘里 3. 下载 [**physdiskwrite 0.5.3**](https://m0n0.ch/wall/downloads/physdiskwrite-0.5.3.zip),并拷贝到 U盘里,后续用这个把 img 文件写到磁盘里 4. 重启进入 PE 系统,进入 DiskGenius 将待安装 OpenWrt 系统的本地磁盘上的所有分区删除 5. 打开 CMD,切换到 U 盘存放前述两个文件的目录,执行以下命令写入镜像 ```shell .\pyphysdiskwrite.exe -u xxx.img ``` 按照提示选择磁盘进行写入即可 6. 拔掉 U 盘,重启进入 OpenWrt 系统 ### 自动联网 这个用 Chrome 简单抓包,获取 curl 格式的命令即可 具体步骤可以参考之前的一篇文章,需要略过里面的 DDNS 部分 <div class="preview"> <div class="post-inser post box-shadow-wrap-normal"> <a href="https://19990311.com/archives/95/" target="_blank" class="post_inser_a no-external-link no-underline-link"> <div class="inner-image bg" style="background-image: url(https://19990311.com/usr/themes/handsome/assets/img/sj/5.jpg);background-size: cover;"></div> <div class="inner-content" > <p class="inser-title">校园断线重连脚本</p> <div class="inster-summary text-muted"> 为了方便远程连接实验室里的台式机写了个脚本脚本功能:检测是否连接公网,若断开则重新登录检测是否连接内网,若断开则重... </div> </div> </a> <!-- .inner-content #####--> </div> <!-- .post-inser ####--> </div> ### 获取 IPv6 地址 修改 WAN6 接口 | 字段 | 内容 | | -------------------------- | --------------- | | 协议 | DHCPv6 客户端 | | 请求 IPv6 地址 | force | | 请求指定长度的 IPv6 前缀 | 停用 | 保存并应用应该就可以获取到 IPv6 地址了 ### 动态 DNS 校园网整个是一个局域网,我们使用动态 DNS,来自动更新 WAN 口 局域网 IP 地址 在开始前需要在动态 DNS 配置界面的全局设置中,勾选允许非公网 IP  修改 ipv4_preset 这里演示使用 Cloudflare DDNS *基本设置* | 字段 | 内容 | | ------------------------ | ----------------------------------- | | 查询主机名 | Cloudflare 上解析的域名,如 A.B.C | | IP地址版本 | IPv4地址 | | DDNS 服务提供商 [IPv4] | cloudflare.com-v4 | | 域名 | A@B.C | | 用户名 | Cloudflare 邮箱 | | 密码 | Cloudflare API 密钥 | | 使用 HTTPS | 取消勾选 | *高级设置* **IP 地址来源 [IPv4]** 选择 **接口** **接口** 选择 **WAN 对应的接口** 最后保存应应用即可,之后就可以连接校园网后用 A.B.C 这个域名访问路由器了 ### MosDNS 校园网的 IPv6 DNS 一般都不怎么正常,下面用 MosDNS 来接管路由器的 DNS 服务 **配置文件** 选择 **自定义**,并填入以下自定义配置 ```shell log: level: info file: "/tmp/mosdns.log" include: [] data_providers: - tag: geoip file: "/usr/share/v2ray/geoip.dat" auto_reload: true - tag: geosite file: "/usr/share/v2ray/geosite.dat" auto_reload: true - tag: whitelist file: "/etc/mosdns/rule/whitelist.txt" auto_reload: true - tag: blocklist file: "/etc/mosdns/rule/blocklist.txt" auto_reload: true - tag: hosts file: "/etc/mosdns/rule/hosts.txt" auto_reload: true - tag: redirect file: "/etc/mosdns/rule/redirect.txt" auto_reload: true plugins: - tag: lazy_cache type: cache args: size: 200000 lazy_cache_ttl: 259200 - tag: modify_ttl type: ttl args: minimal_ttl: 0 maximum_ttl: 0 - tag: "forward_local" type: fast_forward args: upstream: - addr: 119.29.29.29 - addr: 114.114.114.114 - tag: "forward_remote" type: fast_forward args: upstream: - addr: tls://8.8.8.8 - addr: tls://1.1.1.1 - tag: query_is_whitelist_domain type: query_matcher args: domain: - "provider:whitelist" - tag: query_is_blocklist_domain type: query_matcher args: domain: - "provider:blocklist" - tag: query_is_hosts_domain type: hosts args: hosts: - "provider:hosts" - tag: query_is_redirect_domain type: redirect args: rule: - "provider:redirect" - tag: query_is_local_domain type: query_matcher args: domain: - "provider:geosite:cn" - tag: query_is_non_local_domain type: query_matcher args: domain: - "provider:geosite:geolocation-!cn" - tag: match_nf_domain type: query_matcher args: domain: - "provider:geosite:netflix" - "provider:geosite:instagram" - "v2ex.com" - tag: response_has_local_ip type: response_matcher args: ip: - "provider:geoip:cn" - tag: query_is_ad_domain type: query_matcher args: domain: - "provider:geosite:category-ads-all" - tag: match_qtype65 type: query_matcher args: qtype: [65] - tag: "main_sequence" type: "sequence" args: exec: - _misc_optm - query_is_hosts_domain - query_is_redirect_domain - if: query_is_whitelist_domain exec: - forward_local - modify_ttl - _return - if: "query_is_blocklist_domain || query_is_ad_domain || match_qtype65" exec: - _new_nxdomain_response - _return - lazy_cache - if: query_is_local_domain exec: - forward_local - modify_ttl - _return - if: match_nf_domain exec: - _prefer_ipv4 - forward_remote - modify_ttl - _return - if: query_is_non_local_domain exec: - forward_remote - modify_ttl - _return - primary: - forward_local - if: "(! response_has_local_ip) && [_response_valid_answer]" exec: - _drop_response secondary: - forward_remote - modify_ttl fast_fallback: 200 servers: - exec: main_sequence listeners: - protocol: udp addr: ":5335" - protocol: tcp addr: ":5335" ``` 上述的自定义配置文件,在默认配置的基础上,做了以下修改 * 取消默认配置的外国域名 _prefer_ipv4 选项,否则后面 qBittorrent 无法在仅使用 IPv6 地址的情况下进行下载,仅使用 IPv6 主要有两个好处,一是可以用不限速的 IPv6 进行下载,二是 qBittorrent 的流量不走代理 * 保留 Netflix 和 Instagram 的 _prefer_ipv4 选项 **勾选 DNS 转发** 保存并应用 最后修改远程 DNS 为 127.0.0.1:5335  ### 扩容 OpenWrt 根目录 参照[这个教程](https://zhuanlan.zhihu.com/p/542534429)扩容根目录,方便后续使用 Docker 扩容效果如下  ### NAStool 我们使用 NAStool 来管理我们的 IPv6 NAS #### 安装 使用 ssh 登录到 OpenWrt 后台,执行以下命令 ```shell cd /root mkdir nas-tools cd nas-tools # NAStool 配置目录 mkdir config # qBittorrent 配置目录 mkdir -p qbit/config # qBittorrent 刷流目录 mkdir -p media/qbit/sl # qBittorrent 下载目录 mkdir -p media/qbit/movie mkdir -p media/qbit/tv mkdir -p media/qbit/animation chmod -R 777 media/qbit # NAStool 硬链接目录/emby 媒体库目录 mkdir -p media/link/movie mkdir -p media/link/tv mkdir -p media/link/animation # Docker 运行 NAStool cd /root/nas-tools docker run -d --name nas-tools --hostname nas-tools --net host -v $(pwd)/config:/config -v $(pwd)/media:/media -e PUID=0 -e PGID=0 -e UMASK=000 -e NASTOOL_AUTO_UPDATE=false -e NASTOOL_CN_UPDATE=false jxxghp/nas-tools:latest # Docker 运行 qBittorrent docker run -d --name=qbittorrent -e PUID=1000 -e PGID=1000 -e TZ=Asia/Shanghai -e WEBUI_PORT=8808 --net host -v $(pwd)/qbit/config:/config -v $(pwd)/media/qbit:/downloads --restart unless-stopped lscr.io/linuxserver/qbittorrent:latest ``` 等待一会后在浏览器输入 `http://192.168.5.1:3000` 或 `http://A.B.C:3000` 进入 NAStool 后台,其中 A.B.C 是上面 DDNS 中设置的域名 #### qBittorrent 配置 新建电影、电视和动漫三个分类    #### 用户认证 NAStool 3.0 引入了用户认证,用户在认证后才能解锁全功能 #### 添加站点  cookies 用 Chrome F12 获取 #### 媒体库  #### 目录同步  #### 索引器 勾选想索引的站点  #### 下载器 填写 qBittorrent 的信息  注意设置完毕后需要点击右上角的星星,将添加的下载器作为默认下载器  #### 刷流任务  如果你像我一样机器性能不太行的话,同时下载数可以设置成1,下载速度限制一下,免得机器卡死 #### 刷流效果   7 天刷了1.8 TB 左右上传,虽然没有 VPS 刷得快,但是利用了不用白不用的 IPv6 带宽 ### Emby 如果你的机器带核显的话,可以顺便搭建一个媒体库 ```shell docker run -d --name emby --volume /root/emby/config:/config --volume /root/nas-tools/media/link:/media --net=host --device /dev/dri:/dev/dri --env UID=0 --env GID=0 --env GIDLIST=0 emby/embyserver:4.8.0.15 ``` 执行下面的目录进入docker容器 ```shell docker exec -it emby /bin/sh ``` 进入容器后执行下面的目录替换文件进行学习 ```shell wget https://act.jiawei.xin:10086/tmp/emby/4.8.0.15b/docker_crack_4.8.0.15b.sh sh docker_crack_4.8.0.15b.sh exit ``` 重启容器 ```shell docker restart emby ``` 进入 Emby 网页随便输一个密钥激活 Emby Premiere   在 NAStool 中配置一下 Emby API Key 就可以从 NAStool 访问 Emby 了  最后修改:2024 年 05 月 04 日 10 : 02 PM © 允许规范转载 赞赏 如果觉得我的文章对你有用,请随意赞赏 赞赏作者 支付宝微信