# BGP 邻居建立与路由宣告 ## 场景 和运营商做双线接入、和另一家公司做互联、或者机房多出口需要 BGP。 ## 前置条件 - 双方约好 AS 号、互联 IP 和要宣告的网段 - 底层能互通(静态路由或直连) - 知道对方对前缀长度和数量的限制 ## 配置 ### H3C ```text system-view bgp 65001 router-id 10.0.0.1 peer 10.0.0.2 as-number 65002 address-family ipv4 unicast network 192.168.10.0 255.255.255.0 peer 10.0.0.2 enable quit quit ``` ### 华为 ```text system-view bgp 65001 router-id 10.0.0.1 peer 10.0.0.2 as-number 65002 ipv4-family unicast network 192.168.10.0 255.255.255.0 peer 10.0.0.2 enable quit quit ``` ## 验证 ```text display bgp peer display bgp routing-table ipv4 display ip routing-table ``` 邻居状态要到 `Established`;`Active` 表示 TCP 179 没建起来。 ## 回滚 ```text undo bgp 65001 ``` 撤掉进程会同时撤掉它宣告的路由,先确认流量不依赖。 ## 坑 - **只写 `network` 不写 `peer ... enable`**,路由不往外发。 - `network` 后面必须是**路由表里真实存在**的前缀,不是随便写。 - AS 号写错,邻居一直在 `Idle`/`Active`。 - 没做路由过滤,对方发来几十万条路由把设备压垮。 - 单链路跑 BGP 没有意义,双出口才需要。 - 和运营商对接前先确认他们要求的 MED、AS-Path 策略。