V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
whyorwhynot
V2EX  ›  宽带症候群

ros 软路由异地组网

  •  
  •   whyorwhynot · 2020-08-07 10:46:00 +08:00 · 6325 次点击
    这是一个创建于 1329 天前的主题,其中的信息可能已经有所发展或是发生改变。

    楼主最近遇到了一个使用场景,需要让两地的局域网可以互相访问,于是寻找异地组网的方法。

    因为是网络小白,网上搜了搜决定两地使用 RouterOS Cloud Hosted Router 虚拟机建立 pptp 隧道,搭建旁路网关,宿主机为 e5-2670v3 的服务器,配置了 8 个 vcpu 。

    经过一番折腾网络终于通了,但是使用 iperf3 测速,发现只有 60mbps 的速度(两地间带宽都是千兆的上下行),测速时 ros 显示 CPU 使用率达到 80%,查询了 ros 官网,根据 https://rickfreyconsulting.com/mikrotik-vpns/ pptp 隧道貌似就这么慢,这与我的直觉差距很大,因为使用 openwrt 透明路由转发可以达到 500mbps 的速度。ros 官网指出 ipsec 的速度很快,但是搜索的 ros ipsec 教程都是 ip tunnel 之类的,搭建了 ip tunnel 隧道依旧是不到 100mbps 的速度。想请教一下大家隧道是不是真的就这么慢,大家又是用的什么异地组网方案(开源、傻瓜最好了),能跑满千兆吗?

    21 条回复    2020-08-24 17:11:52 +08:00
    Xusually
        1
    Xusually  
       2020-08-07 10:50:12 +08:00
    有没有可能是运营商协议限速,QoS ?
    terrancesiu
        2
    terrancesiu  
       2020-08-07 10:50:38 +08:00
    我同城 3 点组网,全部用的 gre,没有加 ipsec,用最垃圾的 mikrotik 设备,也能跑 200m 上下行。你可以测下两地之间的 udp,如果 udp 很好,那么可以考虑 GRE over IPEsec 。
    whyorwhynot
        3
    whyorwhynot  
    OP
       2020-08-07 10:59:16 +08:00
    @Xusually 这个不会,因为两地都是走自建的大内网,ros 的 cpu 利用率也很高
    whyorwhynot
        4
    whyorwhynot  
    OP
       2020-08-07 11:07:36 +08:00
    @terrancesiu 换了 gre tunnel,测速 60mbps,cpu 利用率 85%。。
    terrancesiu
        5
    terrancesiu  
       2020-08-07 11:37:41 +08:00
    @whyorwhynot 先用 ros 自带的工具针对公网 ip 进行 udp/tcp 端对端打流测测。也看看 cpu 。然后在隧道内进行端对端打流
    kennylam777
        6
    kennylam777  
       2020-08-07 11:37:55 +08:00
    自建的大內網,根本就是 IPSec Site-to-Site tunnel 的理想場境, GRE over IPSec 應該是不用的,以這樣的 CPU 即使沒有 AES-NI 都應該能跑 500Mbps 。不要用 PPTP 了這東西是過時的,而且主要是 client-to-site 的 NAT 方案,跑 Site-To-Site 是自討苦吃。

    只問一句,IPSec tunnel 內的 MTU 值是?有做 MSS Clamping 嗎?

    可以在 client 先用 iperf3 -M 1280 限住 MTU 測測看
    chinawrj
        7
    chinawrj  
       2020-08-07 13:41:30 +08:00
    wireguard ?估计 openvpn 都比你这个强。
    yingfengi
        8
    yingfengi  
       2020-08-07 14:43:58 +08:00 via Android
    为何不用 IPSec ?
    cest
        9
    cest  
       2020-08-07 14:45:45 +08:00
    不会是用了 policy routing 又开了 fast track 吧
    不过有 fast track, 60Mbps cpu 不该这麽高
    reset, 做最简设置看看 cpu 用多高
    mason961125
        10
    mason961125  
       2020-08-07 18:53:53 +08:00 via iPhone
    ros 现在还没 wg 支持吧,不过为啥不用 eoip 呢?
    ericbize
        11
    ericbize  
       2020-08-07 20:50:58 +08:00   ❤️ 1
    ros 自带的 EOIP 可以达到使用场景, 跨越公网的时候考虑使用 ,l2tp, 应该速度可以了。

    sstp 和 openvpn 的 cpu 消耗有点大, 我在云上面 双核 可以跑到 400Mbps 64 的小包, 你调一下别的参数试试
    ericbize
        12
    ericbize  
       2020-08-07 20:52:34 +08:00
    pptp 使用的是 gre tunnel,eoip 也是使用 gre 封装的, 不知道重叠会不会很大损耗。 7.0 版本支持 vxlan,可以考虑去尝鲜, 反正虚拟机,不行就重启一台新的好了。
    whyorwhynot
        13
    whyorwhynot  
    OP
       2020-08-07 22:14:39 +08:00
    @kennylam777 ros 系统重置了,配置了 ipsec tunnel,参数都是默认,速度还是只有 60mbps 左右,iperf3 -M 1280 也是一样。折腾过程中调小了一个路由规则涉及的 ip 范围,iperf3 tcp 单线程速度可以跑到 500mbps 了。但是 udp 不知道为啥才 1mbps 。。。
    jousca
        14
    jousca  
       2020-08-07 23:43:45 +08:00
    @whyorwhynot 运营商对 UDP 有时候有 QOS 规则。因为那东西不像 TCP 有连接,也没有流控能力。
    kennylam777
        15
    kennylam777  
       2020-08-08 03:12:58 +08:00 via iPad
    @whyorwhynot 很簡單,iperf3 udp default 1Mbps, 請用-b
    mandymak
        16
    mandymak  
       2020-08-08 08:35:16 +08:00
    @whyorwhynot 千兆上下行?你的宽带是在境外?亲测 ros 实体 x86 pptp 跑满 300M 不成问题。
    Actrace
        17
    Actrace  
       2020-08-08 08:38:51 +08:00
    openvpn 比较简单。现成的解决方案。
    whyorwhynot
        18
    whyorwhynot  
    OP
       2020-08-08 15:19:49 +08:00
    @kennylam777 惊讶
    lin559671
        19
    lin559671  
       2020-08-10 00:49:49 +08:00 via Android
    @terrancesiu 最垃圾的 rb941 你跑个 200M 来看看。我反正各种协议死活过不了 60M
    fastcache
        20
    fastcache  
       2020-08-17 00:57:44 +08:00
    不如用 SRv6
    thtznet
        21
    thtznet  
       2020-08-24 17:11:52 +08:00
    你问题解决了么?我最近也发现用 IP Tunnel 连接 2 端,测试速度只有 2 ~ 4 Mbps(家宽),于外网上行差距巨大。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   952 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 21:06 · PVG 05:06 · LAX 14:06 · JFK 17:06
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.