<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>NAS on aloneowo's blog</title><link>https://blog.hatsune01.de/tags/nas/</link><description>Recent content in NAS on aloneowo's blog</description><generator>Hugo -- gohugo.io</generator><language>zh-cn</language><lastBuildDate>Tue, 07 Apr 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://blog.hatsune01.de/tags/nas/index.xml" rel="self" type="application/rss+xml"/><item><title>lucky+easytier构建个人内网环境</title><link>https://blog.hatsune01.de/p/lucky-easytier%E6%9E%84%E5%BB%BA%E4%B8%AA%E4%BA%BA%E5%86%85%E7%BD%91%E7%8E%AF%E5%A2%83/</link><pubDate>Tue, 07 Apr 2026 00:00:00 +0000</pubDate><guid>https://blog.hatsune01.de/p/lucky-easytier%E6%9E%84%E5%BB%BA%E4%B8%AA%E4%BA%BA%E5%86%85%E7%BD%91%E7%8E%AF%E5%A2%83/</guid><description>&lt;h1 id="搭建一个个人的内网环境"&gt;&lt;a href="#%e6%90%ad%e5%bb%ba%e4%b8%80%e4%b8%aa%e4%b8%aa%e4%ba%ba%e7%9a%84%e5%86%85%e7%bd%91%e7%8e%af%e5%a2%83" class="header-anchor"&gt;&lt;/a&gt;搭建一个个人的内网环境
&lt;/h1&gt;&lt;h2 id="前言"&gt;&lt;a href="#%e5%89%8d%e8%a8%80" class="header-anchor"&gt;&lt;/a&gt;前言
&lt;/h2&gt;&lt;details&gt;
 &lt;summary&gt;随口说几句&lt;/summary&gt;
 对于nas而言，网上大部分外网访问方案主要分为内网穿透和异地组网。我主要倾向于异地组网方案，个人认为更加的安全。由于我长期在学校里，学校的ap隔离非常恶心(tailscale打不通，是的，直接timeout)，并且我意外的测试出easytier能够打通连接，而且配置一个中转会更加稳定。而且不知什么原因似乎公共的服务器不是很稳定且大部分都不能中转流量，这个对无法p2p的时候非常灾难。所以我尝试做了可以脱离et公共体系的异地组网
&lt;/details&gt;
&lt;hr&gt;
&lt;p&gt;lucky可以实现在&lt;code&gt;nat1&lt;/code&gt;，&lt;code&gt;upnp&lt;/code&gt;或&lt;code&gt;nat-pmp&lt;/code&gt;的环境下打开公网端口；easytier负责异地组网&lt;/p&gt;
&lt;p&gt;实现这个方案，你需要：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;多台安装了easytier客户端的设备&lt;/li&gt;
&lt;li&gt;一台网络环境为&lt;code&gt;公网&lt;/code&gt;或者&lt;code&gt;nat1&lt;/code&gt;或者&lt;code&gt;上游开启了upnp且打通后为公网或nat1&lt;/code&gt;，24小时长期在线的设备，用于做中继服务器&lt;/li&gt;
&lt;li&gt;一个域名（可选）&lt;/li&gt;
&lt;li&gt;中继服务器上已安装好lucky（可选）&lt;/li&gt;
&lt;/ul&gt;

 &lt;blockquote&gt;
 &lt;p&gt;如果你的中继服务器为固定公网ip可以不需要域名，如果是动态的那么需要域名做ddns。如果是nat1或者是upnp环境那么安装lucky来穿透端口。个人建议如果公网是ipv6还是配一个域名比较好&lt;/p&gt;

 &lt;/blockquote&gt;

 &lt;blockquote&gt;
 &lt;p&gt;网络环境为公网可以不用检查网络环境和写穿透规则，直接tcp://ip:11010即可&lt;/p&gt;

 &lt;/blockquote&gt;
&lt;h2 id="检查网络环境"&gt;&lt;a href="#%e6%a3%80%e6%9f%a5%e7%bd%91%e7%bb%9c%e7%8e%af%e5%a2%83" class="header-anchor"&gt;&lt;/a&gt;检查网络环境
&lt;/h2&gt;&lt;p&gt;我们需要先检测设备的stun，首先我们打开lucky，点击 &lt;code&gt;内网穿透&lt;/code&gt;里面的&lt;code&gt;stun内网穿透&lt;/code&gt;
&lt;img alt="屏幕截图 2026-04-07 173609.png" loading="lazy" sizes="(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px" src="https://blog.hatsune01.de/images/posts/lucky-easytier-network/01.webp"&gt;
然后点&lt;code&gt;NAT类型检测&lt;/code&gt;
&lt;img alt="屏幕截图 2026-04-07 174124.png" loading="lazy" sizes="(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px" src="https://blog.hatsune01.de/images/posts/lucky-easytier-network/02.webp"&gt;
然后选多个服务器多测试几遍，这个有些服务器不是很准。如果大部分显示&lt;code&gt;NAT1&lt;/code&gt;那么就可以直接去写穿透规则了，否则需要在路由器开启&lt;code&gt;upnp&lt;/code&gt;和&lt;code&gt;nat-pmp&lt;/code&gt;后，在终端执行下面的指令&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt; 1
&lt;/span&gt;&lt;span class="lnt"&gt; 2
&lt;/span&gt;&lt;span class="lnt"&gt; 3
&lt;/span&gt;&lt;span class="lnt"&gt; 4
&lt;/span&gt;&lt;span class="lnt"&gt; 5
&lt;/span&gt;&lt;span class="lnt"&gt; 6
&lt;/span&gt;&lt;span class="lnt"&gt; 7
&lt;/span&gt;&lt;span class="lnt"&gt; 8
&lt;/span&gt;&lt;span class="lnt"&gt; 9
&lt;/span&gt;&lt;span class="lnt"&gt;10
&lt;/span&gt;&lt;span class="lnt"&gt;11
&lt;/span&gt;&lt;span class="lnt"&gt;12
&lt;/span&gt;&lt;span class="lnt"&gt;13
&lt;/span&gt;&lt;span class="lnt"&gt;14
&lt;/span&gt;&lt;span class="lnt"&gt;15
&lt;/span&gt;&lt;span class="lnt"&gt;16
&lt;/span&gt;&lt;span class="lnt"&gt;17
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-shell" data-lang="shell"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;sudo apt update &lt;span class="o"&gt;&amp;amp;&amp;amp;&lt;/span&gt; sudo apt install -y miniupnpc natpmpc &lt;span class="o"&gt;&amp;amp;&amp;amp;&lt;/span&gt; bash -lc &lt;span class="s1"&gt;&amp;#39;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="s1"&gt;echo &amp;#34;=== UPnP ===&amp;#34;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="s1"&gt;u=&amp;#34;$(upnpc -s 2&amp;gt;&amp;amp;1)&amp;#34;; echo &amp;#34;$u&amp;#34;; echo
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="s1"&gt;if printf &amp;#34;%s\n&amp;#34; &amp;#34;$u&amp;#34; | grep -Eq &amp;#34;Found valid IGD|ExternalIPAddress|External IP address&amp;#34;; then
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="s1"&gt; echo &amp;#34;[UPnP] Supported / Responding&amp;#34;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="s1"&gt;else
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="s1"&gt; echo &amp;#34;[UPnP] Not detected or disabled&amp;#34;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="s1"&gt;fi
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="s1"&gt;echo
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="s1"&gt;echo &amp;#34;=== NAT-PMP ===&amp;#34;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="s1"&gt;n=&amp;#34;$(natpmpc 2&amp;gt;&amp;amp;1)&amp;#34;; echo &amp;#34;$n&amp;#34;; echo
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="s1"&gt;if printf &amp;#34;%s\n&amp;#34; &amp;#34;$n&amp;#34; | grep -Eq &amp;#34;Public IP address|using gateway&amp;#34;; then
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="s1"&gt; echo &amp;#34;[NAT-PMP] Supported / Responding&amp;#34;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="s1"&gt;else
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="s1"&gt; echo &amp;#34;[NAT-PMP] Not detected or disabled&amp;#34;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="s1"&gt;fi
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="s1"&gt;&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;ul&gt;
&lt;li&gt;UPnP 成功：输出 &lt;code&gt;[UPnP] Supported / Responding&lt;/code&gt;，并伴随 &lt;code&gt;Found valid IGD&lt;/code&gt;、&lt;code&gt;ExternalIPAddress&lt;/code&gt; 之类内容&lt;/li&gt;
&lt;li&gt;UPnP 失败：输出 &lt;code&gt;[UPnP] Not detected or disabled&lt;/code&gt;，常见是 &lt;code&gt;No IGD UPnP Device found on the network&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;NAT-PMP 成功：输出 &lt;code&gt;[NAT-PMP] Supported / Responding&lt;/code&gt;，并伴随 &lt;code&gt;Public IP address&lt;/code&gt; 或 &lt;code&gt;using gateway&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;NAT-PMP 失败：输出 &lt;code&gt;[NAT-PMP] Not detected or disabled&lt;/code&gt;，常见是超时或 &lt;code&gt;readnatpmpresponseorretry returned ...&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;只要其中一个成功就可以写穿透规则了&lt;/p&gt;
&lt;h2 id="穿透规则"&gt;&lt;a href="#%e7%a9%bf%e9%80%8f%e8%a7%84%e5%88%99" class="header-anchor"&gt;&lt;/a&gt;穿透规则
&lt;/h2&gt;&lt;p&gt;先点&lt;code&gt;添加穿透规则&lt;/code&gt;，然后如下图配置
&lt;img alt="屏幕截图 2026-04-07 183324.png" loading="lazy" sizes="(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px" src="https://blog.hatsune01.de/images/posts/lucky-easytier-network/03.webp"&gt;
然后点&lt;code&gt;添加&lt;/code&gt;，可以重复操作来添加udp&lt;/p&gt;
&lt;p&gt;添加后等一会就能打通了&lt;/p&gt;

 &lt;blockquote&gt;
 &lt;p&gt;出于不知名的原因，我需要&lt;code&gt;禁用通道有效性检测&lt;/code&gt;，原因我不清楚，但是不禁用就会陷入lucky设计的重启规则的死循环，而且很奇怪的是通道是通的&lt;/p&gt;

 &lt;/blockquote&gt;

 &lt;blockquote&gt;
 &lt;p&gt;我是浙江联通，实测下来tcp连接成功率感人但是udp稳定，一般不都是udp不稳定但是tcp稳定吗&amp;hellip;&amp;hellip;&lt;/p&gt;

 &lt;/blockquote&gt;
&lt;h2 id="配置ddns"&gt;&lt;a href="#%e9%85%8d%e7%bd%aeddns" class="header-anchor"&gt;&lt;/a&gt;配置DDNS
&lt;/h2&gt;&lt;p&gt;由于我是动态ipv4和动态ipv6，而且我不喜欢填ip&lt;del&gt;就是懒😆&lt;/del&gt; ,所以我选择配置ddns。此处我使用托管在cloudflare的域名&lt;/p&gt;
&lt;p&gt;首先切换到&lt;code&gt;动态域名&lt;/code&gt;，再点击&lt;code&gt;添加任务&lt;/code&gt;，填写cf的用户key
&lt;img alt="屏幕截图 2026-04-07 185602.png" loading="lazy" sizes="(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px" src="https://blog.hatsune01.de/images/posts/lucky-easytier-network/04.webp"&gt;
启用&lt;code&gt;{ipv6Addr}&lt;/code&gt;和&lt;code&gt;{ipv4Addr}&lt;/code&gt;
&lt;img alt="屏幕截图 2026-04-07 185750.png" loading="lazy" sizes="(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px" src="https://blog.hatsune01.de/images/posts/lucky-easytier-network/05.webp"&gt;
然后写一个ipv6(AAAA)的同步记录，我建议用子域名，比如et1.example.com。备注随便写只要记得住就行。之后点添加任务&lt;/p&gt;
&lt;p&gt;然后添加一个txt记录
&lt;img alt="屏幕截图 2026-04-07 190339.png" loading="lazy" sizes="(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px" src="https://blog.hatsune01.de/images/posts/lucky-easytier-network/06.webp"&gt;
备注随便写，自己看的懂就行。记录名是之前的子域名，记录内容是&lt;code&gt;udp://{STUN_easytier_ADDR}&lt;/code&gt;&lt;/p&gt;

 &lt;blockquote&gt;
 &lt;p&gt;此处换tcp只要把udp换了就行。{STUN_easytier_ADDR}类似于环境变量，其中&lt;code&gt;easytier&lt;/code&gt;是穿透规则的规则名称，比如说写的名称是et那就写{STUN_et_ADDR}&lt;/p&gt;

 &lt;/blockquote&gt;

 &lt;blockquote&gt;
 &lt;p&gt;对于ios设备是不支持txt://协议的，所以说我们要换一个方案。我是直接在动态域名里面直接写A解析和AAAA解析的，然后用tcp://et1.example.com:11010和udp://et1.example.com:11010来连到中继服务器&lt;/p&gt;

 &lt;/blockquote&gt;
&lt;h2 id="创建easytier虚拟内网"&gt;&lt;a href="#%e5%88%9b%e5%bb%baeasytier%e8%99%9a%e6%8b%9f%e5%86%85%e7%bd%91" class="header-anchor"&gt;&lt;/a&gt;创建easytier虚拟内网
&lt;/h2&gt;&lt;p&gt;先登录到easytier控制台
&lt;img alt="屏幕截图 2026-04-07 193054.png" loading="lazy" sizes="(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px" src="https://blog.hatsune01.de/images/posts/lucky-easytier-network/07.webp"&gt;
登录成功后，点设备列表，应该会有一台设备，点击那个设备的设置（小齿轮），创建新网络
&lt;img alt="屏幕截图 2026-04-07 193932.png" loading="lazy" sizes="(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px" src="https://blog.hatsune01.de/images/posts/lucky-easytier-network/08.webp"&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;虚拟ipv4地址&lt;/code&gt;：关闭DHCP，填一个内网ip，比如说：192.168.66.1&lt;/li&gt;
&lt;li&gt;&lt;code&gt;网络名称&lt;/code&gt;,&lt;code&gt;网络密码&lt;/code&gt;：自己想一个，记住&lt;/li&gt;
&lt;li&gt;&lt;code&gt;网络方式&lt;/code&gt;：这个地方是写中继服务器的地址的，写txt://et.example.com&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;高级设置可以直接抄我的，主要是选&lt;code&gt;启用私有模式&lt;/code&gt;
&lt;img alt="屏幕截图 2026-04-07 194446.png" loading="lazy" sizes="(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px" src="https://blog.hatsune01.de/images/posts/lucky-easytier-network/09.webp"&gt;
然后按照这个格式改一下ip比如说192.168.66.2来配置其他设备就行了&lt;/p&gt;
&lt;h2 id="参考来源"&gt;&lt;a href="#%e5%8f%82%e8%80%83%e6%9d%a5%e6%ba%90" class="header-anchor"&gt;&lt;/a&gt;参考来源
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://www.bilibili.com/video/BV1RhZjBEE8k/" target="_blank" rel="noopener"
 &gt;你自己就有免费服务器！但是你自己不知道？（Bilibili）&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://ie12blog.36102025.xyz/articles/virtual-private-network/easytier-get-port-form-dns-record/#txt-%E8%AE%B0%E5%BD%95%E9%85%8D%E7%BD%AE%E6%96%B9%E6%B3%95" target="_blank" rel="noopener"
 &gt;「EasyTier」使用 SRV、TXT、HTTP 重定向获取对端 IP 端口（ie12sBlog）&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item></channel></rss>