BGP(多协议边界网关协议)主要用于 OpenLAN 网关之间实现动态路由互通。通过 BGP 协议,不同网关可以自动交换路由信息,实现跨网关的网络互联和路由学习。
应用场景
多网关动态路由学习:当网络中有多个 OpenLAN 网关时,BGP 可自动发现并学习对端网关的路由信息,无需手动在每台网关上静态添加大量路由。
大型或复杂网络互联:适用于拥有多个站点、分支机构或跨地域的网络环境,实现网关之间的路由自动同步和优化。
路由策略灵活控制:支持针对特定网段进行通告和接收,可精细控制哪些路由在网关之间传递。
客户端跨网关访问:客户端拨入某一网关后,可通过 BGP 动态路由访问其他网关上的内网资源。
开启BGP
开启 BGP 在网关节点界面找到 BGP 功能模块,开启 BGP 服务。开启时需要填写以下信息:
本地 AS 号(纯数字,组网内所有网关的 AS 号不可重复)
路由器 ID(选择网关上的一个 IP 地址,可通过网关命令 ip r 查看所有路由地址,确保该 ID 在组网内可达,且是直连网络ip)

配置 BGP 邻居
两端网关均开启 BGP 后,需要在每一端添加对端网关作为邻居。
邻居地址:填写对端网关的路由器 ID
远端 AS 号:填写对端网关的 AS 号
密码(可选):两端需保持一致(可不填)

配置完成后,连接状态应变为“成功”。若未成功,可点击“刷新”按钮刷新状态。 可通过命令 openlan network --name bgp ls 在网关容器中查看邻居列表、Local AS 和 Route ID 是否生效。
添加通告路由
在拥有目标网段的网关上添加通告路由,使该网段能够被其他网关学习到。
示例:在 14 网关(拥有 192.168.44.0/24 网段)添加通告:
邻居路由器 ID:对端网关的路由器 ID(如 10.10.1.22)
通告网段:192.168.44.0/24 ,如有多个邻居,则每个邻居都需要单独添加一次通告路由。

添加接收路由
在需要访问该网段的网关上添加接收路由,明确允许接收对端的特定前缀。
示例:在 22 网关添加接收:
邻居路由器 ID:对端网关的路由器 ID(如 10.10.1.14)
前缀:192.168.44.0/24 配置完成后,在接收端网关执行 ip route 可看到新增的路由条目。

客户端路由配置
客户端需拨入支持该路由的网关(例如拨入 22网关)。 在客户端所在的虚拟网络中添加路由:
目标网段:192.168.44.0/24(或使用默认路由 0.0.0.0/0)
下一跳:local(本地网关) 虚拟网络需开启 OpenVPN 子网(例如 100.255.25.0/24)。
SNAT 配置 为确保跨网关访问正常,两端网关的虚拟网络均需开启 SNAT 功能,实现地址转换。
如果14网关路由列表中不存在客户端网段,则需要在14网关上额外添加客户端网段的接收路由;在22网关上添加客户端网段的通告路由。

注意:使用默认路由 0.0.0.0/0 时,客户端所有流量都会走 VPN,可能导致本地网络访问中断,请谨慎使用。
注意事项
关闭 BGP 前,需先将所有 BGP 邻居的发送/接收路由进行撤销,避免路由残留。
撤销邻居并重新启用后,需要手动重启本端 BGP 路由才能生效。
确保组网内所有网关的路由器 ID 可以通过现有路由互相可达。
BGP 配置完成后,网关会自动与邻居建立会话并交换路由信息。通过 openlan network --name bgp ls 可在网关容器内查看通告路由(advertis)和接收路由(receives)列表。
免费使用
IRIS-Cloud 提供个人永久免费版(1节点3客户端)。完成企业认证后可免费扩容至3节点10客户端。如需更多节点或高级功能,可选择升级至专业版或企业版。
如果您在部署过程中遇到任何问题,欢迎随时联系我们的技术支持团队。您可以通过在线客服、邮件或电话获得帮助,我们承诺在工作时间内 30 分钟内响应。

