xqdoo00o
V2EX  ›  问与答

Openwrt 的 Wireguard 客户端问题

  •  
  •   xqdoo00o · Mar 15, 2021 · 2976 views
    This topic created in 1884 days ago, the information mentioned may be changed or developed.
    Openwrt 是主路由,lan 网段是 192.168.1.0/24.
    Wireguard 在 Openwrt 作为客户端 连接国内 vps 使用,网段是 10.0.1.0/24.
    当 AllowedIps 是 0.0.0.0/0 时,网络正常,外网 ip 是 vps 的 ip.
    把 AllowedIps 改为电脑 IP 192.168.1.145 后,电脑就断网了,甚至无法 ping 通网关 192.168.1.1 。
    求教下 Openwrt 要怎么设置才只让电脑走 Wireguard,其他的设备不走?
    5 replies    2021-11-27 14:47:13 +08:00
    billlee
        1
    billlee  
       Mar 15, 2021
    这个需要策略路由

    AllowedIps 是 wireguard 的节点 IP 白名单,是要设置成外网 IP 或 wildcard 地址的。
    trepwq
        2
    trepwq  
       Mar 15, 2021
    只让电脑走 wireguard 为什么不用电脑客户端呢
    xqdoo00o
        3
    xqdoo00o  
    OP
       Mar 15, 2021
    @billlee
    尝试 openwrt 上设置了下策略路由
    iptables -t mangle -A PREROUTING -s 192.168.1.145 -j MARK --set-mark 100
    ip route add default via 10.0.1.1 dev wg0 table pc
    ip rule add fwmark 100 table pc
    测试结果是电脑能上网,但是没有走 Wireguard,ip 还是电信 ip.
    xqdoo00o
        4
    xqdoo00o  
    OP
       Mar 15, 2021
    忘了在 openwrt 上设置 Allowed IPs = 0.0.0.0/0 了,还得把 Route Allowed IPs 关掉。
    不用 iptables 也行
    ip route add default via 10.0.1.1 dev wg0 table pc
    ip rule add from 192.168.1.145 table pc
    现在已经可以了
    l18581707928
        5
    l18581707928  
       Nov 27, 2021
    你好我也想要实现这样得需求 请问你具体是怎么解决得呢?
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5682 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 36ms · UTC 07:01 · PVG 15:01 · LAX 00:01 · JFK 03:01
    ♥ Do have faith in what you're doing.