<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>OpenWrt on T.本秋的自留地</title>
    <link>https://blog.texsd.eu.org/tags/openwrt/</link>
    <description>Recent content in OpenWrt on T.本秋的自留地</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>zh-cn</language>
    <copyright>Copyright© 2026 T.本秋. Licensed under CC BY-NC-SA 4.0.</copyright>
    <lastBuildDate>Wed, 07 Jan 2026 01:42:21 +0800</lastBuildDate><atom:link href="https://blog.texsd.eu.org/tags/openwrt/index.xml" rel="self" type="application/rss+xml" />
    
    <item>
      <title>Immortalwrt：多线多网与 Tailscale</title>
      <link>https://blog.texsd.eu.org/posts/immortalwrt-2-multiwan-tailscale/</link>
      <pubDate>Wed, 07 Jan 2026 01:42:21 +0800</pubDate>
      
      <guid>https://blog.texsd.eu.org/posts/immortalwrt-2-multiwan-tailscale/</guid>
      <description>
&lt;h2 class=&#34;relative group&#34;&gt;配置多线多内网
    &lt;div id=&#34;配置多线多内网&#34; class=&#34;anchor&#34;&gt;&lt;/div&gt;
    
    &lt;span
        class=&#34;absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none&#34;&gt;
        &lt;a class=&#34;text-primary-300 dark:text-neutral-700 !no-underline&#34; href=&#34;#%e9%85%8d%e7%bd%ae%e5%a4%9a%e7%ba%bf%e5%a4%9a%e5%86%85%e7%bd%91&#34; aria-label=&#34;锚点&#34;&gt;#&lt;/a&gt;
    &lt;/span&gt;
    
&lt;/h2&gt;
&lt;p&gt;现在我同时有了两个账号的使用权，一个是运营商账号，有 IPv6，但是速度不算快，不过不断网；另一个是运营商自建的网，卖给学生用的，没有 IPv6，晚上 11 点半还断网，真是花钱做大冤种啊哈哈！&lt;/p&gt;
&lt;p&gt;那么就有了配多内网的想法，之前也划过 VLAN 了，这里就不赘述了，提一嘴怎么给电脑网卡变成 trunk 模式，Win 就是在设备管理器，网卡的高级设置里面填入 ID，Linux 先 modprobe 8021q，用 &lt;code&gt;nmcli&lt;/code&gt; 可以添加子接口，具体看一下 manual。&lt;/p&gt;
&lt;p&gt;在接口 - 设备这里，可以创建 MAC VLAN:&lt;/p&gt;
&lt;p&gt;&lt;figure&gt;&lt;img
    class=&#34;my-0 rounded-md&#34;
    loading=&#34;lazy&#34;
    decoding=&#34;async&#34;
    fetchpriority=&#34;auto&#34;
    alt=&#34;macvlan&#34;
    width=&#34;1309&#34;
    height=&#34;878&#34;
    src=&#34;https://blog.texsd.eu.org/posts/immortalwrt-2-multiwan-tailscale/image_hu_a8fb5bf96636b438.webp&#34;
    srcset=&#34;https://blog.texsd.eu.org/posts/immortalwrt-2-multiwan-tailscale/image_hu_a8fb5bf96636b438.webp 800w, https://blog.texsd.eu.org/posts/immortalwrt-2-multiwan-tailscale/image_hu_21ef3c0d1b31a4c8.webp 1280w&#34;
    sizes=&#34;(min-width: 768px) 50vw, 65vw&#34;
    data-zoom-src=&#34;https://blog.texsd.eu.org/posts/immortalwrt-2-multiwan-tailscale/image.webp&#34;&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;需要注意的是，在这台京东云上面要求多个 MACVLAN 必须是连续的，否则可能出现设备 CLAIM 失败的报错。&lt;/p&gt;
&lt;p&gt;然后使用 &lt;code&gt;curl --interface &lt;/code&gt;分别给每个接口配置 portal 认证。现在应该有两个接口了：&lt;/p&gt;
&lt;p&gt;&lt;figure&gt;&lt;img
    class=&#34;my-0 rounded-md&#34;
    loading=&#34;lazy&#34;
    decoding=&#34;async&#34;
    fetchpriority=&#34;auto&#34;
    alt=&#34;two_interface&#34;
    width=&#34;1425&#34;
    height=&#34;377&#34;
    src=&#34;https://blog.texsd.eu.org/posts/immortalwrt-2-multiwan-tailscale/image-1_hu_38d63cae2c2a96c7.webp&#34;
    srcset=&#34;https://blog.texsd.eu.org/posts/immortalwrt-2-multiwan-tailscale/image-1_hu_38d63cae2c2a96c7.webp 800w, https://blog.texsd.eu.org/posts/immortalwrt-2-multiwan-tailscale/image-1_hu_e18c60d1d6de1739.webp 1280w&#34;
    sizes=&#34;(min-width: 768px) 50vw, 65vw&#34;
    data-zoom-src=&#34;https://blog.texsd.eu.org/posts/immortalwrt-2-multiwan-tailscale/image-1.webp&#34;&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;这时候会自动把两个 wan 口下发的路由都加到 main 表里面，是什么顺序我没注意，不过，你的设备肯定只走一条出去，另一条是闲置的。&lt;/p&gt;
&lt;p&gt;所以我们要在高级设置里面覆盖 IPv4 路由表，这个的意思是把获取到的路由加到这个表里面。&lt;/p&gt;
&lt;p&gt;表分两种，有名字的和纯数字 ID 的。你这里只能填 ID，填完了可以到 &lt;code&gt;/etc/iproute2/rt_tables&lt;/code&gt; 里面按照 &lt;code&gt;id 名字&lt;/code&gt; 这样写，这时候就更加有可读性。&lt;/p&gt;
&lt;p&gt;/etc/iproute2/rt_tables 必须是连续的，否则可能出现设备 CLAIM 失败的报错。&lt;/p&gt;
&lt;p&gt;然后使用 &lt;code&gt;curl --interface &lt;/code&gt;分别给每个接口配置 portal 认证。现在应该有两个接口了：&lt;/p&gt;
&lt;p&gt;&lt;figure&gt;&lt;img
    class=&#34;my-0 rounded-md&#34;
    loading=&#34;lazy&#34;
    decoding=&#34;async&#34;
    fetchpriority=&#34;auto&#34;
    alt=&#34;two_interface&#34;
    width=&#34;1425&#34;
    height=&#34;377&#34;
    src=&#34;https://blog.texsd.eu.org/posts/immortalwrt-2-multiwan-tailscale/image-1_hu_38d63cae2c2a96c7.webp&#34;
    srcset=&#34;https://blog.texsd.eu.org/posts/immortalwrt-2-multiwan-tailscale/image-1_hu_38d63cae2c2a96c7.webp 800w, https://blog.texsd.eu.org/posts/immortalwrt-2-multiwan-tailscale/image-1_hu_e18c60d1d6de1739.webp 1280w&#34;
    sizes=&#34;(min-width: 768px) 50vw, 65vw&#34;
    data-zoom-src=&#34;https://blog.texsd.eu.org/posts/immortalwrt-2-multiwan-tailscale/image-1.webp&#34;&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;这时候会自动把两个 wan 口下发的路由都加到 main 表里面，是什么顺序我没注意，不过，你的设备肯定只走一条出去，另一条是闲置的。&lt;/p&gt;
&lt;p&gt;所以我们要在高级设置里面覆盖 IPv4 路由表，这个的意思是把获取到的路由加到这个表里面。&lt;/p&gt;
&lt;p&gt;表分两种，有名字的和纯数字 ID 的。你这里只能填 ID，填完了可以到 &lt;code&gt;/etc/iproute2/rt_tables&lt;/code&gt; 里面按照 &lt;code&gt;id 名字&lt;/code&gt; 这样写，这时候就更加有可读性。&lt;/p&gt;
&lt;p&gt;&lt;figure&gt;&lt;img
    class=&#34;my-0 rounded-md&#34;
    loading=&#34;lazy&#34;
    decoding=&#34;async&#34;
    fetchpriority=&#34;auto&#34;
    alt=&#34;override_ipv4_table&#34;
    width=&#34;634&#34;
    height=&#34;392&#34;
    src=&#34;https://blog.texsd.eu.org/posts/immortalwrt-2-multiwan-tailscale/image-2.webp&#34;
    srcset=&#34;https://blog.texsd.eu.org/posts/immortalwrt-2-multiwan-tailscale/image-2.webp 800w, https://blog.texsd.eu.org/posts/immortalwrt-2-multiwan-tailscale/image-2.webp 1280w&#34;
    sizes=&#34;(min-width: 768px) 50vw, 65vw&#34;
    data-zoom-src=&#34;https://blog.texsd.eu.org/posts/immortalwrt-2-multiwan-tailscale/image-2.webp&#34;&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;那么我就把两个路由分到了两个路由表里面，一个 cmcc，另一个 cernet。&lt;/p&gt;
&lt;p&gt;这时候问题来了，你多半发现上不了网了，原因是默认只会查主路由表（main），这时候主路由表里面只有你的内网 local 路由，发往别的网段的数据包就被丢弃了。&lt;/p&gt;
&lt;p&gt;所以我们得手动定制路由规则，其实对应的就是 &lt;code&gt;ip rule&lt;/code&gt; 命令了。&lt;/p&gt;
&lt;p&gt;&lt;figure&gt;&lt;img
    class=&#34;my-0 rounded-md&#34;
    loading=&#34;lazy&#34;
    decoding=&#34;async&#34;
    fetchpriority=&#34;auto&#34;
    alt=&#34;routing_rules&#34;
    width=&#34;1416&#34;
    height=&#34;283&#34;
    src=&#34;https://blog.texsd.eu.org/posts/immortalwrt-2-multiwan-tailscale/image-3_hu_3076800415bc1a74.webp&#34;
    srcset=&#34;https://blog.texsd.eu.org/posts/immortalwrt-2-multiwan-tailscale/image-3_hu_3076800415bc1a74.webp 800w, https://blog.texsd.eu.org/posts/immortalwrt-2-multiwan-tailscale/image-3_hu_2941a70e83e8ac2a.webp 1280w&#34;
    sizes=&#34;(min-width: 768px) 50vw, 65vw&#34;
    data-zoom-src=&#34;https://blog.texsd.eu.org/posts/immortalwrt-2-multiwan-tailscale/image-3.webp&#34;&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;按照不同的网段查不同的表，请注意上面两条规则很重要，要不然内网的流量也被发到 wan 口去了，wrt 系不像 routeros，没有靠 MAC 地址连接的办法，自动回滚居然也不生效，没备份的我至少重新弄了三遍。&lt;/p&gt;
&lt;p&gt;然后就可以爽用了。&lt;/p&gt;

&lt;h2 class=&#34;relative group&#34;&gt;tailscale 出现的问题
    &lt;div id=&#34;tailscale-出现的问题&#34; class=&#34;anchor&#34;&gt;&lt;/div&gt;
    
    &lt;span
        class=&#34;absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none&#34;&gt;
        &lt;a class=&#34;text-primary-300 dark:text-neutral-700 !no-underline&#34; href=&#34;#tailscale-%e5%87%ba%e7%8e%b0%e7%9a%84%e9%97%ae%e9%a2%98&#34; aria-label=&#34;锚点&#34;&gt;#&lt;/a&gt;
    &lt;/span&gt;
    
&lt;/h2&gt;
&lt;p&gt;配完过了几天发现外部的 tailscale 没法连到内网的设备了，tcpdump 一看，只有访问的包，没有回去的包。我当时以为是 masquerade 的问题，在 ts 接口上面开了动态伪装，然后 dump br-lan.2，发现其实内网有回复，但是发到路由器后就没下文了。&lt;/p&gt;
&lt;p&gt;我立马就知道肯定是路由规则问题了，防火墙没问题。&lt;/p&gt;
&lt;p&gt;于是添加了一条最优先的规则，让目标为 `100.64.0.0/10&amp;rsquo; 的走主路由表，还是不通。&lt;/p&gt;
&lt;p&gt;其实还是先入为主了！ts 自己弄了个 52 的路由表，他的规则全部在里面，根本不在主路由表。高级设置里面表填上 52，收工！&lt;/p&gt;
</description>
      
    </item>
    
    <item>
      <title>Immortalwrt：IPv6、VLAN 与 NDP 代理</title>
      <link>https://blog.texsd.eu.org/posts/immortalwrt-1-ipv6-vlan/</link>
      <pubDate>Sat, 19 Jul 2025 14:15:52 +0800</pubDate>
      
      <guid>https://blog.texsd.eu.org/posts/immortalwrt-1-ipv6-vlan/</guid>
      <description>
&lt;h2 class=&#34;relative group&#34;&gt;前言
    &lt;div id=&#34;前言&#34; class=&#34;anchor&#34;&gt;&lt;/div&gt;
    
    &lt;span
        class=&#34;absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none&#34;&gt;
        &lt;a class=&#34;text-primary-300 dark:text-neutral-700 !no-underline&#34; href=&#34;#%e5%89%8d%e8%a8%80&#34; aria-label=&#34;锚点&#34;&gt;#&lt;/a&gt;
    &lt;/span&gt;
    
&lt;/h2&gt;
&lt;p&gt;早年接触过 wrt，但是那时候用的还是 7621 的设备，使用 mtk 开源驱动后信号会变得非常差，闭源驱动会出现死机的情况。如今入手 7981 的路由器，终于可以研究一下配置以及日用了。&lt;/p&gt;

&lt;h2 class=&#34;relative group&#34;&gt;IPv6 上网
    &lt;div id=&#34;ipv6-上网&#34; class=&#34;anchor&#34;&gt;&lt;/div&gt;
    
    &lt;span
        class=&#34;absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none&#34;&gt;
        &lt;a class=&#34;text-primary-300 dark:text-neutral-700 !no-underline&#34; href=&#34;#ipv6-%e4%b8%8a%e7%bd%91&#34; aria-label=&#34;锚点&#34;&gt;#&lt;/a&gt;
    &lt;/span&gt;
    
&lt;/h2&gt;
&lt;p&gt;想让路由器下面的设备上网，无非就这么几种方式：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;PD(Prefix Delegation): 上级下发 ipv6 的/56 或者/60 的前缀，可以自己划分子网使用。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;NDP Proxy: 上级通过 SLAAC 分配 ipv6 地址，只开启了 O 标志，获得一个/64 的地址的时候使用。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;NPTv6: 你有多条宽带，需要做负载均衡。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;NAPTv6: 上级只允许通过 DHCPv6 获取地址（一般是学校之类需要强管理或者认证的场景），获得一个/128 的地址。&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;欸，这时候有人问，/128 不是也可以使用 ndp 代理吗？&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;理论上确实可行，但是很多 DHCPv6 服务器并不支持代理获取，下面这个&lt;code&gt;tcpdump&lt;/code&gt;结果说明了这一点：&lt;/p&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;root@ImmortalWrt:~# tcpdump -i eth1 udp port 546 or udp port 547
tcpdump: verbose output suppressed, use -v[v]... for full protocol decode
listening on eth1, link-type EN10MB (Ethernet), snapshot length 262144 bytes
15:03:40.878466 IP6 fe80::aaaa.546 &amp;gt; ff02::1:2.547: dhcp6 solicit
15:03:40.880132 IP6 fe80::bbbb.547 &amp;gt; fe80::aaaa.546: dhcp6 advertise
15:03:42.905527 IP6 fe80::aaaa.546 &amp;gt; ff02::1:2.547: dhcp6 request
15:03:42.908198 IP6 fe80::bbbb.547 &amp;gt; fe80::aaaa.546: dhcp6 reply
15:04:39.149414 IP6 ImmortalWrt.lan.547 &amp;gt; ff05::1:3.547: dhcp6 relay-fwd
15:04:40.188299 IP6 ImmortalWrt.lan.547 &amp;gt; ff05::1:3.547: dhcp6 relay-fwd
15:04:42.189520 IP6 ImmortalWrt.lan.547 &amp;gt; ff05::1:3.547: dhcp6 relay-fwd
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;使用 ff05 的广播根本就不回你。&lt;/p&gt;

&lt;h3 class=&#34;relative group&#34;&gt;NDP 代理
    &lt;div id=&#34;ndp-代理&#34; class=&#34;anchor&#34;&gt;&lt;/div&gt;
    
    &lt;span
        class=&#34;absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none&#34;&gt;
        &lt;a class=&#34;text-primary-300 dark:text-neutral-700 !no-underline&#34; href=&#34;#ndp-%e4%bb%a3%e7%90%86&#34; aria-label=&#34;锚点&#34;&gt;#&lt;/a&gt;
    &lt;/span&gt;
    
&lt;/h3&gt;
&lt;p&gt;在路由器上面这样设置：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;code&gt;wan6&lt;/code&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;DHCP 服务器-IPv6 设置：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;指定的主接口（打勾）&lt;/li&gt;
&lt;li&gt;RA 服务：中继模式&lt;/li&gt;
&lt;li&gt;DHCPv6 服务：中继模式&lt;/li&gt;
&lt;li&gt;NDP 代理：中继模式&lt;/li&gt;
&lt;li&gt;学习路由（打勾）&lt;/li&gt;
&lt;/ul&gt;
&lt;ol start=&#34;2&#34;&gt;
&lt;li&gt;&lt;code&gt;br-lan&lt;/code&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;DHCP 服务器-IPv6 设置：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;指定的主接口（不允许选择了）&lt;/li&gt;
&lt;li&gt;RA 服务：中继模式&lt;/li&gt;
&lt;li&gt;DHCPv6 服务：中继模式&lt;/li&gt;
&lt;li&gt;NDP 代理：中继模式&lt;/li&gt;
&lt;li&gt;学习路由（打勾）&lt;/li&gt;
&lt;li&gt;NDP 代理从属设备（打勾）&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;这样操作相当于透传了上级路由的 RA（路由器通告），上面怎么样配置，你的局域网设备就是怎么样的，没法更改，当然如果你能获取到/64 的前缀，那么下面的设备一般来说也没有问题。&lt;/p&gt;

&lt;h3 class=&#34;relative group&#34;&gt;前缀下发
    &lt;div id=&#34;前缀下发&#34; class=&#34;anchor&#34;&gt;&lt;/div&gt;
    
    &lt;span
        class=&#34;absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none&#34;&gt;
        &lt;a class=&#34;text-primary-300 dark:text-neutral-700 !no-underline&#34; href=&#34;#%e5%89%8d%e7%bc%80%e4%b8%8b%e5%8f%91&#34; aria-label=&#34;锚点&#34;&gt;#&lt;/a&gt;
    &lt;/span&gt;
    
&lt;/h3&gt;
&lt;p&gt;这当然是最推荐的方式了。&lt;/p&gt;
&lt;p&gt;在现代的类 wrt 上面，使用&lt;code&gt;PPPoE&lt;/code&gt;在 wan 口上拨号，同时在高级设置里面开启获取 IPv6 地址为自动，如果你的 ISP 有 IPv6 支持，会自动产生一个虚拟动态接口&lt;code&gt;wan_6&lt;/code&gt;。一般这个接口能获取到一个/64 的地址和 IPv6-PD，这是我们能分配的前提条件。&lt;/p&gt;
&lt;p&gt;我的配置是这样的：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;RA 服务：服务器模式&lt;/li&gt;
&lt;li&gt;DHCPv6 服务：已禁用&lt;/li&gt;
&lt;li&gt;NDP 代理：已禁用&lt;/li&gt;
&lt;/ul&gt;

&lt;h4 class=&#34;relative group&#34;&gt;使用简单的路由通告配置
    &lt;div id=&#34;使用简单的路由通告配置&#34; class=&#34;anchor&#34;&gt;&lt;/div&gt;
    
    &lt;span
        class=&#34;absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none&#34;&gt;
        &lt;a class=&#34;text-primary-300 dark:text-neutral-700 !no-underline&#34; href=&#34;#%e4%bd%bf%e7%94%a8%e7%ae%80%e5%8d%95%e7%9a%84%e8%b7%af%e7%94%b1%e9%80%9a%e5%91%8a%e9%85%8d%e7%bd%ae&#34; aria-label=&#34;锚点&#34;&gt;#&lt;/a&gt;
    &lt;/span&gt;
    
&lt;/h4&gt;
&lt;p&gt;在家用的小型网络中，完全可以做到不架设 DHCPv6 服务器，只通过 RA 就可以实现基本的配置了，请看这个包：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;root@t-router:~# tcpdump -nvi br-lan ip6&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;40&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;==&lt;/span&gt; &lt;span class=&#34;m&#34;&gt;134&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;tcpdump: listening on br-lan, link-type EN10MB &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;Ethernet&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;, snapshot length &lt;span class=&#34;m&#34;&gt;262144&lt;/span&gt; bytes
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;10:35:28.476086 IP6 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;flowlabel 0x4f20d, hlim 255, next-header ICMPv6 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;58&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; payload length: 144&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; fe80::aaaa &amp;gt; ff02::1: &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;icmp6 sum ok&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; ICMP6, router advertisement, length &lt;span class=&#34;m&#34;&gt;144&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        hop limit 64, Flags &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;none&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;, pref medium, router lifetime 1800s, reachable &lt;span class=&#34;nb&#34;&gt;time&lt;/span&gt; 0ms, retrans timer 0ms
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;          &lt;span class=&#34;nb&#34;&gt;source&lt;/span&gt; link-address option &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;, length &lt;span class=&#34;m&#34;&gt;8&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;: aa:aa:aa:aa:aa:aa
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;          mtu option &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;5&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;, length &lt;span class=&#34;m&#34;&gt;8&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;:  &lt;span class=&#34;m&#34;&gt;1492&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;          prefix info option &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;, length &lt;span class=&#34;m&#34;&gt;32&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;4&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;: 2409:xxxx:xxxx:13a::/64, Flags &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;onlink, auto&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;, valid &lt;span class=&#34;nb&#34;&gt;time&lt;/span&gt; 5400s, pref. &lt;span class=&#34;nb&#34;&gt;time&lt;/span&gt; 2700s
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;          route info option &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;24&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;, length &lt;span class=&#34;m&#34;&gt;24&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;:  2409:xxxx:xxxx:130::/60, &lt;span class=&#34;nv&#34;&gt;pref&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;medium, &lt;span class=&#34;nv&#34;&gt;lifetime&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;1800s
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;          rdnss option &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;25&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;, length &lt;span class=&#34;m&#34;&gt;24&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;:  lifetime 1800s, addr: 2409:xxxx:xxxx:13a::1
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;          dnssl option &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;31&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;, length &lt;span class=&#34;m&#34;&gt;24&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;:  lifetime 1800s, domain&lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;s&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;: lan.
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;          advertisement interval option &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;7&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;, length &lt;span class=&#34;m&#34;&gt;8&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;:  600000ms
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;几个重要的信息全部体现在这个里面了：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;地址：&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;没有配置 Flag，说明是 Stateless，设备自己生成配置，是否开启 RFC4941（隐私地址）由设备自己决定。&lt;/p&gt;
&lt;p&gt;不过无状态自动配置要求地址的前缀必须是/64 以上的，否则会破坏这一行为。&lt;/p&gt;
&lt;ol start=&#34;2&#34;&gt;
&lt;li&gt;网关：&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;规定路由通告必须使用 fe80 开头的本地地址来发送路由通告，只要路由存活时间不为 0，那么下面的设备就可以使用这个地址当做默认路由。&lt;/p&gt;
&lt;ol start=&#34;2&#34;&gt;
&lt;li&gt;DNS&lt;/li&gt;
&lt;/ol&gt;
&lt;ul&gt;
&lt;li&gt;使用&lt;code&gt;rdnss option&lt;/code&gt;来配置 DNS。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Windows 在大概 1709 这个版本之后支持&lt;code&gt;rdnss&lt;/code&gt;了，其他系统应该都支持吧？&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;使用&lt;code&gt;dnssl option&lt;/code&gt;来配置 DNS 搜索域。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;这个感觉意义不大，因为使用 DHCPv6 才会解析主机名.lan，这个使用 DHCPv4 已经足够了。&lt;/p&gt;
&lt;p&gt;不过注意不要设置成.local，因为 mDNS 会使用这个域名导致冲突，而 mDNS 会自动发现的。&lt;/p&gt;
&lt;p&gt;如果你有/60 的前缀，可以在高级设置里面填写 IPv6 分配提示，4 位正好可以填一位 16 进制数，&lt;code&gt;0-f&lt;/code&gt;，以此类推/56 可以填两位，从而划分多个 IPv6 子网。&lt;/p&gt;
&lt;p&gt;像我就是填了&lt;code&gt;a&lt;/code&gt;。&lt;/p&gt;

&lt;h4 class=&#34;relative group&#34;&gt;使用 DHCPv6
    &lt;div id=&#34;使用-dhcpv6&#34; class=&#34;anchor&#34;&gt;&lt;/div&gt;
    
    &lt;span
        class=&#34;absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none&#34;&gt;
        &lt;a class=&#34;text-primary-300 dark:text-neutral-700 !no-underline&#34; href=&#34;#%e4%bd%bf%e7%94%a8-dhcpv6&#34; aria-label=&#34;锚点&#34;&gt;#&lt;/a&gt;
    &lt;/span&gt;
    
&lt;/h4&gt;
&lt;p&gt;如果设备比较老，可能还是得开启 DHCPv6，办法就是把 DHCPv6 服务设置成服务器模式。&lt;/p&gt;
&lt;p&gt;这时候就可以在 RA 设置里面的 RA 标记开启几个选项，让设备使用 DHCPv6 服务，这里配置项目已经讲解得很明白，我就不多说了，直接贴上来：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;RA 标记
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;受管配置 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;M&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;受管地址配置 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;M&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; 标记表明可以通过 DHCPv6 获取 IPv6 地址。
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;其他配置 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;O&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;其他配置 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;O&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; 标记表明其他信息，如 DNS 服务器，可以通过 DHCPv6 获得。
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;移动家乡代理 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;H&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;移动 IPv6 家乡代理 &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;H&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; 标记表明该设备在此链路上还充当移动 IPv6 家乡代理。
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;DHCPv6 还可以配置别的一大堆东西，比如 NTP 之类的，但是 v4 已经干了这一堆了，我觉得除非 v4 被完全替代，否则现阶段完全没有理由用。&lt;/p&gt;

&lt;h3 class=&#34;relative group&#34;&gt;NPTv6/NAPTv6
    &lt;div id=&#34;nptv6naptv6&#34; class=&#34;anchor&#34;&gt;&lt;/div&gt;
    
    &lt;span
        class=&#34;absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none&#34;&gt;
        &lt;a class=&#34;text-primary-300 dark:text-neutral-700 !no-underline&#34; href=&#34;#nptv6naptv6&#34; aria-label=&#34;锚点&#34;&gt;#&lt;/a&gt;
    &lt;/span&gt;
    
&lt;/h3&gt;
&lt;p&gt;如果有多条宽带并且都有 PD，你可以内网分配一个 ULA 地址，然后在路由的时候进行前缀转换，这也是我们学校社团网络的做法。这种办法对于性能要求的不高，本身也算符合 IPv6 的实践。&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;但是如果你只能通过 DHCPv6 配到一个/128 的地址，那就没办法了，直接用动态地址伪装（masquerade）吧，一般的路由器都不会有硬件加速，所以网速不太行，但是如果是 IPv6 刚需也没有别的办法了。&lt;/p&gt;
&lt;p&gt;我有点懒得写了，想用的可以参考&lt;a
  href=&#34;https://blog.creedowl.com/posts/ipv6_and_nat6_in_nuaa/&#34;
    target=&#34;_blank&#34;
  &gt;南航校园网 OpenWRT 配置 IPv6 NAT6&lt;/a&gt;，我自己在学校里面配的过程已经忘记了，不过跟这个应该大差不差。&lt;/p&gt;

&lt;h3 class=&#34;relative group&#34;&gt;邻居协议
    &lt;div id=&#34;邻居协议&#34; class=&#34;anchor&#34;&gt;&lt;/div&gt;
    
    &lt;span
        class=&#34;absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none&#34;&gt;
        &lt;a class=&#34;text-primary-300 dark:text-neutral-700 !no-underline&#34; href=&#34;#%e9%82%bb%e5%b1%85%e5%8d%8f%e8%ae%ae&#34; aria-label=&#34;锚点&#34;&gt;#&lt;/a&gt;
    &lt;/span&gt;
    
&lt;/h3&gt;
&lt;p&gt;IPv6 相比 v4 的 b 就是不同，就是邻居协议取代 ARP，RA 实现了 DHCP 的基本功能。&lt;/p&gt;
&lt;p&gt;路由器和客户端使用 NS（Neighbour Solicitation）和 NA（Neighbour Advertisement）来检测地址冲突，探测别的设备。&lt;/p&gt;
&lt;p&gt;一个 SLAAC 的过程具体是这样：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;连接到网络，先生成一个地址，用&lt;code&gt;::&lt;/code&gt;发送到这个地址，看自己生成的&lt;code&gt;fe80::/16&lt;/code&gt;有没有冲突，没有就使用。&lt;/li&gt;
&lt;li&gt;向&lt;code&gt;ff02::&lt;/code&gt;发送 RS，寻找路由器。&lt;/li&gt;
&lt;li&gt;路由器默认会每隔几分钟发送 RA，接收到 RS 后，会尽快回复 RA 消息。&lt;/li&gt;
&lt;li&gt;客户端自己生成一个全球唯一的可路由地址，然后再看有没有冲突，没冲突就开始使用这个地址上网。&lt;/li&gt;
&lt;/ol&gt;

&lt;h2 class=&#34;relative group&#34;&gt;VLAN 划分
    &lt;div id=&#34;vlan-划分&#34; class=&#34;anchor&#34;&gt;&lt;/div&gt;
    
    &lt;span
        class=&#34;absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none&#34;&gt;
        &lt;a class=&#34;text-primary-300 dark:text-neutral-700 !no-underline&#34; href=&#34;#vlan-%e5%88%92%e5%88%86&#34; aria-label=&#34;锚点&#34;&gt;#&lt;/a&gt;
    &lt;/span&gt;
    
&lt;/h2&gt;
&lt;p&gt;出于管理需要，我决定在路由器上面划分 VLAN 了，不过我其实并没有另一台 VLAN 的交换机，所以说并不是满血的 VLAN。同时由于是新手，对于 VLAN 的理解肯定有不到位之处，请多包涵。&lt;/p&gt;

&lt;h3 class=&#34;relative group&#34;&gt;简单的概念
    &lt;div id=&#34;简单的概念&#34; class=&#34;anchor&#34;&gt;&lt;/div&gt;
    
    &lt;span
        class=&#34;absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none&#34;&gt;
        &lt;a class=&#34;text-primary-300 dark:text-neutral-700 !no-underline&#34; href=&#34;#%e7%ae%80%e5%8d%95%e7%9a%84%e6%a6%82%e5%bf%b5&#34; aria-label=&#34;锚点&#34;&gt;#&lt;/a&gt;
    &lt;/span&gt;
    
&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;trunk：在这个通道上面跑的是打上不同 ID 的 VLAN。&lt;/li&gt;
&lt;li&gt;access：某个端口，一般来说一个端口只分配给一个 VLAN ID。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;在某个端口上面，选择了 VLAN ID，有不同的标志可以分配：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;不属于：这个 VLAN 不分配到这个端口。&lt;/li&gt;
&lt;li&gt;tagged：通过这个端口的数据包，都会被打上这个 VLAN 的 ID。&lt;/li&gt;
&lt;li&gt;untagged：通过这个端口的数据包，如果有 VLAN ID，将会被删除掉。&lt;/li&gt;
&lt;li&gt;是主 VLAN：如果从这个接口进来的数据包没有任何标记，就认为他是这个 VLAN ID 的。&lt;/li&gt;
&lt;/ul&gt;

&lt;h3 class=&#34;relative group&#34;&gt;划分
    &lt;div id=&#34;划分&#34; class=&#34;anchor&#34;&gt;&lt;/div&gt;
    
    &lt;span
        class=&#34;absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none&#34;&gt;
        &lt;a class=&#34;text-primary-300 dark:text-neutral-700 !no-underline&#34; href=&#34;#%e5%88%92%e5%88%86&#34; aria-label=&#34;锚点&#34;&gt;#&lt;/a&gt;
    &lt;/span&gt;
    
&lt;/h3&gt;
&lt;p&gt;我的想法是，&lt;code&gt;.1&lt;/code&gt;的网段分配给熟悉的设备上网，&lt;code&gt;.2&lt;/code&gt;的网段分配给物联网设备，&lt;code&gt;.3&lt;/code&gt;的网段分配给访客网络。&lt;/p&gt;
&lt;p&gt;所以我在设备上的&lt;code&gt;br-lan&lt;/code&gt;的网桥 VLAN 过滤是这么配置的：&lt;/p&gt;
&lt;p&gt;&lt;figure&gt;&lt;img
    class=&#34;my-0 rounded-md&#34;
    loading=&#34;lazy&#34;
    decoding=&#34;async&#34;
    fetchpriority=&#34;auto&#34;
    alt=&#34;VLAN Settings&#34;
    width=&#34;1579&#34;
    height=&#34;954&#34;
    src=&#34;https://blog.texsd.eu.org/posts/immortalwrt-1-ipv6-vlan/image_hu_ea4d2fcd69c212ee.webp&#34;
    srcset=&#34;https://blog.texsd.eu.org/posts/immortalwrt-1-ipv6-vlan/image_hu_ea4d2fcd69c212ee.webp 800w, https://blog.texsd.eu.org/posts/immortalwrt-1-ipv6-vlan/image_hu_978147032300a369.webp 1280w&#34;
    sizes=&#34;(min-width: 768px) 50vw, 65vw&#34;
    data-zoom-src=&#34;https://blog.texsd.eu.org/posts/immortalwrt-1-ipv6-vlan/image.webp&#34;&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;这个本地指的是路由器的 CPU 可以识别这个 VLAN 的内容，从而对它进行设置 DHCP 服务器之类的操作。&lt;/p&gt;
&lt;p&gt;路由器有三个口，我全部分配给了 VLAN1，同时设置为主 VLAN 接口（显示为*），这是因为我大概不会在这上面接物联网设备（因为都是 2.4G 的设备）和插入访客的网线。&lt;/p&gt;
&lt;p&gt;这时候在接口里面就可以看到这些虚拟的 VLAN 设备了，为它们设置 DHCP 服务器，防火墙，保存。&lt;/p&gt;
&lt;p&gt;在无线里面，可以创建很多个同频段的 SSID（不会有人才知道吧），但是信道是一样的，接口配置里面可以选择关联的网络，这里选上你设置防火墙的接口，这时候通过这个 SSID 收到的数据就会自动地被交换机打上 VLAN ID 了。&lt;/p&gt;
&lt;p&gt;在防火墙里面可以做更加细致的管理，比如使用&lt;code&gt;conntrack&lt;/code&gt;，只允许 LAN 区段的设备主动发起到 IOT 设备的连接，隔离访客网络和信任网络的区段，非常灵活。&lt;/p&gt;
&lt;p&gt;这时原有配置使用&lt;code&gt;br-lan&lt;/code&gt;的应用，记得修改为&lt;code&gt;br-lan.1&lt;/code&gt;。&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;这里有一个我刚开始不明白的问题：
外部网络根本不识别 VLAN ID，那么转发到 WAN 的流量为什么会自动把 VLAN 头给去掉呢？&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;其实不是主动去掉的，因为 VLAN 是二层的东西，路由（三层）和 VLAN 是两个相对独立的过程，跨局域网的时候需要换二层封装，所以 VLAN ID 自然没有了。&lt;/p&gt;
</description>
      
    </item>
    
    <item>
      <title>中国移动 RAX3000Me USB3.0 版折腾小记</title>
      <link>https://blog.texsd.eu.org/posts/flashing_cmcc_rax3000me_usb/</link>
      <pubDate>Sat, 12 Jul 2025 13:47:15 +0800</pubDate>
      
      <guid>https://blog.texsd.eu.org/posts/flashing_cmcc_rax3000me_usb/</guid>
      <description>
&lt;h2 class=&#34;relative group&#34;&gt;前言
    &lt;div id=&#34;前言&#34; class=&#34;anchor&#34;&gt;&lt;/div&gt;
    
    &lt;span
        class=&#34;absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none&#34;&gt;
        &lt;a class=&#34;text-primary-300 dark:text-neutral-700 !no-underline&#34; href=&#34;#%e5%89%8d%e8%a8%80&#34; aria-label=&#34;锚点&#34;&gt;#&lt;/a&gt;
    &lt;/span&gt;
    
&lt;/h2&gt;
&lt;p&gt;这几天在闲鱼蹲路由器，终于让我蹲到了一台 65 的 RAX3000Me，遂开始折腾。&lt;/p&gt;
&lt;p&gt;买之前看了下恩山发现可以免拆，无非就是导出导入配置文件破解 ssh 呗，但是到手之后，发现我大意了。&lt;/p&gt;
&lt;p&gt;这台没法按照&lt;cite&gt;标准流程&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt;&lt;/cite&gt;破解密码，通过爬帖得知，无法导出配置的自己的加密都存在问题，没办法免拆。&lt;/p&gt;
&lt;p&gt;那？！CH340，启动！&lt;/p&gt;

&lt;h2 class=&#34;relative group&#34;&gt;刷写教程
    &lt;div id=&#34;刷写教程&#34; class=&#34;anchor&#34;&gt;&lt;/div&gt;
    
    &lt;span
        class=&#34;absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none&#34;&gt;
        &lt;a class=&#34;text-primary-300 dark:text-neutral-700 !no-underline&#34; href=&#34;#%e5%88%b7%e5%86%99%e6%95%99%e7%a8%8b&#34; aria-label=&#34;锚点&#34;&gt;#&lt;/a&gt;
    &lt;/span&gt;
    
&lt;/h2&gt;
&lt;p&gt;教程大部分都是参考这篇文章，在此感谢。&lt;/p&gt;
&lt;p&gt;&lt;a
  href=&#34;https://www.right.com.cn/forum/thread-8408539-1-1.html&#34;
    target=&#34;_blank&#34;
  &gt;CMCC RAX3000Me 可通过 mtk_uartboot 启动刷机，拆机刷 OpenWRT/ImmortalWRT 无障碍！&lt;/a&gt;&lt;/p&gt;

&lt;h3 class=&#34;relative group&#34;&gt;拆机
    &lt;div id=&#34;拆机&#34; class=&#34;anchor&#34;&gt;&lt;/div&gt;
    
    &lt;span
        class=&#34;absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none&#34;&gt;
        &lt;a class=&#34;text-primary-300 dark:text-neutral-700 !no-underline&#34; href=&#34;#%e6%8b%86%e6%9c%ba&#34; aria-label=&#34;锚点&#34;&gt;#&lt;/a&gt;
    &lt;/span&gt;
    
&lt;/h3&gt;
&lt;p&gt;先把贴纸撕下来，拧下两颗螺丝。&lt;/p&gt;
&lt;p&gt;左手握着长边，右手握着短边，像这样：&lt;/p&gt;
&lt;p&gt;&lt;figure&gt;&lt;img
    class=&#34;my-0 rounded-md&#34;
    loading=&#34;lazy&#34;
    decoding=&#34;async&#34;
    fetchpriority=&#34;auto&#34;
    alt=&#34;操作手法&#34;
    width=&#34;1039&#34;
    height=&#34;841&#34;
    src=&#34;https://blog.texsd.eu.org/posts/flashing_cmcc_rax3000me_usb/image-3_hu_72df38cb10784c8c.webp&#34;
    srcset=&#34;https://blog.texsd.eu.org/posts/flashing_cmcc_rax3000me_usb/image-3_hu_72df38cb10784c8c.webp 800w, https://blog.texsd.eu.org/posts/flashing_cmcc_rax3000me_usb/image-3.webp 1280w&#34;
    sizes=&#34;(min-width: 768px) 50vw, 65vw&#34;
    data-zoom-src=&#34;https://blog.texsd.eu.org/posts/flashing_cmcc_rax3000me_usb/image-3.webp&#34;&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;用力往下掰，会出现一条缝，用薄点的拆机片或者卡片撬开，小心别把卡扣弄断了。&lt;/p&gt;
&lt;p&gt;拧下 5 颗螺丝，卸下散热片，上面涂有硅脂，要稍微移动一下散热片才好下来，装回去的时候得重新涂一下。&lt;/p&gt;
&lt;p&gt;（其实不卸下也行，但是我探针就太难插了）&lt;/p&gt;
&lt;p&gt;推一下下面和右边的卡扣，把主板撬出来，小心不要弄断天线连接处了。&lt;/p&gt;
&lt;p&gt;你会看到这样：&lt;/p&gt;
&lt;p&gt;&lt;figure&gt;&lt;img
    class=&#34;my-0 rounded-md&#34;
    loading=&#34;lazy&#34;
    decoding=&#34;async&#34;
    fetchpriority=&#34;auto&#34;
    alt=&#34;拆机图&#34;
    width=&#34;1736&#34;
    height=&#34;923&#34;
    src=&#34;https://blog.texsd.eu.org/posts/flashing_cmcc_rax3000me_usb/image_hu_850f85c7558569ba.webp&#34;
    srcset=&#34;https://blog.texsd.eu.org/posts/flashing_cmcc_rax3000me_usb/image_hu_850f85c7558569ba.webp 800w, https://blog.texsd.eu.org/posts/flashing_cmcc_rax3000me_usb/image_hu_a0bc269f80f97c3e.webp 1280w&#34;
    sizes=&#34;(min-width: 768px) 50vw, 65vw&#34;
    data-zoom-src=&#34;https://blog.texsd.eu.org/posts/flashing_cmcc_rax3000me_usb/image.webp&#34;&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;电源线左边，分别是&lt;code&gt;GND&lt;/code&gt; &lt;code&gt;TX&lt;/code&gt; &lt;code&gt;3.3v&lt;/code&gt; &lt;code&gt;RX&lt;/code&gt;。&lt;/p&gt;

&lt;h3 class=&#34;relative group&#34;&gt;文件准备
    &lt;div id=&#34;文件准备&#34; class=&#34;anchor&#34;&gt;&lt;/div&gt;
    
    &lt;span
        class=&#34;absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none&#34;&gt;
        &lt;a class=&#34;text-primary-300 dark:text-neutral-700 !no-underline&#34; href=&#34;#%e6%96%87%e4%bb%b6%e5%87%86%e5%a4%87&#34; aria-label=&#34;锚点&#34;&gt;#&lt;/a&gt;
    &lt;/span&gt;
    
&lt;/h3&gt;
&lt;p&gt;准备好这些东西：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;❯ ls -lah
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;总计 2.3M
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;drwxr-xr-x &lt;span class=&#34;m&#34;&gt;1&lt;/span&gt; texsd texsd  &lt;span class=&#34;m&#34;&gt;148&lt;/span&gt;  7月19日 14:11 .
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;drwx------ &lt;span class=&#34;m&#34;&gt;1&lt;/span&gt; texsd texsd 1.3K  7月18日 21:58 ..
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;-rw-r--r-- &lt;span class=&#34;m&#34;&gt;1&lt;/span&gt; texsd texsd 248K  7月14日 18:10 mt7981-cmcc_rax3000me-nand-ddr3-fip-fit.bin
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;-rwxrwxr-x &lt;span class=&#34;m&#34;&gt;1&lt;/span&gt; texsd texsd 206K 2024年 2月 2日 mt7981-ddr3-bl2.bin
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;-rwxr-xr-x &lt;span class=&#34;m&#34;&gt;1&lt;/span&gt; texsd texsd 1.9M 2024年 3月 2日 mtk_uartboot
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;a
  href=&#34;https://www.right.com.cn/forum/thread-8400306-1-1.html&#34;
    target=&#34;_blank&#34;
  &gt;天灵的 U-Boot&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a
  href=&#34;https://www.lanzouw.com/ioTYu1pvi23g&#34;
    target=&#34;_blank&#34;
  &gt;bl2&lt;/a&gt; &lt;cite&gt;（预构建，也可自行编译）&lt;sup id=&#34;fnref:2&#34;&gt;&lt;a href=&#34;#fn:2&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;2&lt;/a&gt;&lt;/sup&gt;&lt;/cite&gt;&lt;/p&gt;
&lt;p&gt;&lt;a
  href=&#34;https://github.com/981213/mtk_uartboot/releases/tag/v0.1.1&#34;
    target=&#34;_blank&#34;
  &gt;mtk_uartboot&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;打开你的&lt;code&gt;shell&lt;/code&gt;，&lt;code&gt;cd&lt;/code&gt;到此文件夹，连接你的 CH340，你应该能在设备管理器看到对应的串口。我是&lt;code&gt;/dev/ttyUSB0&lt;/code&gt;，如果你使用 Windows，一般是&lt;code&gt;COMX&lt;/code&gt;，请自行替换。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;./mtk_uartboot -s /dev/ttyUSB0 -p ./mt7981-ddr3-bl2.bin -f mt7981-cmcc_rax3000me-nand-ddr3-fip-fit.bin --brom-load-baudrate &lt;span class=&#34;m&#34;&gt;115200&lt;/span&gt; --bl2-load-baudrate &lt;span class=&#34;m&#34;&gt;115200&lt;/span&gt; -a
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;blockquote&gt;
&lt;p&gt;这里要记得加&lt;code&gt;-a&lt;/code&gt;，否则可能识别成 aarch32 导致超时。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;这时候应该会提示：&lt;/p&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;mtk_uartboot - 0.1.1
Using serial port: /dev/ttyUSB0
Handshake...
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;准备完成！&lt;/p&gt;

&lt;h3 class=&#34;relative group&#34;&gt;刷入 UBOOT
    &lt;div id=&#34;刷入-uboot&#34; class=&#34;anchor&#34;&gt;&lt;/div&gt;
    
    &lt;span
        class=&#34;absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none&#34;&gt;
        &lt;a class=&#34;text-primary-300 dark:text-neutral-700 !no-underline&#34; href=&#34;#%e5%88%b7%e5%85%a5-uboot&#34; aria-label=&#34;锚点&#34;&gt;#&lt;/a&gt;
    &lt;/span&gt;
    
&lt;/h3&gt;
&lt;p&gt;把你的 CH340 插上线，用杜邦线什么的都行，但是最好有带弹簧的测试探针，这是我的工具：&lt;/p&gt;
&lt;p&gt;&lt;figure&gt;&lt;img
    class=&#34;my-0 rounded-md&#34;
    loading=&#34;lazy&#34;
    decoding=&#34;async&#34;
    fetchpriority=&#34;auto&#34;
    alt=&#34;CH340&#34;
    width=&#34;1681&#34;
    height=&#34;1015&#34;
    src=&#34;https://blog.texsd.eu.org/posts/flashing_cmcc_rax3000me_usb/image-2_hu_d8edd934ec3918e7.webp&#34;
    srcset=&#34;https://blog.texsd.eu.org/posts/flashing_cmcc_rax3000me_usb/image-2_hu_d8edd934ec3918e7.webp 800w, https://blog.texsd.eu.org/posts/flashing_cmcc_rax3000me_usb/image-2_hu_2b0be9a9ae98c7f9.webp 1280w&#34;
    sizes=&#34;(min-width: 768px) 50vw, 65vw&#34;
    data-zoom-src=&#34;https://blog.texsd.eu.org/posts/flashing_cmcc_rax3000me_usb/image-2.webp&#34;&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;找出 CH340 的&lt;code&gt;GND&lt;/code&gt; &lt;code&gt;RX&lt;/code&gt; &lt;code&gt;TX&lt;/code&gt;，从左往右依次按上主板的触点（不用接 3.3v），这时候右手还可以操作电脑。&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;如果你不确定是否插好，可以退出 mtk_uartboot，打开任意串口工具并连接，直接插电启动，应该能看到调试信息。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;确认插好了，就直接上电，大概 30 秒左右，mtk_uartboot 输出以下内容并交还 shell：&lt;/p&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;mtk_uartboot - 0.1.1
Using serial port: /dev/ttyUSB0
Handshake...
hw code: 0x7981
hw sub code: 0x8a00
hw ver: 0xca00
sw ver: 0x1
Baud rate set to 115200
sending payload to 0x201000...
Checksum: 0x55cf
Setting baudrate back to 115200
Jumping to 0x201000 in aarch64...
Waiting for BL2. Message below:
==================================
NOTICE:  BL2: v2.10.0   (release):v2.4-rc0-5845-gbacca82a8-dirty
NOTICE:  BL2: Built : 20:18:08, Feb  2 2024
NOTICE:  WDT: Cold boot
NOTICE:  WDT: disabled
NOTICE:  EMI: Using DDR3 settings
NOTICE:  EMI: Detected DRAM size: 512MB
NOTICE:  EMI: complex R/W mem test passed
NOTICE:  CPU: MT7981 (1300MHz)
NOTICE:  Starting UART download handshake ...
==================================
BL2 UART DL version: 0x10
Baudrate set to: 115200
FIP sent.
==================================
NOTICE:  Received FIP 0x3df58 @ 0x40400000 ...
==================================
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;然后路由器就会亮起蓝灯（正常进官方系统没联网是红灯），网线插 LAN 口连到电脑，输入&lt;code&gt;192.168.1.1/uboot.html&lt;/code&gt;，上传之前下载的 uboot。&lt;/p&gt;

&lt;h4 class=&#34;relative group&#34;&gt;一些问题
    &lt;div id=&#34;一些问题&#34; class=&#34;anchor&#34;&gt;&lt;/div&gt;
    
    &lt;span
        class=&#34;absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none&#34;&gt;
        &lt;a class=&#34;text-primary-300 dark:text-neutral-700 !no-underline&#34; href=&#34;#%e4%b8%80%e4%ba%9b%e9%97%ae%e9%a2%98&#34; aria-label=&#34;锚点&#34;&gt;#&lt;/a&gt;
    &lt;/span&gt;
    
&lt;/h4&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;code&gt;mtk_uartboot&lt;/code&gt;异常退出，提示 coredump&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;这大概率是连接不好/接上了 3.3v。建议不要接 3.3v，否则每次连上都会导致 CH340 断开连接。&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;无论怎么尝试，总是提示&lt;code&gt;Timeout waiting for specified message.&lt;/code&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;有下面两种情况：&lt;/p&gt;
&lt;p&gt;第一种：没有加&lt;code&gt;-d&lt;/code&gt;参数。&lt;/p&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;Jumping to 0x201000 in aarch32...
Waiting for BL2. Message below:
==================================
==================================
Timeout waiting for specified message.
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;这就是默认使用了&lt;code&gt;aarch32&lt;/code&gt;，请严格按照上面的命令执行！&lt;/p&gt;
&lt;p&gt;第二种：没识别出内存。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;==================================&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;NOTICE:  BL2: v2.10.0   &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;release&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;:v2.4-rc0-5845-gbacca82a8-dirty
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;NOTICE:  BL2: Built : 20:20:25, Feb  &lt;span class=&#34;m&#34;&gt;2&lt;/span&gt; &lt;span class=&#34;m&#34;&gt;2024&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;NOTICE:  WDT: Cold boot
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;NOTICE:  WDT: disabled
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;NOTICE:  EMI: Using DDR4 settings
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;NOTICE:  EMI: Detected DRAM size: &lt;span class=&#34;nv&#34;&gt;0MB&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;==================================&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;你的 bl2 用错了，请确认你的 ddr 类型，或者尝试另外一种 ddr 类型。&lt;/p&gt;
&lt;p&gt;第三种：是&lt;code&gt;aarch64&lt;/code&gt;，但是没有输出。&lt;/p&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;Jumping to 0x201000 in aarch64...
Waiting for BL2. Message below:
==================================
==================================
Timeout waiting for specified message.
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;可能是以下情况：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;自己编译的 bl2 没成功。&lt;/li&gt;
&lt;li&gt;下载中出现损坏。&lt;/li&gt;
&lt;li&gt;使用了 immortalwrt 官方的 preloader，此文件我试了很多次都没成功，原因未知。&lt;/li&gt;
&lt;/ol&gt;

&lt;h3 class=&#34;relative group&#34;&gt;刷入固件
    &lt;div id=&#34;刷入固件&#34; class=&#34;anchor&#34;&gt;&lt;/div&gt;
    
    &lt;span
        class=&#34;absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none&#34;&gt;
        &lt;a class=&#34;text-primary-300 dark:text-neutral-700 !no-underline&#34; href=&#34;#%e5%88%b7%e5%85%a5%e5%9b%ba%e4%bb%b6&#34; aria-label=&#34;锚点&#34;&gt;#&lt;/a&gt;
    &lt;/span&gt;
    
&lt;/h3&gt;

&lt;h4 class=&#34;relative group&#34;&gt;新版固件
    &lt;div id=&#34;新版固件&#34; class=&#34;anchor&#34;&gt;&lt;/div&gt;
    
    &lt;span
        class=&#34;absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none&#34;&gt;
        &lt;a class=&#34;text-primary-300 dark:text-neutral-700 !no-underline&#34; href=&#34;#%e6%96%b0%e7%89%88%e5%9b%ba%e4%bb%b6&#34; aria-label=&#34;锚点&#34;&gt;#&lt;/a&gt;
    &lt;/span&gt;
    
&lt;/h4&gt;
&lt;p&gt;新版的&lt;code&gt;immortalwrt&lt;/code&gt;（23.05 和我打算用的 24.10）已经在使用一种新的镜像文件&lt;code&gt;*.itb&lt;/code&gt;，这个镜像同时包含&lt;code&gt;dtb&lt;/code&gt; &lt;code&gt;ramdisk&lt;/code&gt; &lt;code&gt;kernel&lt;/code&gt;。想要详细了解的可以参考&lt;a
  href=&#34;http://www.wowotech.net/u-boot/fit_image_overview.html&#34;
    target=&#34;_blank&#34;
  &gt;u-boot FIT image 介绍&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;直接刷入&lt;code&gt;sysupgrade&lt;/code&gt;的&lt;code&gt;itb&lt;/code&gt;可能会出现不成功的情况，表现为一直闪蓝灯，这里我们需要先刷入&lt;code&gt;initramfs&lt;/code&gt;的&lt;code&gt;itb&lt;/code&gt;，重启进入系统之后，再刷入对应的&lt;code&gt;sysupgrade&lt;/code&gt;镜像。&lt;/p&gt;
&lt;p&gt;请注意&lt;code&gt;uboot&lt;/code&gt;版本可能与固件版本相关，经过测试天灵 25 年 3 月编译的&lt;code&gt;uboot&lt;/code&gt;是可以使用我上面的方法刷入 237 固件。&lt;/p&gt;
&lt;p&gt;&lt;a
  href=&#34;https://github.com/padavanonly/immortalwrt-mt798x-6.6&#34;
    target=&#34;_blank&#34;
  &gt;padavanonly/immortalwrt-mt798x-6.6&lt;/a&gt;&lt;/p&gt;

&lt;h4 class=&#34;relative group&#34;&gt;旧版固件
    &lt;div id=&#34;旧版固件&#34; class=&#34;anchor&#34;&gt;&lt;/div&gt;
    
    &lt;span
        class=&#34;absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none&#34;&gt;
        &lt;a class=&#34;text-primary-300 dark:text-neutral-700 !no-underline&#34; href=&#34;#%e6%97%a7%e7%89%88%e5%9b%ba%e4%bb%b6&#34; aria-label=&#34;锚点&#34;&gt;#&lt;/a&gt;
    &lt;/span&gt;
    
&lt;/h4&gt;
&lt;p&gt;如果你想使用原汁原味的&lt;a
  href=&#34;https://cmi.hanwckf.top/p/immortalwrt-mt798x/&#34;
    target=&#34;_blank&#34;
  &gt;immortalwrt-mt798x&lt;/a&gt;，你可能得使用原版的 hanwckf 的&lt;code&gt;uboot&lt;/code&gt;，这个版本没有&lt;code&gt;dhcp&lt;/code&gt;需要手动设置静态地址。建议使用 24.11 的版本，因为尝试了 22 年的版本发现不认复旦微的这颗 NAND，导致&lt;code&gt;uboot&lt;/code&gt;无法启动，只能使用 CH340 重新刷一遍。&lt;/p&gt;
&lt;p&gt;而且，使用最新源码编译出来会导致 wifi 设置中缺少加密方式的问题，此问题亦有在 issues 里面提及，但感觉修复的可能性不大。&lt;/p&gt;

&lt;h2 class=&#34;relative group&#34;&gt;参考
    &lt;div id=&#34;参考&#34; class=&#34;anchor&#34;&gt;&lt;/div&gt;
    
    &lt;span
        class=&#34;absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none&#34;&gt;
        &lt;a class=&#34;text-primary-300 dark:text-neutral-700 !no-underline&#34; href=&#34;#%e5%8f%82%e8%80%83&#34; aria-label=&#34;锚点&#34;&gt;#&lt;/a&gt;
    &lt;/span&gt;
    
&lt;/h2&gt;
&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;
&lt;hr&gt;
&lt;ol&gt;
&lt;li id=&#34;fn:1&#34;&gt;
&lt;p&gt;&lt;a
  href=&#34;https://github.com/Daniel-Hwang/RAX3000Me&#34;
    target=&#34;_blank&#34;
  &gt;Daniel-Hwang/RAX3000Me: RAX3000Me 路由器开发与固件刷入详细教程&lt;/a&gt;&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&#34;fn:2&#34;&gt;
&lt;p&gt;&lt;a
  href=&#34;https://www.cnblogs.com/p123/p/18046679&#34;
    target=&#34;_blank&#34;
  &gt;MediaTek Filogic 系列路由器串口救砖教程 - 暗云 - 博客园&lt;/a&gt;&amp;#160;&lt;a href=&#34;#fnref:2&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;
</description>
      
    </item>
    
  </channel>
</rss>
