想做 routeros site to site 内网互通,有什么可用的方案吗? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
mrzx
V2EX    宽带症候群

想做 routeros site to site 内网互通,有什么可用的方案吗?

  •  
  •   mrzx 2023-03-12 00:22:23 +08:00 4543 次点击
    这是一个创建于 997 天前的主题,其中的信息可能已经有所发展或是发生改变。

    2 套房子用的都是 routeros 的设备,都有公网 IPV4 地址,只是都是动态的,需要使用 ddns 我想把 2 套房子里的内网全部路由打通。

    打算 ipsec 加密,直接互指 pper 方式,发现配置不起来,目标 IP 是填不了域名,只能填 IP 地址,而公网 IP 地址是会变化的吗

    请问 有没有即可以 site to site 互联,且还支持动态公网 IP 的 VPN 类型?或者类似方案?

    38 条回复    2023-03-14 14:38:06 +08:00
    BH1SMB
        1
    BH1SMB  
       2023-03-12 00:24:41 +08:00
    群晖貌似有 Site2Site
    dfly0603
        2
    dfly0603  
       2023-03-12 00:29:52 +08:00   1
    WireGuard ?
    scitec
        3
    scitec  
       2023-03-12 01:21:38 +08:00
    Meraki 方案?
    scitec
        4
    scitec  
       2023-03-12 01:22:34 +08:00   1
    我使用的 Meraki 方案,自动 site to site VPN ,接口为动态 ip 地址。
    Liku
        5
    Liku  
       2023-03-12 01:41:16 +08:00 via iPhone   1
    eoip 或者 gre 都行
    flyingfishzxf
        6
    flyingfishzxf  
       2023-03-12 01:49:28 +08:00 via Android   1
    买个域名,ddns+wireguard 吧
    Liku
        7
    Liku  
       2023-03-12 01:49:40 +08:00 via iPhone
    sentivcn
        8
    sentivcn  
       2023-03-12 02:55:13 +08:00   1
    eoip gre ipip wireguard 隧道都可以填域名
    gux928
        9
    gux928  
       2023-03-12 07:09:47 +08:00 via iPhone   1
    ddns+wireguard,ipv6,我这移动没有公网 v4
    teky
        10
    teky  
       2023-03-12 09:01:52 +08:00 via iPhone   1
    为了简单配置,我准备上 arm64+ zerotier
    dude4
        11
    dude4  
       2023-03-12 09:51:26 +08:00   1
    联通+电信+wireguard+ipv6+CF 的 DDNS 一直在用,两边网关都是 op ,装 wireguard 包很方便,还自带 watchdog 保活
    两边拨号 /重启后只要 CF 的 DDNS 及时更新都可以很快自动重连,网关设置 allowed ip 还可以分别限制互访权限,配合静态路由可以做到访问对面的下级网络
    缺点是基于 UDP ,目前发现即使是 ipV6 也时不时被 QOS ,传大文件还是要 webdav 直接暴露外网
    mouyong
        12
    mouyong  
       2023-03-12 09:53:50 +08:00
    有,openvpn 。欢迎联系我~


    winbox
        13
    winbox  
       2023-03-12 10:03:19 +08:00 via iPhone   1
    内网用 sstp 组网就行了
    memorybox
        14
    memorybox  
       2023-03-12 10:06:35 +08:00   1
    我们家做的小工具支持这种场景;但是遗憾的是目前只能在 openwrt 上部署;楼主有兴趣的话可以看一下文档,看看有没有帮助,连接:
    https://happyncn.feishu.cn/wiki/wikcn4131WTejreKoXrL5nLlCZd
    mandymak
        15
    mandymak  
       2023-03-12 10:12:41 +08:00   1
    @mrzx eoip 或 gre over ipsec 就可以,DDNS 用 3322 ,免费的。
    mrzx
        16
    mrzx  
    OP
       2023-03-12 12:59:55 +08:00
    谢谢楼上各位。

    routeros 自带 wireguard,我试试看吧。
    piku
        17
    piku  
       2023-03-12 14:14:36 +08:00 via Android   1
    在用,ros 的 ipip 协议和 eoip 协议可以用域名。
    piku
        18
    piku  
       2023-03-12 14:18:20 +08:00 via Android   1
    不对啊看了一下我家 ros 的一组 IPSec 就是走的域名连接啊,你版本不对吧
    JoeoooLAI
        19
    JoeoooLAI  
       2023-03-12 15:19:26 +08:00   1
    既然有公网 那 wireguard 应该是最好了
    ilylx2008
        20
    ilylx2008  
       2023-03-12 15:50:08 +08:00   1
    找一个 ros 作为服务端,开个 ppp 或者 l2tp ,另一个客户端连上,配下路由就行了。ovpn 的话稍微麻烦点。
    mrzx
        21
    mrzx  
    OP
       2023-03-12 18:50:39 +08:00
    @piku V7 版本 IP-IPsec-Peers-New IPsec Peer 里,local Address 这不能填域名,只能填自己本地的公网 IP (但我这个 IP 地址肯定会变化的吗)你的意思是 local Address 这项根本不用填?只填对面的 Adress 即可?这个倒是可以填域名
    mrzx
        22
    mrzx  
    OP
       2023-03-12 19:40:33 +08:00
    @piku 哈哈,搞定了,设置感兴趣流和 NAT 就行了,等会我把配置贴上来,希望能帮助更多人。
    mrzx
        23
    mrzx  
    OP
       2023-03-12 19:57:43 +08:00
    第一套房子内网网段 192.168.58.0/24 第 2 套房子内网网段 192.168.18.0/24
    第一套房子的公网公网域名是 xxx.3322.org 第 2 套房子公网动态域名 aaa.3322.org

    第一套房子配置
    /ip ipsec peer
    add address=aaa.3322.org name=aaa
    /ip ipsec identity
    peer=aaa auth-method=pre-shared-key secret="123456xx" generate-policy=no
    /ip ipsec policy 设置感兴趣流
    add dst-address=192.168.18.0/24 peer=aaa src-address=192.168.58.0/24 tunnel=yes

    想互通,得做 NAT
    add action=accept chain=srcnat dst-address=192.168.18.0/24 src-address=192.168.58.0/24
    记住,这个 NAT 也是有优先级的,优先级必须调成最首位的


    第二套房子配置
    /ip ipsec peer
    add address=xxx.3322.org name=xxx
    /ip ipsec identity
    peer=xxx auth-method=pre-shared-key secret="123456xx" generate-policy=no
    /ip ipsec policy 设置感兴趣流
    add dst-address=192.168.58.0/24 peer=xxx src-address=192.168.18.0/24 tunnel=yes

    想互通,得做 NAT
    add action=accept chain=srcnat dst-address=192.168.58.0/24 src-address=192.168.18.0/24
    记住,这个 NAT 也是有优先级的,优先级必须调成最首位的
    neroxps
        24
    neroxps  
       2023-03-12 20:17:13 +08:00 via iPhone
    emmm 我老爸家普通 wifi 路由器,刷老毛子的系统用 l2tp 和 ros 打通 丝滑的一批。
    neroanelli
        25
    neroanelli  
       2023-03-12 21:43:15 +08:00   1
    我两台 routeros ,其中一台有公网 ipv4 ,直接用 openvpn 组的 site2site ,ovpn 可以配置路由,连接之后就可以互相访问了。
    huaes
        26
    huaes  
       2023-03-12 22:02:32 +08:00   1
    自从路由器支持 wireguard 后就放弃 openVPN 了,因为 wireguard 可以手动选择优先 IPV6
    mrzx
        27
    mrzx  
    OP
       2023-03-12 22:08:27 +08:00
    谢谢楼上各位。
    看来方案也不少,各有各的长处
    1.最传统的 ipsec peer
    2.openvpn
    3.wireguard
    4.l2tp ipsec tunnel
    JoeoooLAI
        28
    JoeoooLAI  
       2023-03-13 11:35:55 +08:00   1
    @mrzx
    其实 4 种协议都真的用起来只有资源消耗上差别而已,如果你的 ros 是 x86 无需考虑资源消耗,你选个顺手的来用就行。

    openvpn 还有个小好处是可以 tcp 模式,如果 udp 被 qos ,tcp 模式就发挥作用了,但墙内而且是同一运营商这个就无所谓了。

    我个人感觉 wireguard 在 有一方不是公网 ip 的情况最容易配置,没有其他那么繁琐。(不过这个优点也不适合 op 目前情况
    SgtPepper
        29
    SgtPepper  
       2023-03-13 11:45:00 +08:00
    我 ros 上开了 IKEv2 ,有公网 IP ,ikev2 的服务器名就用的 ros 自带的 ddns 注册的域名
    不过我是给办公电脑 win10 用的
    flyingfishzxf
        30
    flyingfishzxf  
       2023-03-13 12:06:41 +08:00   1
    https://github.com/Nyr/wireguard-install
    WireGuard 一键安装脚本,超简单,准备一台 24 小时运行的虚拟机,运行脚本,填上几个简单的参数,把生成的客户端配置直接在另一台设备上粘贴连接就搞定啦。
    我折腾 OpenVPN 了好几天,都没搞定,WireGuard 的一键脚本很快解决了
    galaxyskyknight2
        31
    galaxyskyknight2  
       2023-03-13 12:26:38 +08:00
    ntop n2n
    jikky
        32
    jikky  
       2023-03-13 16:21:51 +08:00   1
    IP 也可以解决,你自己做个脚本 5 分钟检测下域名,然后把转换的 IP 配过去不就 OK 了。
    况且你的这个 PPPOE 也不会无故断掉。
    这个就跟你 DDNS 一个道理。
    jikky
        33
    jikky  
       2023-03-13 16:30:15 +08:00   1
    :global natout1 [:resolve www.google.com server=223.5.5.5]
    ip ipsec peer set [find name=peer1] local-address=$natout1

    在系统计划里面运行,5 分钟一次。
    mrzx
        34
    mrzx  
    OP
       2023-03-14 10:35:09 +08:00
    @jikky 可以,这个好,可以借用一下,在 ddns 失效的时候,做备份方案,我在研究下如何每次检测接口的 IP 后,自动发送到我的邮箱里。
    briancao
        35
    briancao  
       2023-03-14 11:35:11 +08:00
    @mrzx 我家里也是 2 台 routeros 组网,直接 wireguard 互联打通,ddns 直接就用的 routeros 自带的,但是目前碰到 2 个问题,1.wireguard 不支持组播的跨网 2.基于 udp 的 wireguard 容易被限速
    mrzx
        36
    mrzx  
    OP
       2023-03-14 13:16:54 +08:00
    @briancao 看看是否能采用 IGMP 协议解决组播的问题?
    mrzx
        37
    mrzx  
    OP
       2023-03-14 13:20:46 +08:00
    @briancao 我 DDNS 用的是脚本实现的,我共享出来给大家吧。

    :local ednsuser "用户名"
    :local ednspass "密码"
    :local ednshost "xxxxx.3322.org"
    :local ednsinterface "pppoe-out1"
    :local members "http://members.3322.net/dyndns/update?system=dyndns"
    :local status
    :local status [/interface get [/interface find name=$ednsinterface] running]
    :if ($status!=false) do={
    :local ednslastip [:resolve $ednshost]
    :if ([ :typeof $ednslastip ] = nil ) do={ :local ednslastip "0" }
    :local ednsiph [ /ip address get [/ip address find interface=$ednsinterface ] address ]
    :local ednsip [:pick $ednsiph 0 [:find $ednsiph "/"]]
    :local ednsstr "&hostname=$ednshost&myip=$ednsip"
    :if ($ednslastip != $ednsip) do={/tool fetch url=($members . $ednsstr) mode=http user=$ednsuser password=$ednspass
    :delay 2
    :local result [/file get $ednshost contents]
    :log info ($ednshost . " " .$result)
    /file remove $ednshost;
    }
    }


    记得把脚本调成定时执行即可。时间不宜太频繁,会触发 3322 站点的黑名单机制。建议在 1 小时以上的间隔时间。
    mandymak
        38
    mandymak  
       2023-03-14 14:38:06 +08:00
    @briancao eoip over wireguard 试试
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     4323 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 30ms UTC 04:04 PVG 12:04 LAX 20:04 JFK 23:04
    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