Files
oneclickvirt.github.io/assets/guide_lxd_lxd_custom.md.2067a9f0.lean.js
2025-05-19 14:44:38 +00:00

81 lines
38 KiB
JavaScript
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
import{_ as s,v as a,b as e,R as n}from"./chunks/framework.70afa331.js";const t="/assets/lxd1.78537e30.png",l="/assets/lxd2.da10b5ec.png",p="/assets/lxd3.917f56de.png",o="/assets/lxd4.83a1a121.png",i="/assets/lxd5.4ebc1444.png",c="/assets/lxd6.572825bf.png",r="/assets/lxd7.b73982c7.png",d="/assets/lxd8.9fcc21e5.png",h="/assets/lxd9.00250a32.png",u="/assets/lxd10.a25a745c.png",C="/assets/lxd11.b83f953c.png",g="/assets/lxd12.0da335dd.png",y="/assets/lxd13.308fe0de.png",A="/assets/lxd14.8dbfdcd6.png",m="/assets/lxd15.70114933.png",b="/assets/lxd16.a595fa36.png",v="/assets/lxd17.d7ea65d8.png",f="/assets/lxd18.d6225daa.png",k="/assets/lxd19.69674669.png",D="/assets/lxd20.179fc6e1.png",P="/assets/lxd21.48123d6a.png",_="/assets/lxd22.4386597e.png",w="/assets/lxd23.c26427e3.png",U=JSON.parse('{"title":"自定义","description":"","frontmatter":{"outline":"deep"},"headers":[],"relativePath":"guide/lxd/lxd_custom.md","filePath":"guide/lxd/lxd_custom.md","lastUpdated":1747665844000}'),I={name:"guide/lxd/lxd_custom.md"},x=n(`<h1 id="自定义" tabindex="-1">自定义 <a class="header-anchor" href="#自定义" aria-label="Permalink to &quot;自定义&quot;"></a></h1><h2 id="给lxd启用官方的web面板" tabindex="-1">给lxd启用官方的web面板 <a class="header-anchor" href="#给lxd启用官方的web面板" aria-label="Permalink to &quot;给lxd启用官方的web面板&quot;"></a></h2><p>见 <a href="https://www.spiritysdx.top/20240513/#%E9%85%8D%E7%BD%AEweb" target="_blank" rel="noreferrer">给机房的Ubuntu22.04安装LXD共享GPU资源-配置web</a> 部分的内容</p><h2 id="给宿主机附加免费的ipv6地址段" tabindex="-1">给宿主机附加免费的IPV6地址段 <a class="header-anchor" href="#给宿主机附加免费的ipv6地址段" aria-label="Permalink to &quot;给宿主机附加免费的IPV6地址段&quot;"></a></h2><p>有的机器本身没有IPV6的/64子网这里给出一个方法免费附加IPV6的子网。</p><p>这里是使用6in4方法解决宿主机本身没有IPV6地址的问题。</p><div class="tip custom-block"><p class="custom-block-title">TIP</p><p>本页面的操作务必在原始系统上操作,保证未使用本项目的其他脚本安装环境(除了PVEPVE需要先安装好),否则可能导致环境冲突</p></div><p>以下是2023年目前还在运行的免费提供IPV6子网的平台</p><table><thead><tr><th>支持的平台</th><th>对应需要的安装包</th><th>协议</th><th>通道/子网数量</th></tr></thead><tbody><tr><td>tunnelbroker.net</td><td>ifupdown 或 ifupdown2</td><td>v4tunnel 或 sit</td><td>3✖/64 或 5✖/64</td></tr><tr><td>tunnelbroker.ch</td><td>ifupdown 或 ifupdown2</td><td>v4tunnel 或 sit</td><td>3✖/64</td></tr><tr><td>ip4market.ru</td><td>ifupdown 或 ifupdown2</td><td>v4tunnel 或 sit</td><td>1✖/64</td></tr><tr><td>netassist.ua</td><td>ifupdown 或 ifupdown2</td><td>v4tunnel 或 sit</td><td>1✖/64</td></tr><tr><td><a href="https://github.com/oneclickvirt/6in4" target="_blank" rel="noreferrer">https://github.com/oneclickvirt/6in4</a></td><td>ifupdown2</td><td>sit、gre、ipip</td><td>自定义</td></tr></tbody></table><p>免费的平台只解决IPV6有没有的问题不提供优质的IPV6带宽。</p><p>如需优质的带宽请自建隧道当ifupdown和ifupdown2都可时先尝试ifupdown是否可安装成功否则就安装ifupdown2.</p><p>安装完毕后,安装了哪个包后面就选择哪个包进行格式转换。</p><h3 id="初始环境修改" tabindex="-1">初始环境修改 <a class="header-anchor" href="#初始环境修改" aria-label="Permalink to &quot;初始环境修改&quot;"></a></h3><p>执行</p><div class="language-"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#A6ACCD;">touch /etc/cloud/cloud-init.disabled</span></span></code></pre></div><p>关闭cloud-init的自动化覆写先然后查看本机使用什么管理网络执行</p><div class="language-"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#A6ACCD;">systemctl is-active systemd-networkd</span></span></code></pre></div><p>和</p><div class="language-"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#A6ACCD;">systemctl is-active networking</span></span></code></pre></div><p>看看属于哪种情况如果是前者active后者inactive你需要重装/DD一个不是这样配置的系统或者切换本机使用ifupdown/ifupdown2管理网络</p><div class="language-"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#A6ACCD;"># 是否需要禁用原网络管理自行评判</span></span>
<span class="line"><span style="color:#A6ACCD;"># systemctl stop systemd-networkd</span></span>
<span class="line"><span style="color:#A6ACCD;"># systemctl disable systemd-networkd</span></span>
<span class="line"><span style="color:#A6ACCD;"># systemctl stop systemd-networkd.socket</span></span>
<span class="line"><span style="color:#A6ACCD;"># systemctl disable systemd-networkd.socket</span></span></code></pre></div><p>如果需要安装的是<code>ifupdown</code>控制网络这个工具一般的主流linux系统都有</p><div class="language-"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#A6ACCD;">apt-get install ifupdown -y</span></span></code></pre></div><p>如果需要安装的是<code>ifupdown2</code>进行网络管理而这个工具一般只在debian系上可安装使用</p><div class="language-"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#A6ACCD;">apt-get install ifupdown2 -y</span></span></code></pre></div><p>安装完毕后,安装了哪个包后面就选择哪个包进行格式转换。</p><div class="language-"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#A6ACCD;">systemctl start networking</span></span>
<span class="line"><span style="color:#A6ACCD;">systemctl enable networking</span></span></code></pre></div><p>然后重启服务器,检验机器的网络是否会因为修改出现重启失联的情况,且执行<code>uptime</code>观察启动已超过1分钟后再进行后续步骤</p><p>如果是是前者inactive后者active则不需要切换网络管理程序直接进行后续操作即可。</p><p>由于部分服务器存在默认的内网IPV6路由会与隧道冲突此时可使用以下命令删除默认的IPV6路由</p><div class="language-"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#A6ACCD;">default_route=$(ip -6 route show | awk &#39;/default via/{print $3}&#39;) &amp;&amp; [ -n &quot;$default_route&quot; ] &amp;&amp; ip -6 route del default via $default_route dev eth0</span></span></code></pre></div><p>这里假设了你的客户端的服务器的默认网卡是<code>eth0</code>,你可以使用<code>ip -6 route</code>查看默认的路由并替换它,默认路由以<code>default via</code>开头,使用<code>dev</code>指定默认网卡,你只需要按照这个规则找到它即可</p><h3 id="目前收集且支持的平台" tabindex="-1">目前收集且支持的平台 <a class="header-anchor" href="#目前收集且支持的平台" aria-label="Permalink to &quot;目前收集且支持的平台&quot;"></a></h3><h4 id="tunnelbroker-net" tabindex="-1">tunnelbroker_net <a class="header-anchor" href="#tunnelbroker-net" aria-label="Permalink to &quot;tunnelbroker_net&quot;"></a></h4><p>结合一键开设带IPV6地址的容器的脚本就能给每个容器附加来自he的IPV6地址了</p><p>缺点是地址比较黑/脏cloudflare的cdn极有可能套不上自行测试</p><ol><li>在 <a href="https://tunnelbroker.net/" target="_blank" rel="noreferrer">https://tunnelbroker.net/</a> 注册账户,并点击左边的 <code>Create Regular Tunnel</code></li></ol><p><img src="`+t+'" alt="1"></p><ol start="2"><li>红框处填写你的服务器的IPV4地址选择物理距离近的连接点比如机器在美国洛杉矶就选美国西海岸的连接点然后显示绿框提示点<code>Create Tunnel</code>创建即可</li></ol><p><img src="'+l+'" alt="2"></p><p><img src="'+p+'" alt="3"></p><p><img src="'+o+'" alt="4"></p><ol start="3"><li>等待出以下界面,点击<code>Example Configurations</code>然后选择对应的系统比如LXD的宿主机那肯定就是Debian/Ubuntu了</li></ol><p><img src="'+i+'" alt="5"></p><p><img src="'+c+'" alt="6"></p><ol start="4"><li>框住的部分就是要修改的文件和需要复制的内容了</li></ol><p><img src="'+r+`" alt="7"></p><p>复制的时候不要带空行</p><ol start="5"><li>转换格式后给你的网络配置文件附加IPV6的设置</li></ol><p>然后打开 <a href="https://ipv6tunnel.spiritlhl.top/" target="_blank" rel="noreferrer">https://ipv6tunnel.spiritlhl.top/</a> 选择<code>Option</code>为<code>TunnelBrokerNet</code>,另一个下拉选择框选择你之前安装成功的包名,然后在输入框内粘贴你复制的内容</p><p>然后点击<code>Covert</code>转换格式,等待页面刷新显示转换格式后的配置文件内容</p><p>然后用vim或者vi命令修改<code>/etc/network/interfaces</code>文件增加内容,或者修改以下命令新增</p><div class="language-"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#A6ACCD;">tee -a /etc/network/interfaces &lt;&lt;EOF</span></span>
<span class="line"><span style="color:#A6ACCD;"># 这里修改复制粘贴一下转换格式后的配置文件内容,然后执行此命令</span></span>
<span class="line"><span style="color:#A6ACCD;">EOF</span></span></code></pre></div><p>然后你可以使用<code>cat /etc/network/interfaces</code>查看配置文件是否正常写入了</p><ol start="6"><li>如果上面都没问题,就需要启用网络接口即可</li></ol><div class="language-"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#A6ACCD;">apt-get install net-tools iproute2 -y</span></span>
<span class="line"><span style="color:#A6ACCD;">systemctl restart networking</span></span></code></pre></div><ol start="7"><li>然后你就可以测试IPV6网络是否已附加</li></ol><p>执行<code>ifconfig</code>命令,这时应该有一个 he-ipv6 接口,类似下面这样:</p><p><img src="`+d+`" alt="8"></p><p>或者执行:</p><div class="language-"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#A6ACCD;">curl ipv6.ip.sb</span></span></code></pre></div><p>回传你绑定IPV6地址</p><ol start="8"><li>NAT VPS 的额外设置</li></ol><p>IPv4 NAT VPS 除了前面提到的替换 IP 操作以外,可能还需要一些额外的设置,否则可能还是无法访问 IPv6 网络。</p><div class="language-"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#A6ACCD;">apt-get install ufw -y</span></span>
<span class="line"><span style="color:#A6ACCD;">ufw allow 41</span></span></code></pre></div><p>添加相关的路由规则</p><div class="language-"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#A6ACCD;">route -A inet6 add ::/0 dev he-ipv6</span></span></code></pre></div><ol start="9"><li>如果不需要该IPV6网络了想要删除</li></ol><p>删除 he-ipv6 网络接口配置(若没有删除重启后会自动启用),记得修改<code>/etc/network/interfaces</code>文件,删除之前红框添加的内容</p><p>然后重启服务器,就删除了</p><h4 id="tunnelbroker-ch" tabindex="-1">tunnelbroker_ch <a class="header-anchor" href="#tunnelbroker-ch" aria-label="Permalink to &quot;tunnelbroker_ch&quot;"></a></h4><p>类似上述的操作,先在 <a href="https://www.tunnelbroker.ch/" target="_blank" rel="noreferrer">https://www.tunnelbroker.ch/</a> 注册一个账户先,注册后点击激活的邮件</p><p>然后就是填写你的服务器IPV4地址</p><p><img src="`+h+'" alt=""></p><p>创建后需要进入Config页面而不是详情页面</p><p><img src="'+u+'" alt=""></p><p>见到以下页面千万别使用,先刷新一下本页面,不要弹那个浅蓝色框后再停止刷新</p><p><img src="'+C+'" alt=""></p><p>记录以下页面的最后一个红框的内容,准备修改宿主机配置文件</p><p><img src="'+g+`" alt=""></p><p>页面的最后一个红框框住的部分复制下来,不要带空行</p><p>然后打开 <a href="https://ipv6tunnel.spiritlhl.top/" target="_blank" rel="noreferrer">https://ipv6tunnel.spiritlhl.top/</a> 选择<code>Option</code>为<code>TunnelBrokerCh</code>,另一个下拉选择框选择你之前安装成功的包名,然后在输入框内粘贴你复制的内容</p><p>然后点击<code>Covert</code>转换格式,等待页面刷新显示转换格式后的配置文件内容</p><p>然后用vim或者vi命令修改<code>/etc/network/interfaces</code>文件增加内容,或者修改以下命令新增</p><div class="language-"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#A6ACCD;">tee -a /etc/network/interfaces &lt;&lt;EOF</span></span>
<span class="line"><span style="color:#A6ACCD;"># 这里修改一下</span></span>
<span class="line"><span style="color:#A6ACCD;">EOF</span></span></code></pre></div><p>然后你就需要重启一下系统,或者执行</p><div class="language-"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#A6ACCD;">apt-get install net-tools iproute2 -y</span></span>
<span class="line"><span style="color:#A6ACCD;">systemctl restart networking</span></span></code></pre></div><p>保证环境无问题再进行别的操作了</p><h4 id="ip4market-ru" tabindex="-1">ip4market_ru <a class="header-anchor" href="#ip4market-ru" aria-label="Permalink to &quot;ip4market_ru&quot;"></a></h4><p>类似上述的操作,先在 <a href="https://tb.ip4market.ru/" target="_blank" rel="noreferrer">https://tb.ip4market.ru</a> 注册一个账户先注册邮箱得是非常见邮箱电话可随便写不验证的IP填上你要附加的宿主机的IPV4地址</p><p><img src="`+y+'" alt=""></p><p>然后就是过Recaptcha的人机验证点击注册</p><p>邮箱会收到激活邮件,里面附带有你的密码,记住它</p><p>然后在首页进行登录</p><p><img src="'+A+'" alt=""></p><p>然后就会进入这个页面</p><p><img src="'+m+`" alt=""></p><p>按住右键,然后复制红框框住的四行内容,也就是</p><div class="language-"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#A6ACCD;">Server IPv4:</span></span>
<span class="line"><span style="color:#A6ACCD;">Client IPv4</span></span>
<span class="line"><span style="color:#A6ACCD;">Server IPv6</span></span>
<span class="line"><span style="color:#A6ACCD;">Client IPv6</span></span></code></pre></div><p>这四行内容按ctrl+c复制或者右键复制</p><p><img src="`+b+'" alt=""></p><p>然后打开 <a href="https://ipv6tunnel.spiritlhl.top/" target="_blank" rel="noreferrer">https://ipv6tunnel.spiritlhl.top/</a> 选择<code>Option</code>为<code>ip4market</code>,另一个下拉选择框选择你之前安装成功的包名,然后在输入框内粘贴你复制的内容</p><p>然后点击<code>Covert</code>转换格式</p><p><img src="'+v+`" alt=""></p><p>然后就会自动刷新页面出现需要自己用vim或者vi命令修改<code>/etc/network/interfaces</code>文件增加的内容了,或者修改以下命令新增</p><div class="language-"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#A6ACCD;">tee -a /etc/network/interfaces &lt;&lt;EOF</span></span>
<span class="line"><span style="color:#A6ACCD;"># 这里修改一下</span></span>
<span class="line"><span style="color:#A6ACCD;">EOF</span></span></code></pre></div><p>然后你就需要重启一下系统,或者执行</p><div class="language-"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#A6ACCD;">apt-get install net-tools iproute2 -y</span></span>
<span class="line"><span style="color:#A6ACCD;">systemctl restart networking</span></span></code></pre></div><p>保证环境无问题再进行别的操作了</p><h4 id="netassist-ua" tabindex="-1">netassist_ua <a class="header-anchor" href="#netassist-ua" aria-label="Permalink to &quot;netassist_ua&quot;"></a></h4><p>这个平台你在切换网络管理时务必使用<code>ifupdown2</code>而不是<code>ifupdown2</code>安装包该平台使用sit协议而sit协议需要在<code>ifupdown2</code>控制的环境中使用</p><p>类似上述的操作,先在 <a href="https://tb.netassist.ua/" target="_blank" rel="noreferrer">https://tb.netassist.ua/</a> 注册一个账户先,注册后点击激活的邮件,激活页面会有密码显示,记得记录</p><p>然后就是填写你的服务器IPV4地址这个后面可以自己修改先随便填一个都没问题</p><p>然后就到了这个页面了</p><p><img src="`+f+'" alt="a"></p><p>第一个红框是你宿主机的IPV4地址需要填写的位置要修改就修改那里然后点change保存</p><p>第二个下拉红框选择<code>Linux</code>然后点击show</p><p><img src="'+k+'" alt="b"></p><p>会出现上面的内容,全选框住的部分复制下来,不要带空行</p><p>然后打开 <a href="https://ipv6tunnel.spiritlhl.top/" target="_blank" rel="noreferrer">https://ipv6tunnel.spiritlhl.top/</a> 选择<code>Option</code>为<code>NetAssist</code>,另一个下拉选择框选择你之前安装成功的包名,然后在输入框内粘贴你复制的内容</p><p>然后点击<code>Covert</code>转换格式</p><p><img src="'+D+`" alt="c"></p><p>然后就会自动刷新页面出现需要自己用vim或者vi命令修改<code>/etc/network/interfaces</code>文件增加的内容了,或者修改以下命令新增</p><div class="language-"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#A6ACCD;">tee -a /etc/network/interfaces &lt;&lt;EOF</span></span>
<span class="line"><span style="color:#A6ACCD;"># 这里修改一下</span></span>
<span class="line"><span style="color:#A6ACCD;">EOF</span></span></code></pre></div><p>然后你就需要重启一下系统,或者执行</p><div class="language-"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#A6ACCD;">apt-get install net-tools iproute2 -y</span></span>
<span class="line"><span style="color:#A6ACCD;">systemctl restart networking</span></span></code></pre></div><p>保证环境无问题再进行别的操作了</p><h2 id="转移不同服务器之间的ipv6子网" tabindex="-1">转移不同服务器之间的IPV6子网 <a class="header-anchor" href="#转移不同服务器之间的ipv6子网" aria-label="Permalink to &quot;转移不同服务器之间的IPV6子网&quot;"></a></h2><p>相关仓库:<a href="https://github.com/oneclickvirt/6in4" target="_blank" rel="noreferrer">https://github.com/oneclickvirt/6in4</a></p><p>该方法将提供一种方式将A上的IPV6网段拆分一个子ipv6网段的出来附加到B上使用</p><p>你需要在B所在的服务器上使用本套脚本给容器一键配置IPV6地址</p><h3 id="功能" tabindex="-1">功能 <a class="header-anchor" href="#功能" aria-label="Permalink to &quot;功能&quot;"></a></h3><ul><li>自建sit/gre/ipip协议的IPv6隧道</li><li>支持自定义要切分出来的IPV6子网大小将自动计算出合适的CIDR格式的IPV6子网信息</li><li>自动识别服务端的IPV6子网大小</li><li>将自动设置隧道服务端并打印客户端需要执行的命令</li><li>设置IPV6隧道的方法简单易懂易于删除</li></ul><h3 id="环境准备" tabindex="-1">环境准备 <a class="header-anchor" href="#环境准备" aria-label="Permalink to &quot;环境准备&quot;"></a></h3><table><thead><tr><th>VPS(A)</th><th>VPS(B)</th></tr></thead><tbody><tr><td>一个IPV4地址(server_ipv4)</td><td>一个IPV4地址(clinet_ipv4)</td></tr><tr><td>一个IPV6子网</td><td>无IPV6地址</td></tr><tr><td>以下称之为服务端</td><td>以下称之为客户端</td></tr></tbody></table><h3 id="使用方法" tabindex="-1">使用方法 <a class="header-anchor" href="#使用方法" aria-label="Permalink to &quot;使用方法&quot;"></a></h3><p>下载脚本</p><div class="language-"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#A6ACCD;">curl -L https://raw.githubusercontent.com/oneclickvirt/6in4/main/6in4.sh -o 6in4.sh &amp;&amp; chmod +x 6in4.sh</span></span></code></pre></div><p>执行命令</p><div class="language-"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#A6ACCD;">./6in4.sh client_ipv4 &lt;mode_type&gt; &lt;subnet_size&gt;</span></span></code></pre></div><table><thead><tr><th>选项</th><th>可选的选项1</th><th>可选的选项2</th><th>可选的选项3</th></tr></thead><tbody><tr><td>&lt;mode_type&gt;</td><td>gre</td><td>sit</td><td>ipip</td></tr><tr><td>&lt;subnet_size&gt;</td><td>64</td><td>80</td><td>112</td></tr></tbody></table><p><code>&lt;mode_type&gt;</code>暂时只支持那三种协议,越靠前的越推荐,不填则默认为<code>sit</code>协议</p><p><code>&lt;subnet_size&gt;</code>只要比原系统子网掩码大就行且是8的倍数不填则默认为<code>80</code></p><p>记得<code>client_ipv4</code>替换为需要附加IPV6的机器的IPV4地址执行完毕后会回传你需要在客户端执行的命令详见执行后的说明即可</p><p>为防止忘记复制命令,命令本身也将写入到当前路径下的<code>6in4.log</code>文件中,可使用<code>cat 6in4.log</code>查询客户端需要执行的命令</p><p>复制下来的命令,务必在 <a href="https://ipv6tunnel.spiritlhl.top/" target="_blank" rel="noreferrer">https://ipv6tunnel.spiritlhl.top/</a> 中选择选项<code>6in4</code>后进行转换</p><p>然后就会自动刷新页面出现需要自己用vim或者vi命令修改<code>/etc/network/interfaces</code>文件增加的内容了,或者修改以下命令新增</p><div class="language-"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#A6ACCD;">tee -a /etc/network/interfaces &lt;&lt;EOF</span></span>
<span class="line"><span style="color:#A6ACCD;"># 这里修改一下</span></span>
<span class="line"><span style="color:#A6ACCD;">EOF</span></span></code></pre></div><p>然后你就需要重启一下系统,或者执行</p><div class="language-"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#A6ACCD;">apt-get install net-tools iproute2 -y</span></span>
<span class="line"><span style="color:#A6ACCD;">systemctl restart networking</span></span></code></pre></div><p>保证环境无问题再进行别的操作了</p><h3 id="检测服务端" tabindex="-1">检测服务端 <a class="header-anchor" href="#检测服务端" aria-label="Permalink to &quot;检测服务端&quot;"></a></h3><div class="language-"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#A6ACCD;">systemctl status ndpresponder</span></span></code></pre></div><div class="language-"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#A6ACCD;">ip addr show</span></span></code></pre></div><h3 id="检测客户端" tabindex="-1">检测客户端 <a class="header-anchor" href="#检测客户端" aria-label="Permalink to &quot;检测客户端&quot;"></a></h3><div class="language-"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#A6ACCD;">ip addr show</span></span></code></pre></div><div class="language-"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#A6ACCD;">curl ipv6.ip.sb</span></span></code></pre></div><h3 id="删除隧道" tabindex="-1">删除隧道 <a class="header-anchor" href="#删除隧道" aria-label="Permalink to &quot;删除隧道&quot;"></a></h3><p>服务端</p><div class="language-"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#A6ACCD;">ip link set server-ipv6 down</span></span>
<span class="line"><span style="color:#A6ACCD;">ip tunnel del server-ipv6</span></span></code></pre></div><p>客户端</p><div class="language-"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#A6ACCD;">ip link set user-ipv6 down</span></span>
<span class="line"><span style="color:#A6ACCD;">ip tunnel del user-ipv6</span></span></code></pre></div><p>以上删除的方式只是临时删除,永久删除务必修改删除<code>/etc/network/interfaces</code>文件中你之前增加的内容</p><h3 id="后言" tabindex="-1">后言 <a class="header-anchor" href="#后言" aria-label="Permalink to &quot;后言&quot;"></a></h3><p>实际上 <a href="https://tunnelbroker.net/" target="_blank" rel="noreferrer">https://tunnelbroker.net/</a> 支持申请<code>/48</code>大小的IPV6子网只需要在</p><p><img src="`+P+`" alt="图片"></p><p>这里进行申请,然后转换格式的时候将原先<code>/64</code>的IPV6地址改成<code>/48</code>的IPV6地址你就能获得一个更大的IPV6子网了</p><h2 id="使用warp给宿主机添加ip出口-ipv4-ipv6" tabindex="-1">使用WARP给宿主机添加IP出口(IPv4/IPv6) <a class="header-anchor" href="#使用warp给宿主机添加ip出口-ipv4-ipv6" aria-label="Permalink to &quot;使用WARP给宿主机添加IP出口(IPv4/IPv6)&quot;"></a></h2><h3 id="好处" tabindex="-1">好处 <a class="header-anchor" href="#好处" aria-label="Permalink to &quot;好处&quot;"></a></h3><ul><li>宿主机安装,能使所有开启的机器都能够享受 Warp 的优势,而无需为每台机器单独进行设置,从而节省资源和简化管理。</li><li>宿主机使用内核态 WireGuard相比于用户态的 WireGuard-Go实现能够提供更高效的 WireGuard 运行。</li></ul><h3 id="手动安装" tabindex="-1">手动安装 <a class="header-anchor" href="#手动安装" aria-label="Permalink to &quot;手动安装&quot;"></a></h3><h4 id="_1-安装wireguard依赖" tabindex="-1">1.安装WireGuard依赖 <a class="header-anchor" href="#_1-安装wireguard依赖" aria-label="Permalink to &quot;1.安装WireGuard依赖&quot;"></a></h4><ul><li>Debian 和 Ubuntu 系统</li></ul><div class="language-"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#A6ACCD;"># 更新依赖库</span></span>
<span class="line"><span style="color:#A6ACCD;">apt update -y</span></span>
<span class="line"><span style="color:#A6ACCD;"></span></span>
<span class="line"><span style="color:#A6ACCD;"># 安装 WireGuard 运行依赖</span></span>
<span class="line"><span style="color:#A6ACCD;">apt install -y --no-install-recommends net-tools openresolv dnsutils</span></span>
<span class="line"><span style="color:#A6ACCD;"></span></span>
<span class="line"><span style="color:#A6ACCD;"># 安装 WireGuard 协议兼容的工具集合</span></span>
<span class="line"><span style="color:#A6ACCD;">apt install -y --no-install-recommends wireguard-tools</span></span></code></pre></div><ul><li>CentOS 系</li></ul><div class="language-"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#A6ACCD;"># 更新依赖库</span></span>
<span class="line"><span style="color:#A6ACCD;">yum update -y</span></span>
<span class="line"><span style="color:#A6ACCD;"></span></span>
<span class="line"><span style="color:#A6ACCD;"># 安装额外包组件</span></span>
<span class="line"><span style="color:#A6ACCD;">yum install -y epel-release </span></span>
<span class="line"><span style="color:#A6ACCD;"></span></span>
<span class="line"><span style="color:#A6ACCD;"># 安装 WireGuard 运行依赖</span></span>
<span class="line"><span style="color:#A6ACCD;">yum install -y net-tools</span></span>
<span class="line"><span style="color:#A6ACCD;"></span></span>
<span class="line"><span style="color:#A6ACCD;"># 安装 WireGuard 协议兼容的工具集合</span></span>
<span class="line"><span style="color:#A6ACCD;">yum install -y wireguard-tools</span></span></code></pre></div><h4 id="_2-获取warp账户信息" tabindex="-1">2.获取warp账户信息 <a class="header-anchor" href="#_2-获取warp账户信息" aria-label="Permalink to &quot;2.获取warp账户信息&quot;"></a></h4><p>访问 <a href="https://warp.cloudflare.now.cc/?run=register&amp;format=yaml" target="_blank" rel="noreferrer">https://warp.cloudflare.now.cc/?run=register&amp;format=yaml</a>,记录下 private_key, v6 2个值</p><p><img src="`+_+`" alt="image.png"></p><h4 id="_3-修改配置文件" tabindex="-1">3.修改配置文件 <a class="header-anchor" href="#_3-修改配置文件" aria-label="Permalink to &quot;3.修改配置文件&quot;"></a></h4><ul><li><p>创建并编辑 /etc/wireguard/warp.conf 文件,包含&lt;&gt;(尖括号)的部分一起替换掉,这只是为了看起来明显。</p></li><li><p>针对 IPv4 only 的宿主机Warp 只接管 IPv6 出口</p></li></ul><div class="language-"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#A6ACCD;">[Interface]</span></span>
<span class="line"><span style="color:#A6ACCD;">PrivateKey = &lt;替换 PrivateKey&gt;</span></span>
<span class="line"><span style="color:#A6ACCD;">Address = 172.16.0.2/32</span></span>
<span class="line"><span style="color:#A6ACCD;">Address = &lt;替换 Address v6 地址&gt;/128</span></span>
<span class="line"><span style="color:#A6ACCD;">DNS = 1.1.1.1, 1.0.0.1, 2606:4700:4700::1111, 2606:4700:4700::1001</span></span>
<span class="line"><span style="color:#A6ACCD;">MTU = 1280</span></span>
<span class="line"><span style="color:#A6ACCD;"></span></span>
<span class="line"><span style="color:#A6ACCD;">[Peer]</span></span>
<span class="line"><span style="color:#A6ACCD;">PublicKey = bmXOC+F1FxEMF9dyiK2H5/1SUtzH0JuVo51h2wPfgyo=</span></span>
<span class="line"><span style="color:#A6ACCD;">AllowedIPs = ::/0</span></span>
<span class="line"><span style="color:#A6ACCD;">Endpoint = 162.159.193.10:2408</span></span></code></pre></div><ul><li>针对 IPv6 only 的宿主机Warp 只接管 IPv4 出口</li></ul><div class="language-"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#A6ACCD;">[Interface]</span></span>
<span class="line"><span style="color:#A6ACCD;">PrivateKey = &lt;替换 PrivateKey&gt;</span></span>
<span class="line"><span style="color:#A6ACCD;">Address = 172.16.0.2/32</span></span>
<span class="line"><span style="color:#A6ACCD;">Address = &lt;替换 Address v6 地址&gt;/128</span></span>
<span class="line"><span style="color:#A6ACCD;">DNS = 2606:4700:4700::1111, 2606:4700:4700::1001, 1.1.1.1, 1.0.0.1</span></span>
<span class="line"><span style="color:#A6ACCD;">MTU = 1280</span></span>
<span class="line"><span style="color:#A6ACCD;"></span></span>
<span class="line"><span style="color:#A6ACCD;">[Peer]</span></span>
<span class="line"><span style="color:#A6ACCD;">PublicKey = bmXOC+F1FxEMF9dyiK2H5/1SUtzH0JuVo51h2wPfgyo=</span></span>
<span class="line"><span style="color:#A6ACCD;">AllowedIPs = 0.0.0.0/0</span></span>
<span class="line"><span style="color:#A6ACCD;">Endpoint = [2606:4700:d0::a29f:c101]:2408</span></span></code></pre></div><ul><li>针对双栈没有必要,毕竟原生的网络出口都会比通过 Warp 中转要好</li></ul><h4 id="_4-设置地址解析优先级" tabindex="-1">4.设置地址解析优先级 <a class="header-anchor" href="#_4-设置地址解析优先级" aria-label="Permalink to &quot;4.设置地址解析优先级&quot;"></a></h4><ul><li>针对 IPv4 only 的宿主机Warp 只接管 IPv6 出口,设置优先使用原生网络的 IPv4 出口</li></ul><div class="language-"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#A6ACCD;"># IPv4 优先</span></span>
<span class="line"><span style="color:#A6ACCD;">grep -qE &#39;^[ ]*precedence[ ]*::ffff:0:0/96[ ]*100&#39; /etc/gai.conf || echo &#39;precedence ::ffff:0:0/96 100&#39; &gt;&gt; /etc/gai.conf</span></span></code></pre></div><ul><li>针对 IPv6 only 的宿主机Warp 只接管 IPv4 出口,设置优先使用原生网络的 IPv6 出口</li></ul><div class="language-"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#A6ACCD;"># IPv6 优先,默认即为 IPv6 优先</span></span>
<span class="line"><span style="color:#A6ACCD;">sed -i &#39;/^precedence \\:\\:ffff\\:0\\:0/d;/^label 2002\\:\\:\\/16/d&#39; /etc/gai.conf</span></span></code></pre></div><h4 id="_5-连接-warp-并设置-systemd-进程守护" tabindex="-1">5.连接 Warp并设置 systemd 进程守护 <a class="header-anchor" href="#_5-连接-warp-并设置-systemd-进程守护" aria-label="Permalink to &quot;5.连接 Warp并设置 systemd 进程守护&quot;"></a></h4><div class="language-"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#A6ACCD;"># 运行 wireguard 连接 Warp。如果这步卡死导致失联后台重启宿主机即可解决</span></span>
<span class="line"><span style="color:#A6ACCD;">wg-quick up warp</span></span>
<span class="line"><span style="color:#A6ACCD;"></span></span>
<span class="line"><span style="color:#A6ACCD;"># 查看 IPv4</span></span>
<span class="line"><span style="color:#A6ACCD;">curl -A a https://api-ipv4.ip.sb/geoip</span></span>
<span class="line"><span style="color:#A6ACCD;"></span></span>
<span class="line"><span style="color:#A6ACCD;"># 查看 IPv6</span></span>
<span class="line"><span style="color:#A6ACCD;">curl -A a https://api-ipv6.ip.sb/geoip</span></span>
<span class="line"><span style="color:#A6ACCD;"></span></span>
<span class="line"><span style="color:#A6ACCD;"># 测试成功后断开 Warp 连接</span></span>
<span class="line"><span style="color:#A6ACCD;">wg-quick down warp</span></span>
<span class="line"><span style="color:#A6ACCD;"></span></span>
<span class="line"><span style="color:#A6ACCD;"># 重新连接并设置进程守护,以便重启后自动生效</span></span>
<span class="line"><span style="color:#A6ACCD;">systemctl enable --now wg-quick@warp</span></span></code></pre></div><h3 id="自动安装和运行-fscarmen的一键脚本" tabindex="-1">自动安装和运行(fscarmen的一键脚本) <a class="header-anchor" href="#自动安装和运行-fscarmen的一键脚本" aria-label="Permalink to &quot;自动安装和运行(fscarmen的一键脚本)&quot;"></a></h3><p>最后,介绍 fscarmen 的一键脚本。提到该脚本是一个方便的工具,可以简化配置过程。并自动处理最优 MTU, 最优 Endpoint 等进阶参数。</p><p>项目介绍: <a href="https://github.com/fscarmen/warp-sh" target="_blank" rel="noreferrer">https://github.com/fscarmen/warp-sh</a></p><div class="language-"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#A6ACCD;"># 运动脚本</span></span>
<span class="line"><span style="color:#A6ACCD;">wget -N https://gitlab.com/fscarmen/warp/-/raw/main/menu.sh &amp;&amp; bash menu.sh</span></span></code></pre></div><p><img src="`+w+'" alt="image.png"></p>',197),q=[x];function V(E,W,O,F,S,G){return a(),e("div",null,q)}const K=s(I,[["render",V]]);export{U as __pageData,K as default};