WireGuard 远程组网的问题 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
blueboyggh
V2EX    问与答

WireGuard 远程组网的问题

  •  
  •   blueboyggh 2022-08-05 09:41:19 +08:00 4362 次点击
    这是一个创建于 1172 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我家里有一台 Ubuntu 的服务器,我想在外网连接到服务器上去,想使用 WireGuard ,家中网络有公网 IP

    现在服务器已经安装好了 WG ,外网也能连上去了,但是目前的配置是外网终端的所有流量都走 WG 了,如果我想外网终端只有访问家里服务器的时候才走 WG ,其他流量还走原有网络,应该怎么设置?

    以下是我的外网终端配置:UBUNTU 服务器的 WG 地址是 192.168.190.1

    [Interface] PrivateKey = XX Address = 192.168.190.2/32 DNS = XX

    [Peer] PublicKey = XX PresharedKey = XX AllowedIPs = 0.0.0.0/0 (这里我尝试过改成 192.168.190.0/24 ,这样确实流量走原有网络了,然而并 ping 不通 192.168.190.1 ) Endpoint = XX

    具体应该怎么修改设置或者做其他的配置呢?

    25 条回复    2022-08-05 14:30:18 +08:00
    dcty
        1
    dcty  
       2022-08-05 09:47:40 +08:00 via Android   1
    有公网直接弄个 ss 也行
    blueboyggh
        2
    blueboyggh  
    OP
       2022-08-05 09:51:28 +08:00
    @dcty ss 的话,我外网终端还要科学的,会冲突吧
    dcty
        3
    dcty  
       2022-08-05 09:58:47 +08:00
    @blueboyggh #2
    不会的,直接分流就好了。
    DOMAIN,google.com,翻墙节点
    ....
    IP-CIDR 192.168.0.0/16,SS_Home
    IP-CIDR 10.0.0.0/8,SS_Home
    IP-CIDR 172.16.0.0/12,SS_Home
    blueboyggh
        4
    blueboyggh  
    OP
       2022-08-05 10:01:29 +08:00
    @dcty 谢谢,我用的是 V2ray ,而且是浏览器插件分流的,所以 SS 这种可能还是不太适合我
    dcty
        5
    dcty  
       2022-08-05 10:08:17 +08:00
    @blueboyggh #4
    好的。
    但是我想说的是,v2ray 的分流规则也是可以这么干的。
    blueboyggh
        6
    blueboyggh  
    OP
       2022-08-05 10:13:08 +08:00
    @dcty 嗯,我明白,主要是我怕配置错了,然后国内流量也科学了
    yyysuo
        7
    yyysuo  
       2022-08-05 10:18:14 +08:00   1
    你家里的分流规则做好,在内网的任意一台设备上搞个 wireguard ,就算所有的流量都回家,也是分流好的啊。我现在就直接用 vpn 回家。
    blueboyggh
        8
    blueboyggh  
    OP
       2022-08-05 10:19:39 +08:00
    @yyysuo 所有流量都回家,我外网终端访问互联网就要绕一次家里,速度就慢了啊
    SenLief
        9
    SenLief  
       2022-08-05 10:26:14 +08:00
    没太看懂,你家里用公用 IP ,那直接用外网的链接服务器不就好了嘛?外网和家里没必要打隧道吧。
    6IbA2bj5ip3tK49j
        10
    6IbA2bj5ip3tK49j  
       2022-08-05 10:30:58 +08:00   1
    allowed ips 那儿填写你 ubuntu wg ip 和内网网段。
    举例:
    allowed ips: 192.168.255.1/32, 192.168.2.0/24,
    spirit1002
        11
    spirit1002  
       2022-08-05 10:35:39 +08:00   1
    `这里我尝试过改成 192.168.190.0/24 ,这样确实流量走原有网络了,然而并 ping 不通 192.168.190.1 )`

    同时要把上面的 Address 从 192.168.190.2/32 改成 192.168.190.2/24
    blueboyggh
        12
    blueboyggh  
    OP
       2022-08-05 10:43:05 +08:00
    @SenLief 主要是我还想连上家里的 NAS
    SenLief
        13
    SenLief  
       2022-08-05 10:52:59 +08:00   1
    @blueboyggh 你家里有公网 ip ,那只需要在路由器配置 upnp 或者自己端口映射就可以了。
    Tink
        14
    Tink  
    PRO
       2022-08-05 10:54:43 +08:00 via Android   1
    路由表有点问题吧,应该是你家里内网的路由信息在最上面,然后指定下一跳走 wireguard ,其他的路由信息在这个后面,默认就行
    mcluyu
        15
    mcluyu  
       2022-08-05 11:04:04 +08:00   1
    建议把 WG 的子网和你的服务器局域网分开网段, 我之前也是全设一个网段没搞通,不一定是这个问题但是可以试一下, 我的客服端配置:

    [Interface]
    PrivateKey = XXX
    Address = 10.10.10.2/32
    DNS = 114.114.114.114

    [Peer]
    PublicKey = XXXX
    PresharedKey = XXXX
    AllowedIPs = 192.168.31.0/24, 10.10.10.1/24
    Endpoint = XXXX
    PersistentKeepalive = 25
    blueboyggh
        16
    blueboyggh  
    OP
       2022-08-05 11:16:26 +08:00   1
    @SenLief 端口映射的话,SMB 共享用不了,又不想把 SMB 暴露到公网
    blueboyggh
        17
    blueboyggh  
    OP
       2022-08-05 11:16:35 +08:00
    @spirit1002 好像可以了,感谢!
    yyysuo
        18
    yyysuo  
       2022-08-05 11:17:37 +08:00
    @blueboyggh wireguard 就是全局的,配规则很麻烦,所以建议你用 ss 或者 v2ray 什么的,默认的规则就可以。
    villivateur
        19
    villivateur  
       2022-08-05 11:32:03 +08:00   1
    服务端有个 Route Allowed IPs 选项,如果客户端要访问同一个服务器的其他网段,建议也开一下
    me221
        20
    me221  
       2022-08-05 11:41:55 +08:00   1
    AllowedIPs = 你的 wg 网段,你的家庭网段

    就可以了

    WireGuard 组网教程: https://www.procustodibus.com/blog/2020/11/wireguard-point-to-site-config
    yohole
        21
    yohole  
       2022-08-05 12:04:42 +08:00   1
    你这个问题我这两天刚解决了,看下我说的对不对
    1.wireguard 只能解决都有有安装 wireguard 软件的终端组网,形成一个局域网,任何没有安装 wireguard 客户端的终端想通过公网 IP 访问 wireguard 内网,这个很简单,本身就支持,只需要 iptable 设置端口转发就行

    2.如果不在 wireguard 内网的终端想访问 wireguard 内网中,任意一台服务器另外所在的局域网(暂时称为 eth0 网卡所在的网段吧),这个时候可以简单地在有公网 IP 的那台服务器简单搭建一个 SS 或者 tinyproxy 都可以解决

    3.然后通过设置 AllowedIPs ,以增加路由表的方式也是可行,但是有很多限制和灵活度不高,有一些需求实现不了,所以我觉得有公网 IP 的话,其实不用 wireguard 都行,直接搭建 SS 之类的就好
    blueboyggh
        22
    blueboyggh  
    OP
       2022-08-05 12:33:50 +08:00
    @yohole 感谢,用楼上那个把 Address 也改成 /24 的方法已经成功了,不过还是很感谢
    bjfane
        23
    bjfane  
    PRO
       2022-08-05 13:55:43 +08:00   1
    32 就是一个具体的 ip, 24 就是这个网断, 在 wg 叫 remote access to lan.
    zhixiao
        24
    zhixiao  
       2022-08-05 14:19:35 +08:00   1
    我是通过 surge 分流配置的
    pcbl
        25
    pcbl  
       2022-08-05 14:30:18 +08:00 via Android   1
    统一走家里服务器也不算慢(感觉是不慢),顺便还能共用软路由的梯子。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     5498 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 26ms UTC 07:11 PVG 15:11 LAX 00:11 JFK 03:11
    Do have faith in what you're doing.
    ubao msn 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