Wireguard/OpenVPN 客户端如何获取 IPv6 地址 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
DopaminePlz
V2EX    宽带症候群

Wireguard/OpenVPN 客户端如何获取 IPv6 地址

  •  
  •   DopaminePlz 295 天前 2080 次点击
    这是一个创建于 295 天前的主题,其中的信息可能已经有所发展或是发生改变。

    家里网络拓扑:OpenWrt 路由器--内网 NAS 。Wireguard 服务端运行在家里的 NAS 上,ip6tables 配置了 IPv6 伪装,办公室里仅有 IPv4 内网地址的客户端可以被伪装为家里 NAS 的公网 IPv6 地址。请问客户端可以从家里路由器获取独立的公网 IPv6 地址而非 NAS 的公网 IP6 地址吗?如何做?

    9 条回复    2024-12-23 14:46:03 +08:00
    dalaoshu25
        1
    dalaoshu25  
       295 天前
    可以,我做到了,不是很难,我用 RouterOS 实现的,需要写一个简单的脚本和配置 netmap 方式的 NAT 规则。

    但是没必要,莫非你要从外边发起对你办公室里这个客户端的直接访问?

    wireguard 的地址分配都是静态的,无论 wg 节点之间是用 IPv4 还是 v6 连接,每个 wg 节点本身都可以同时配置 IPv4 和 IPv6 地址。你只需要给这些节点分配好静态的私有 IPv6 地址,比如我用 fd80::1/64 fd80::100/64 等等,然后在你的出口路由器上把这些 fd80::地址伪装成出口的 v6 地址即可。
    xqzr
        2
    xqzr  
       295 天前
    wg 在 Linux 上可以用内核的 accept_ra
    ranaanna
        3
    ranaanna  
       294 天前
    如果家里的 ipv6 前缀固定,那么只要将 nas 上的 wireguard 的 Address 配置中的 ipv6 地址从内网地址改成与 LAN 前缀不同、但在运营商分配的前缀中的公网地址,再将原先的地址伪装命令去掉即可。确保系统 net.ipv6.conf.all.forwarding=1 或 2 。相应地客户端的地址也作修改,/64 地址的前缀与服务端相同。不需要 NAT 比原先的更简单

    更进一步地,甚至可以在客户端的网卡上指定一个其他的/64 前缀地址,再通过 RA 给办公室的所有设备分配家里的公网 ipv6 地址,让它们都可以通过家里的 ipv6 上网,而且,在防火墙允许的前提下,可以直接被访问

    当然如果家里的 ipv6 前缀是动态的,则需要根据变化相应地调整服务端和客户端的 ipv6 地址。不知道是否有现成的实现
    ysc3839
        4
    ysc3839  
       294 天前
    OpenVPN 的话有个最简单的方案,就是用二层 tap VPN ,直接接入路由器 LAN ,能直接拿到 LAN 的 IP 地址。
    不过该方案不适用于 Android 、iOS 等移动操作系统,macOS 似乎也不支持 tap 。
    Ipsum
        5
    Ipsum  
       294 天前
    家宽还是算了吧,动态 v6 ,每次拨号都要重新来一遍。直接 nat6 完事
    shenyuzhi
        6
    shenyuzhi  
       294 天前 via iPhone
    这个问题我考虑过。
    wg 不能动态分配 ipv6 ,只能写死。
    如果你家里的前缀是固定的,那就写死。
    不然只有两种办法
    1 NAT
    2 先建立隧道,然后想办法用别的什么协议分配 ipv6 地址。
    cloudflare warp 也是写死的 ipv6 地址然后 nat
    dalaoshu25
        7
    dalaoshu25  
       294 天前 via iPhone
    @shenyuzhi 至少在 RouterOS 里超简单,电信局不是给了/56 嘛,从这里面拿一个/64 给 wg 接口,然后外面连进来的 wg 客户就用这个前缀做 natmap 即可,会者不难,我已经设置好用了半年多了,只是实在没有什么实用意义。莫非还要在 wg 客户端上建立 web 服务器给别人访问不成。不过远程 ssh 登录进来是可以用的。
    yyysuo
        8
    yyysuo  
       292 天前
    不太明白,能借用家里的 v6 就得了,nas 的地址也能用呀,为什么一定要每个设备分配一个独立的,问题是家里的前缀也是变化的。
    xhcnb
        9
    xhcnb  
       292 天前
    前缀变化太麻烦了, 我用的 tinc, https://www.tinc-vpn.org/examples/ipv6-network/ , 最好还是使用 nat6
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     927 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 24ms UTC 19:14 PVG 03:14 LAX 12:14 JFK 15:14
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86