BGP配置

偶尔需要用用,先顶了。
原文地址:BGP配置 作者:晓行夜宿
    启用BGP步骤:
    1.启用BGP进程
    Router(config)#router bgp {AS-number}
    #BGP进程在一个路由器中只能启用一个
    2.指定BGP邻居
    Router(config-router)#neighbor {ip-address} remote-as {AS-number}
    #ip-address通常是对端接口号
    3.定义要宣告的网络
    Router(config-router)#network {network-number} [mask mask]
    #视有无需要宣告的网络号而定

    关闭同步特性:
    Router(config-router)#no synchronization

    更改下一跳属性为自己:
    当EBGP对等体宣告更新给EBGP邻居,更新传到IBGP时,下一跳属性是不变的(或者可以通过路由学习改变这种情况)。
    Router(config-router)#neighbor {ip-address} next-hop-self

    配置BGP管理权重(也可以通过route-map设置):
    Router(config-router)#neighbor {ip-address} weight {weight}

    配置本地优先级(也可以通过route-map设置):
    Router(config-router)#bgp default local-preference {local-preference}

    配置MED属性(也可以通过route-map设置):
    1.指定MED属性:
    Router(config-router)#default-metric {metric}
    2.默认BGP只比较来自相同外部AS的BGP路由更新的MED属性。启用比较来自不同的AS的BGP路由更新的MED属性,可选:
    Router(config-router)#bgp always-compare-med

    使用回环接口建立BGP邻居关系,进行负载均衡:
    一般物理接口可能存在不稳定的情况,比如接口震荡造成邻居关系的震荡,而回环接口是很稳定的,所以可以用回环接口建立邻居关系。需要注意的是:a.对于EBGP,要指定多跳关系;b.要确保本地BGP路由器的IGP路由表中有到达邻居回环接口的路由;c.为防止路由环路,如果到达多条对等体的路由是默认路由(0.0.0.0/0),邻居关系式不会建立的。   
    1.定义跳数TTL,默认值为255(针对EBGP,BGP默认需要直连,此时EBGP的TTL更新值为1,使用回环接口相当于增加了跳数):
    Router(config-router)#neighbor {ip-address} ebgp-multihop [ttl]
    2.使用回环接口建立TCP会话:
    Router(config-router)#neighbor {ip-address} update-source lookback {number}

    BGP路由汇总:
    当路由更新经过主类网络边界的时候,会自动向主类网络号汇总。BGP是增强型的路径矢量路由协议,路由自动汇总特性是BGP默认的操作。BGP可以关闭改特性,而且可以进行手动的路由汇总。
    1.关闭BGP路由的自动汇总特性:
    Router(config-router)#no auto-summary
    2.BGP手动的路由汇总。
    Router(config-router)#aggregate-address {ip-address} {mask} [as-set] [summary-only] [remote-map map-name]
    #as-set,对于汇总路由,没有as-set,经常会丢失一些AS-PATH属性。
    #当使用了关键字summaey-only之后,本地BGP的细致路由全部被抑制,并且在BGP表中以s进行标记。
不指定时,汇总路由和细致路由将一起被传送。

    BGP对等体组:一组享有先同路由策略的邻居的集合,对等体组里的每个觉得继承对等体组的路由策略。也可以单独对组里的某个角色设置超越对等体组全局的路由策略,但是这些策略只能影响进站的路由更新。
    1.定义对等体组名:
    Router(config-router)#neighbor {group-name} peer-group
    2.把角色分配进对等体组:
    Router(config-router)#neighbor {ip-address} peer-group {group-name}
   
    验证BGP信息:

    Router#show ip bgp summary
    #TblVer,BGP信息刷新或者震荡一次,TblVer递增一次
    Router#show ip bgp
    Router#show ip bgp neighbor
    #BGP state = Established ,表示完全邻接
### 关于 BGP 配置的相关信息 BGP(Border Gateway Protocol)是一种外部网关协议,主要用于互联网自治系统之间的路由选择。以下是基于提供的引用内容以及专业知识整理的有关 BGP配置教程和示例。 #### 1. **R2 上启用 BGP 调试并初始化软刷新** 在路由器上调试 BGP 是一种常见的操作方式,可以通过以下命令实现: ```bash debug ip bgp updates inbound clear ip bgp * soft in ``` 上述命令分别启用了入向 BGP 更新消息的调试功能,并执行了入向 BGP 软刷新操作[^1]。此方法适用于 Cisco IOS 设备或其他兼容 CLI 命令集的网络设备。 #### 2. **SONiC 系统中的 BGP 配置** 对于运行 SONiC 操作系统的交换机或服务器,默认使用的 BGP 实现已经从 Quagga 迁移到 FRRouting (FRR)[^2]。因此,在现代版本中,推荐使用 `vtysh` 工具来完成 BGP 配置: ##### 示例:基本 BGP 配置 ```bash configure terminal router bgp 65001 neighbor 192.168.1.2 remote-as 65002 address-family ipv4 unicast exit-address-family exit write memory ``` 在此示例中,AS 编号设置为 65001,邻居地址为 192.168.1.2,远程 AS 编号为 65002。注意,如果仍在使用旧版 Quagga,则需替换命令头部分为 `show ip bgp`。 #### 3. **NetBox 中的 BGP 插件管理** NetBox 提供了一个强大的插件框架,其中 BGP 插件允许管理员集中化管理复杂的 BGP 对象关系,例如社区、会话、路由策略等[^3]。安装完成后可通过 Web UI 或 API 接口定义这些参数。 ##### 安装步骤摘要 - 使用 pip 安装依赖项; - 将插件路径加入到 NetBox 设置文件中; - 应用数据库迁移脚本以更新模式结构。 具体命令如下所示: ```bash pip install netbox-bgp echo 'PLUGINS = ["netbox_bgp"]' >> /etc/netbox/configuration.py python manage.py migrate ``` #### 4. **通用注意事项** 无论采用何种平台实施 BGP 配置,都应遵循最佳实践原则,比如合理规划 AS 编号分配范围、定期验证连接状态以及记录变更历史以便后续审计分析。 --- ###
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值