在BGP中使用自治系统这个术语是为了强调这样一个事实:一个自治系统的管理对于其他自治系统而言是提供一个统一的内部选路计划,它为那些通过它可以到达的网络提供了一个一致的描述。
边界网关协议是不同自治系统路由器之间进行通信的外部网关协议,作为EGP替代品。BGP系统之间交换网络的可达到信息。这些信息包括数 据到达这些网络所必须经过的自治系统AS中的所有路径,通过这些信息构造自治系统链接图,然后根据连接图删除选路环,制定选路策略。
下面是干货:
1、看看有没有AS号,没有没有,就压根和BGP没关系
2、全国各地跑跑 测测 看效果说话
3、我用的小鸟云华南BGP,亲测是动态全穿透,可以尝试一下
①点击 http://scan.ipip.net/ipv4/59.153.73.138# (想查询哪个IP链接直接更换对应IP即可)
②首先看WHOIS信息,必须是厂商自己的地址,如果显示电信、联通、移动等信息,则证明是假BGP。比如途隆高防地址:59.153.73.138,则显示以下WHOIS信息:
③其次看ASN信息,要显示单位的AS号,单位AS一定是唯一的。如果显示的是运营商的AS号或者多个AS号则是假的BGP,证明是假BGP。比如拿途隆举例,途隆的AS号是:63549,如下图所示:
④再看Peer数值,可以看到BGP跟谁建立的邻居,必须是跟主要运营商骨干网络建立的BGP。正常情况下,多少条BGP线路,就有多少个Peer值,比如途隆BGP的Peer信息显示如下:
⑤再举一个例子,比如某高防IP:103.73.206.1
WHOIS信息显示广州瑞迅,证明该IP是他的
⑥再看ASN信息,是广州电信,证明他们没有自己的AS号,肯定假BGP:
⑦再看Peer信息,只有一个,证明是单线
BGP路由技术和配置这边就不介绍了,本章主要介绍在BGP邻居建立成功的情况下启用BFD链路检测功能。
BFD(Bidirectional Forwarding Detection,双向转发检测)协议提供一种轻负载、快速检测两台邻接路由器之间转发路径连通状态的方法。协议邻居通过该方式可以快速检测到转发路径的连通故障,加快启用备份转发路径,提升现有网络性能。
BFD报文有两种类型分别是控制报文和回声报文。其中回声报文只有BFD会话本端系统关心远端不关心,因此协议没有规定其具体格式。协议只规定了控制报文的格式,目前控制报文格式有两个版本(版本0和版本1),BFD会话建立缺省采用版本1,但如果收到对端系统发送的是版本0的报文,将自动切换到版本0来建立会话,可以通过show bfd neighbors命令察看采用的版本。版本1的格式如图表1:
Vers:BFD协议版本号,目前为1
Diags:给出本地最后一次从UP状态转到其他状态的原因,包括:
0—没有诊断信息
1—控制超时检测
2—回声功能失效
3—邻居通告会话Down
4—转发面复位
5—通道失效
6—连接通道失效
7—管理Down
Sta:BFD本地状态,取值为:0代表AdminDown,1代表Down,2代表Init,3代表Up;
P:参数发生改变时,发送方在BFD报文中置该标志,接收方必须立即响应该报文
F:响应P标志置位的回应报文中必须将F标志置位
C:转发/控制分离标志,一旦置位,控制平面的变化不影响BFD检测,如:控制平面为OSPF,当OSPF重启/GR时,BFD可以继续检测链路状态
A:认证标识,置位代表会话需要进行验证
D:查询请求,置位代表发送方期望采用查询模式对链路进行检测
M:用于将来应用点到多点时使用,目前必须设置0
Detect Mult:检测超时倍数,用于检测方计算检测超时时间
Length:报文长度
My Discreaminator:BFD会话连接本端标识符
Your Discreaminator:BFD会话连接远端标识符
Desired Min Tx Interval:本地支持的最小BFD报文发送间隔
Required Min RX Interval:本地支持的最小BFD报文接收间隔
Required Min Echo RX Interval:本地支持的最小Echo报文接收间隔(如果本地不支持Echo功能,则设置0)
Auth Type:认证类型(可选),目前协议提供有:
Simple Password
Keyed MD5
Meticulous Keyed MD5
Keyed SHA1
Meticulous Keyed SHA1
Auth Length:认证数据长度
Authentication Data:认证数据区
BFD会话建立包含如下几种模式
主动模式
在建立会话前不管是否收到对端发来的建立BFD会话的控制报文,都会主动发送建立BFD会话的控制报文。
被动模式
在建立对话前不会主动发送建立BFD会话的控制报文,直到收到对端发送来建立BFD会话的控制报文。
BFD可以包含如下几种检测模式:
异步模式
在异步模式下,系统之间相互周期性地发送BFD控制报文,如果某个系统在检测时间内没有收到对端发来的BFD控制报文,就宣布会话为Down
查询模式
在查询模式下,假定每个系统都有一个独立的方法用来确认它连接到其他系统。这样一旦一个BFD会话建立起来以后,系统停止发送BFD控制报文,除非某个系统需要显式地验证连接性,在需要显式验证连接性的情况下,系统发送一个短序列的BFD控制包,如果在检测时间内没有收到返回的报文就宣布会话为Down,如果收到对端的回应报文,表示转发路径正常。
回声功能
本地系统周期性的发送BFD 回声报文,远端系统通过它的转发通道将它们环回回来。如果本地在检测周期内连续几个回声报文都没有接收到,会话就被宣布为Down。回声功能可以和上述两种检测模式一起使用。采用回声报文的检测功能,不需要远端系统的控制面参与,报文通过远端系统的转发面转回,减少了延迟,相对于发送控制报文可以更快的检测到故障。如果在异步模式下启用回声功能,可以大大减少了控制报文的发送,因为检测工作由回声功能完成;如果在查询模式下启用回声功能,在会话建立后可以完全取消发送控制报文。BFD会话两点必须同时启用回声功能,否则回声功能将不生效。
在BFD会话建立以后,可以修订BFD会话参数(如Desired Min Tx Interval,Required Min RX Interval,Detect Mult等),修订后BFD会话将重新协商并采用最新参数进行会话检测,修订过程会话可以继续保持UP状态。
BFD协议允许采用如下方式进行认证:
1.Simple Password
2.Keyed MD5
3.Meticulous Keyed MD5
4.Keyed SHA1
5.Meticulous Keyed SHA1
BGPv4应用场景绝大部分是企业边界设备互联采用运营商固定互联网ip进行建立邻居关系,另一种就是企业各分部通过运营商专线进行互联, 其实际就是一条就可以抵达。
本章主要介绍后者,企业各分部通过运营商专线进行互联建立BGP邻居关系,优化主备线路切换原则。
BGP是触发式更新,主线中断切换至备线,默认情况下需要180s来识别并切换。或者当你发现中断告警可以通过手工去clear ip bgp *硬清或clear ip bgp * soft软清邻居关系来收敛路由条目。
这种冗余架构应该都能看得懂吧,这边用GNS画了一张简单的拓扑图。
要实现A部门PC1和B部门PC2之间能够正常访问,当AB部门主路由之间的链路断开后能无感知切换到备线进行通讯。
首先A部门IBGP要通,B部门IBGP也要通。AB部门主备路由器EBGP邻居关系要建立。
备路由器的邻居状态就不show出来了。
我的实际环境是,各部门数据中心采用的是运营商主备线路冗余。逻辑上就是一跳。我们的边界设备都是cisco的,但是不是同一型号,有2900,2800,3900,4300系列的。所以在配置过程中出现了 state bit状态是admin down 。当时也是比较郁闷都是参照了配置手册进行的配置,为什么状态不是up而是admin down。
配置过程中要注意的是端口的协商,比如全双工,速率要匹配。运营商专线以前配置双工会断,现在电信联通已经修补相关bug。
这边还有就是cisco4300,接口下配置了neg auto,自动协商,no不掉的情况。需要在接口下配置media-type rj45,然后在no neg auto,在敲上duplex full,speed 100。
这个时候基本大功告成,这个时候就要将设备进行重启。
重启完后就可以看见bfd邻居建立。bfd具体参数根据自己企业的需求来定。我的配置参数基本可以达到无感知切换。
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)