wireguard 如何把对端节点作为默认网关(旁路由) - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
jerrycmht024
V2EX    宽带症候群

wireguard 如何把对端节点作为默认网关(旁路由)

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

    A 与 B 在不同的网络,通过 wireguard 互联

    想把机器 A 的所有默认流量通过 B 转发,有办法实现吗?

    试过在 B 上配置 socks5 ,然后让 A 配置系统代理( windows ),但是 A 上可能要装一些 VPN ,VPN 不走系统代理。

    14 条回复    2025-08-15 09:17:59 +08:00
    xqzr
        1
    xqzr  
       60 天前
    A 所在的网关,做源路由
    haojidemingzi
        2
    haojidemingzi  
       60 天前
    A 的配置文件里,[Peer]( B )这样配置:AllowedIPs = 0.0.0.0/1, 128.0.0.0/1 ,就可以 A 的流量都走 B 了吧
    jerrycmht024
        3
    jerrycmht024  
    OP
       60 天前
    @haojidemingzi B 需要做额外的配置吗?是否要开启 NAT 之类的?
    haojidemingzi
        4
    haojidemingzi  
       60 天前
    @jerrycmht024 #3 印象中是不需要额外配置的,你可以试一试
    jerrycmht024
        5
    jerrycmht024  
    OP
       60 天前
    @haojidemingzi 不太行,看起来这个 allowedips 就是添加路由,首先我配置 0.0.0.0 会直接导致网络不通。
    然后我改成了 8.8.8.8 ,traceroute 以后发现下一跳只是到了 wg 的 server 上,看起来还要额外的配置
    565656
        6
    565656  
       60 天前 via iPhone
    A 上 clash 直接引用 b 的 socks 作为节点,分流默认走 B ,不需要的就 direct 不就行了吗
    jerrycmht024
        7
    jerrycmht024  
    OP
       59 天前
    @565656 这个思路也还行,那我需要装个 openwrt 的旁路由,然后 clash+wireguard ,因为有很多类似 A 的节点,然后这些节点就把默认网关配置到 openwrt 上?但是我有没有不用 clash 的方案。
    CheckMySoul
        8
    CheckMySoul  
       59 天前
    A 是 linux 的话,启用 ip 转发:net.ipv4.ip_forward = 1 ,A 的 wg 允许 IP:0.0.0.0/0 ,然后配置下 MASQUERADE:iptables -t nat -A POSTROUTING -s {{ipv4Cidr}} -o {{device}} -j MASQUERADE; iptables -A INPUT -p udp -m udp --dport {{port}} -j ACCEPT; iptables -A FORWARD -i wg0 -j ACCEPT; iptables -A FORWARD -o wg0 -j ACCEPT;
    这样 B 默认连上就通过 A 的网络。
    565656
        9
    565656  
       59 天前
    @jerrycmht024 #7 wireguard 甚至可以不用,直接把 clash 的 7890 端口 frp 出来(改五位端口+长密码),所有类似 A 都可以引用这个 socks5 节点,然后写分流规则用,同时也完美解决手机上 clash 和 tailscale/wireguard 不能同时打开的问题.
    DOGOOD
        10
    DOGOOD  
       59 天前
    你 wireguard 怎么架的?是 b 有公网 ip 么?这样的话,2 楼那个方法就可以。如果不是这样,而是通过一个有公网 ip 的 c 充当 wireguard 中转。那这个 c 的 wireguard 配置中对应 b 的 peer 也要配置 AllowedIPs = 0.0.0.0/1 ,以及 c 的 wireguard 要添加对应的 ip 路由(这一步 wireguard 一般自动添加。)
    Ljcbaby
        11
    Ljcbaby  
       58 天前
    wg 的 wiki 里有,分表或者 netns
    snoopygao
        12
    snoopygao  
       58 天前
    先在 A 机里添加一条路由,去往 B 的公网地址走默认网关接口,固化一下 ip route add B-IP.X.X.X/32 via 原网关 , 再启动 wg 后就不会断开了
    snoopygao
        13
    snoopygao  
       58 天前
    在 B 里还需要把内核 foward=1 打开, 并且 iptables 做 snat ,iptables -t nat -A POSTROUTING -o eth0{自己改} -j MASQUERAD
    aphorism
        14
    aphorism  
       57 天前
    把楼上的全部的合起来就差不多了,
    1. A 的 WireGuard 配置文件中的 AllowIP 行写为
    AllowedIPs = 0.0.0.0/1, 128.0.0.0/1

    2. B 作为 VPN 服务器,需要打开包转发并配置 SNAT ,即运行以下命令
    sudo sysctl -w net.ipv4.ip_forward=1
    iptables -t nat -I POSTROUTING -o <your ethernet interface> -j MASQUERAD

    3. 对于在 A 上运行的其他不需要走 B 的网络地址,要加指定路由如下
    ip route add <114.114.114.114> via <192.168.1.1> dev <eth0>

    4. 上例中所有尖括号内的参数都要改为你本机的实际参数。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2451 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 23ms UTC 01:12 PVG 09:12 LAX 18:12 JFK 21:12
    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