• 首页
  • 归档
  • 关于
  • 搜索
  • 夜间模式
    ©2026  望时代 Theme by OneBlog

    望时代

    搜索
    标签
    # 教程 # Linux # 脚本 # AI # 影音 # 游戏 # 随笔 # 科技 # 认知
  • 首页>
  • >
  • 正文
  • [教程]无IPV6环境下利用wireguard以及HE-IPV6获得IPV6公网访问 1

    2026年06月26日 2 阅读 0 评论 4128 字

    [教程]无IPV6环境下利用wireguard以及HE-IPV6获得IPV6公网访问 1 __2023年6月26日 __3条评论 __351次阅读 __0人点赞 __Tao_Qi 情景复现: A鸡只有IPV4的访问,连IPV6的访问都没有,更别说IPV6的公网访问了。
    B鸡,公网IPV4,有无IPV6也可以。
    但这篇文章只写B鸡无IPV6的情况(就算有V6,也可以再获取HE-IPV6后再转发过去)下通过HE的IPV6隧道获得v6后,经过wireguard异地组网(或许其他的也可以,zerotier什么的,tailsacle什么的)转发HE-IPV6其中一个地址去A鸡,从而达到可以公网访问A鸡的效果。
    搞HE-IPV6我习惯用netplan,同时记得你B鸡开启转发IPv6数据转发,/etc/sysctl.conf下要添加
    [code]

    net.ipv6.conf.all.forwarding=1
    net.ipv6.conf.default.forwarding=1
    

    [/code]

    然后重启sysctl

    sysctl -p

    那么我们正式开始。 B鸡debian下一把梭
    [code]

    apt install netplan.io iptables jq netfilter-persistent -y
    

    [/code]

    然后wireguard服务端得装在B鸡上,以及获得HE-IPV6这些不用我说了吧(我还是怕你们不会搞wireguard,我还找了个脚本,项目地址
    [code]

    wget https://git.io/wireguard -O wireguard-install.sh && bash wireguard-install.sh
    

    [/code]

    装好wireguard后并且创建了Client后,用你的A鸡连接下看看(可能有些地方qos严重,推荐看我以前写的[[教程]没有IPV6的宽带利用支持IPV6的VPS获得IPV6访问](http://127.0.0.1:5001/post-3421-1)来同等利用TCP over UDP来规避qos)
    装HE的话,看我之前写的[[HE-IPV6隧道]Vir JP TYC33节点的V6挂掉,套用HE的V6隧道应急备忘录](http://127.0.0.1:5001/post-8827-1)或者直接用HE官方提供的netplan<0.103的模板(你用了/48的话)记得自己换一下,建议添加多一个IPV6用来转发进A鸡!!!毕竟HE的V6是整个路由段给你的,你想怎么折腾就怎么折腾。 记得你A鸡的防火墙!!!! 这里说一下 /etc/netplan/he-ipv6.yaml的一些注意事项
    [code]

    network:
      version: 2
      tunnels:
        he-ipv6:
          mode: sit
          remote: 默认就好
          local: 你的IPV4
          addresses:
            - "默认给的V6地址/64"
            - "默认给的V6地址去掉后缀,建议换成12/64"
          gateway6: "HE给的V6网关"
    

    [/code]

    "默认给的V6地址/64"通常是2001:xxx:xx:xx::2/64是吧
    "默认给的V6地址去掉后缀,建议换成12/64"就写成2001:xxx:xx:xx::12/64

    勘误,netplan的he-ipv6.yaml可以不写2001:xxx:xx:xx::12/64,直接用iptbles来转发过去。 就相当于he的2001:xxx:xx:xx::12/64没有用iptables来转发的时候,你的B鸡收到了2001:xxx:xx:xx::12/64的数据,但你的B鸡蒙了,这个2001:xxx:xx:xx::12/64我要干嘛?我要去哪?而用了iptbles的转发后就算A鸡挂壁了,B鸡也知道要转发去wireguard的内网IP,就算不通,B鸡也说我转发了嗷,有啥问题别找我。 那么
    [code]

    netplan try
    

    [/code]

    没问题就按多次回车,此时你应该就有了两个IPV6在你的B鸡上了,那么假设你前面的所有东西都没问题了,你在B鸡ping一下A鸡的Wireguard内网IP,默认是10.7.0.2和fddd:2c4:2c4:2c4::2,能ping通的话,那就开始下一步,利用ip6tables转发 2001:xxx:xx:xx::12 这个IPV6地址去A鸡。 看好了嗷。
    [code]

    ip6tables -t nat -A PREROUTING -d 2001:xxx:xx:xx::12 -j DNAT --to-destination fddd:2c4:2c4:2c4::2
    sudo sh -c "ip6tables-save > /etc/iptables/rules.v6"
    systemctl enable netfilter-persistent
    service netfilter-persistent restart
    

    [/code]

    好了,此时此刻你可以试试访问2001:xxx:xx:xx::12这个地址去了,没啥问题的话,你的A鸡已经可以被公网IPV6进行访问了有问题也别找我 btw,B鸡重启后要应用iptables规则
    [code]

    sudo ip6tables-restore /etc/iptables/rules.v6
    sudo systemctl restart netfilter-persistent
    

    [/code]

    总结下: wireguard进行组网然后利用iptables来进行转发公网IPV6去A鸡达到类似的效果。 其实这也是我前段时间开卢森堡小鸡,独立IPV6的一个变相玩法了。
    下一步就是找 @Just纱世里 研究如何分配一个路由段过去了等我有空再说 ,希望大佬不会嫌弃我菜 本作品采用 知识共享署名-相同方式共享 4.0 国际许可协议

    1. admin-six说道: 2023年6月26日 上午1:15
    2. --说道: 2023年6月26日 上午1:15
    3. fanjhsdb说道: 2023年6月26日 上午1:18

    发表回复 取消回复电子邮件地址不会被公开。必填项已用 标注 __ __

    本文著作权归作者 [ doudoudoubao ] 享有,未经作者书面授权,禁止转载,封面图片来源于 [ 互联网 ] ,本文仅供个人学习、研究和欣赏使用。如有异议,请联系博主及时处理。
    教程
    取消回复

    发表留言
    回复

    Copyright©2026  All Rights Reserved.  Load:0.003 s
    Theme by OneBlog V3.7.1
    夜间模式

    开源不易,请尊重作者版权,保留基本的版权信息。