AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 828832
Accepted
Jim Dennis
Jim Dennis
Asked: 2017-01-27 10:47:37 +0800 CST2017-01-27 10:47:37 +0800 CST 2017-01-27 10:47:37 +0800 CST

多宿主 OpenBSD 系统:基于策略的路由与 mpath 默认路由

  • 772

TL;DR OpenBSD 基于策略的路由对多宿主服务器/网关的情况有帮助吗?如果是这样,我该如何配置它?

长表

我正在管理一个带有两个 ISP 链接和通往远程路由节点的 VPN 隧道的 OpenBSD。

最初,我们使用了多个具有不同指标的默认路由——首选路由通过静态 IP 地址和 NAT 路由器,而 NAT 路由器又具有动态分配的地址(它基本上是一个电缆调制解调器)。

在实践中,这并不理想,但效果很好。从网关建立的新连接(以下简称“gw”)如果启动,将选择速度更快、延迟更低的路由;如果链路断开,则通过电缆调制解调器出去。入站连接只能通过更好的路由,因为其他 IP 地址位于 NAT 之后(无法从外部路由。

现在,我们需要通过额外的代理/VPN 路由器节点将流量路由到“云端”,以降低静态 IP 地址上的 DDoS 风险。

那些通过隧道连接到网关。

第一的。然后我们发现我们的管理员访问权限会偶尔下降。

更复杂的是,此网关具有到特定 VLAN 的附加活动接口。他们与这个问题无关,但不能被打扰。

可能的解决方案

我的印象是我们应该使用基于策略的路由rdomains。我想这意味着我为我的三个涉及的接口中的每一个创建路由表,并且其中任何一个(包括tun0隧道接口)上的任何连接都应该通过该域的表进行路由(因此每个都可以有自己的默认路由)。

我在正确的轨道上吗?

这是一个图表和一个经过清理的列表(如果接口设置):

________
| 隧道| _______
 ~+~~~~ | GW |======++
    | ~+~+~+~ ||                   
    | _________ | | | ||                                        
    +-----| prefISP |-------------+ | | __||____ .........               
           ~~~~~~~w~ | +-----| 开关 |-----( 集群 )                           
                                    | ~~~~~~~~ ^^^^^^^^^           
           _________ .....|...... ||                              
          | fallISP |----------( LAN / WiFi )===++
           ~~~~~~~~~ ^^^^^^^^^^^^

    图:通过隧道、首选 ISP 以及访问 GW 或集群(通过 GW 或从 LAN)访问 GW 时,我想避免非对称路由。


 清理界面信息:

    em3:inet 123.45.67.118 网络掩码 0xfffffff8 广播 123.45.67.119 描述:prefISP
    em0:inet 10.1.1.100 网络掩码 0xffffff00 广播 10.1.1.255 描述:fallISP
    tun0:inet 192.168.2.2 --> 192.168.2.1 网络掩码 0xffffff00 描述:隧道
    em1: VLAN_TRUNK
          vlan1000:inet 172.29.1.1 网络掩码 0xffffff00 广播

如前所述:em3是我们到首选(更快)ISP 的链接;tun0通过它;em0与办公室 LAN/Wifi 位于同一网段,作为我们的后备 ISP;并且 GW 具有到集群和交换机的附加链接。

routing multi-homed openbsd policy-routing
  • 1 1 个回答
  • 1788 Views

1 个回答

  • Voted
  1. Best Answer
    Hugo Garcia
    2017-03-22T09:22:58+08:002017-03-22T09:22:58+08:00

    欢迎来到负载均衡的梦想。

    这是可能的,但您最好的路由和无痛模式是使用 BGP 路由协议并使用策略管理下游和上游流量。

    为了成功,您必须与两个 ISP 协商,将您作为内部 iBGP 节点包括在内,以便您可以将路由路径推送到 Internet。

    正确的方法是让您请求自己的自治系统编号。并管理您拥有的所有 IP。由于要求,这有点复杂。

    http://teamarin.net/2014/01/31/how-to-request-an-asn-from-arin/

    如果您符合多宿主政策的条件,则需要提供要使用的外部网关协议、网络上当前使用的 IP 地址、每个上游提供商和/或对等方的 AS 编号和名称以及合同验证至少与其中两个服务。

    如果您符合唯一路由策略的条件,则必须证明 AS 的路由策略将不同于其边界对等点的路由策略。

    无论您符合哪种政策,如果这不是您第一次申请 ASN,您还需要向我们展示您申请 ASN 的网络是如何独立于您网络中所有现有 AS 的。

    这是一篇关于使用 BGP 的多宿主的好论文:http: //aspath.net/BGP-MHing-HOWTO-whitepaper.pdf

    如果您不愿意,无法与您的 ISP 创建 BGP 会话,那么另一种解决方案是购买基于硬件的负载均衡器。(从技术上讲,大多数硬件都运行一些经过修改的 BSD 来实现产品功能。因此,如果您有知识,您可以将其设置在运行 BSD 的服务器上。但您永远不会获得具有专用硬件用于网络处理的硬件设备的 trhoguput ,但是如果您的负载不大(我会说超过 50 Mbps),您可以做到)

    • 0

相关问题

  • 无法通过 Ubuntu VPN 访问外部网络

  • 将路由永久添加到 Solaris 10

  • Quagga 套件中的 ./configure --disable-zebra 代表什么?

  • 使用特定接口进行出站连接(Ubuntu 9.04)

  • Linux TC/策略路由工具

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve