mirror of
https://github.com/oneclickvirt/oneclickvirt.github.io.git
synced 2026-07-01 01:36:12 +08:00
81 lines
38 KiB
JavaScript
81 lines
38 KiB
JavaScript
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 "自定义""></a></h1><h2 id="给lxd启用官方的web面板" tabindex="-1">给lxd启用官方的web面板 <a class="header-anchor" href="#给lxd启用官方的web面板" aria-label="Permalink to "给lxd启用官方的web面板""></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 "给宿主机附加免费的IPV6地址段""></a></h2><p>有的机器本身没有IPV6的/64子网,这里给出一个方法免费附加IPV6的子网。</p><p>这里是使用6in4方法解决宿主机本身没有IPV6地址的问题。</p><div class="tip custom-block"><p class="custom-block-title">TIP</p><p>本页面的操作务必在原始系统上操作,保证未使用本项目的其他脚本安装环境(除了PVE,PVE需要先安装好),否则可能导致环境冲突</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 "初始环境修改""></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 '/default via/{print $3}') && [ -n "$default_route" ] && 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 "目前收集且支持的平台""></a></h3><h4 id="tunnelbroker-net" tabindex="-1">tunnelbroker_net <a class="header-anchor" href="#tunnelbroker-net" aria-label="Permalink to "tunnelbroker_net""></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 <<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 "tunnelbroker_ch""></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 <<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 "ip4market_ru""></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 <<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 "netassist_ua""></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 <<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 "转移不同服务器之间的IPV6子网""></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 "功能""></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 "环境准备""></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 "使用方法""></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 && 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 <mode_type> <subnet_size></span></span></code></pre></div><table><thead><tr><th>选项</th><th>可选的选项1</th><th>可选的选项2</th><th>可选的选项3</th></tr></thead><tbody><tr><td><mode_type></td><td>gre</td><td>sit</td><td>ipip</td></tr><tr><td><subnet_size></td><td>64</td><td>80</td><td>112</td></tr></tbody></table><p><code><mode_type></code>暂时只支持那三种协议,越靠前的越推荐,不填则默认为<code>sit</code>协议</p><p><code><subnet_size></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 <<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 "检测服务端""></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 "检测客户端""></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 "删除隧道""></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 "后言""></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 "使用WARP给宿主机添加IP出口(IPv4/IPv6)""></a></h2><h3 id="好处" tabindex="-1">好处 <a class="header-anchor" href="#好处" aria-label="Permalink to "好处""></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 "手动安装""></a></h3><h4 id="_1-安装wireguard依赖" tabindex="-1">1.安装WireGuard依赖 <a class="header-anchor" href="#_1-安装wireguard依赖" aria-label="Permalink to "1.安装WireGuard依赖""></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 "2.获取warp账户信息""></a></h4><p>访问 <a href="https://warp.cloudflare.now.cc/?run=register&format=yaml" target="_blank" rel="noreferrer">https://warp.cloudflare.now.cc/?run=register&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 "3.修改配置文件""></a></h4><ul><li><p>创建并编辑 /etc/wireguard/warp.conf 文件,包含<>(尖括号)的部分一起替换掉,这只是为了看起来明显。</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 = <替换 PrivateKey></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 = <替换 Address v6 地址>/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 = <替换 PrivateKey></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 = <替换 Address v6 地址>/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 "4.设置地址解析优先级""></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 '^[ ]*precedence[ ]*::ffff:0:0/96[ ]*100' /etc/gai.conf || echo 'precedence ::ffff:0:0/96 100' >> /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 '/^precedence \\:\\:ffff\\:0\\:0/d;/^label 2002\\:\\:\\/16/d' /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 "5.连接 Warp,并设置 systemd 进程守护""></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 "自动安装和运行(fscarmen的一键脚本)""></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 && 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};
|