BGP 总结.docx
- 文档编号:8909661
- 上传时间:2023-02-02
- 格式:DOCX
- 页数:46
- 大小:198.06KB
BGP 总结.docx
《BGP 总结.docx》由会员分享,可在线阅读,更多相关《BGP 总结.docx(46页珍藏版)》请在冰豆网上搜索。
BGP总结
BGP
第一课:
理论及基本操作
一、介绍
外部网关EGP分为:
EGP是有类,收敛速度慢
BGP无类,一般用在比较大型网络,在运营商内部。
BGP:
目的是为做策略,大的网络接入到运营商时用的网络。
开始选路,用的BGP
AS:
自治系统,大的范围,有多个出口。
处在一相同的管理域的集合。
(OSPF,eigrp的AS叫进程)如果把AS比喻成一个路由器的话,那么路由器与路由器之间叫:
EBGP。
AS内的BGP叫IBGP。
宿主:
单宿主(也叫单归属),接一个AS,有单根线连接或多根线连接。
双宿主,接二个以上的AS,
关于路由的情况:
所有都收一个缺省路由,损耗路由资源最少;
引缺省路由和部分明细的路由(如引两个条默认路由,会出现一条次优路由)
因特网上所有路由表都收到,如果都收的话,会有30万几条路由。
那就会BGP,主要
是使用一些策略依据属性。
Peer:
对等体。
二、详细说明AS:
范围:
1-65535由16Bit2进制组成。
2009年升级到32位。
要使用AS需申请。
私有的AS号:
64512-65535-1023个。
Loop-free:
无环路。
多种路径属性:
BGp控制流量时,用多种路径属性。
什么时候用BGP:
1.AnASistransitAS(是一个传输AS时。
有三个AS,中间的是传输AS)
2.在多宿主的时候;
3.在多个AS之间需要做策略时。
什么时候不有BGP:
1.一条链路接运营商时(引一条缺省路由即可);
2.没有足够的内存(用76型);
3.没有技术水平。
三、BGP的功能:
1.通告的什么:
整个路径。
(通常称为路径失量路由协议,能记录所经过的AS,记录所达到网络系;
目的:
是防止环路产生。
如收到一条路由当中包含自己的AS,则说明已经是环路了。
2.记录正在使用的属性;
3.可以管理;
4.路由器支持和策略配置一跳一跳地,也就是ASbyAS。
四、BGP的特点:
1.可靠的更新;采用TCP的179端口;(rip是使用UDP的520端口,eigrp和ospf都封装在IP之上,都是不可靠的传输。
因BGP应用在ISP运营商中,要的是稳定、可靠。
)
2.增量触发更新;(在变化就更新)查看:
router-
3.周期性地保活消息,查检TCPr连接。
4.丰富的属性(RICHmetric)
5.为大型的网络而设计
6.增强的距离失量路径失量。
五、配置:
BGP的邻居关系有二种:
EBGP和IBGP分别为外部和内部BGP邻居。
EBGP是在不同的AS之间的BGP关系。
IBGP是在相同的AS之间的BGP关系。
一台路由器只能属于一个AS号内。
BGP的邻居是手工建立的。
Nei+邻居IP地址
只要TCP可达,邻居关系就可以建立。
BGP是通过TCP建立的。
要建立BGP邻居,必须保证TCP可达,必须路由是可达的。
先建立邻居:
R1#routerbgp100(一个路由器上只能配置一个AS,否则会提示是:
BGPisalreadyrunningASis100)
Neighbor12.1.1.2remote-as200指定邻居关系,指定远端的AS号(也就是对端的AS号)
注:
在bgp路由器上也有routerID,选举规则是和OSPF一样的,也可以手动指routerID。
Routerbgp100
Bgprouter-id1.1.1.1
R2#routerbgp200
Neighbor12.1.1.1remote-as100
Bgprouter-id2.2.2.2.
R1上配置完后提示:
neighbor12.1.1.2up
R1#showipbgpneighbors
BGPneighboris12.1.1.2,remoteAS200,externallink外部链路(即是EBGP)
R1的邻居的12.1.1.2,远端的AS是200,
BGPversion4,remoterouterID2.2.2.2
本是,2000年集本升级。
远端的ROUTERID
BGPstate=Established,upfor00:
00:
17
BGP状态:
看到Established时,表示和邻居关系已经建立。
Lastread00:
00:
17,lastwrite00:
00:
17,holdtimeis180,keepaliveintervalis60seconds
Keepalive保持TCP的连接,保活消息:
时间周期60s
Neighborcapabilities:
Routerefresh:
advertisedandreceived(old&new)
AddressfamilyIPv4Unicast:
advertisedandreceived
Messagestatistics:
InQdepthis0
OutQdepthis0
SentRcvd
Opens:
11
Notifications:
00
Updates:
00
Keepalives:
11
RouteRefresh:
00
Total:
22
Defaultminimumtimebetweenadvertisementrunsis30seconds
Foraddressfamily:
IPv4Unicast
BGPtableversion1,neighborversion0/0
BGPtableversion1:
BGp表默认1,每变化一次增加1.如果BGP建立的时间非常短,Version非常高,说明网络变化非常频繁,不稳定。
可以进R2的routerbgp200下,neighbor12.1.1.1shut,然后再打开,这样经过几次来试验,再看此号,变化了。
Outputqueuesize:
0
Index1,Offset0,Mask0x2
1update-groupmember
SentRcvd
Prefixactivity:
--------
PrefixesCurrent:
00
PrefixesTotal:
00
ImplicitWithdraw:
00
ExplicitWithdraw:
00
Usedasbestpath:
n/a0
Usedasmultipath:
n/a0
OutboundInbound
LocalPolicyDeniedPrefixes:
---------------
Total:
00
NumberofNLRIsintheupdatesent:
max0,min0
Connectionsestablished1;dropped0
Lastresetnever
ConnectionstateisESTAB,I/Ostatus:
1,unreadinputbytes:
0
ConnectionisECNDisabled,MininumincomingTTL0,OutgoingTTL1
Localhost:
12.1.1.1,Localport:
43320
Foreignhost:
12.1.1.2,Foreignport:
179
Connectiontableid(VRF):
0
Enqueuedpacketsforretransmit:
0,input:
0mis-ordered:
0(0bytes)
EventTimers(currenttimeis0x128AAC):
TimerStartsWakeupsNext
Retrans300x0
TimeWait000x0
AckHold100x0
SendWnd000x0
KeepAlive000x0
GiveUp000x0
PmtuAger000x0
DeadWait000x0
Linger000x0
ProcessQ000x0
iss:
1734781539snduna:
1734781604sndnxt:
1734781604sndwnd:
16320
irs:
3945826168rcvnxt:
3945826233rcvwnd:
16320delrcvwnd:
64
SRTT:
99ms,RTTO:
1539ms,RTV:
1440ms,KRTT:
0ms
minRTT:
76ms,maxRTT:
300ms,ACKhold:
200ms
StatusFlags:
activeopen
OptionFlags:
nagle
IPPrecedencevalue:
6
Datagrams(maxdatasegmentis1460bytes):
Rcvd:
4(outoforder:
0),withdata:
2,totaldatabytes:
64
Sent:
4(retransmit:
0,fastretransmit:
0,partialack:
0,SecondCongestion:
0),withdata:
2,totaldatabytes:
64
Packetsreceivedinfastpath:
0,fastprocessed:
0,slowpath:
0
Packetssendinfastpath:
0
fastlockacquisitionfailures:
0,slowpath:
0
R1#showipbgpsummary查看邻居的汇总信息
BGProuteridentifier1.1.1.1,localASnumber100
本地Routerid1.1.1.1本地的AS是100
BGPtableversionis1,mainroutingtableversion1
NeighborVASMsgRcvdMsgSentTblVerInQOutQUp/DownState/PfxRcd
12.1.1.24200181810000:
15:
590如果是数字,表示邻居已建立
在每台路由器上各启一个loop0
R1#intloop0
Ipaddr1.1.1.1255.255.255.0
Routerbgp100
Network1.1.1.0mask255.255.255.0仅仅将网络加入到BGP域
R2#intloop0
Ipaddr2.2.2.2255.255.255.0
Routerbgp200
Network1.1.1.0mask255.255.255.0
R1#showiprouterbgp应该出现:
B2.2.2.0[20/0]via12.1.1.2,00:
00:
24
12.0.0.0/24issubnetted,1subnets收到一条B路由。
是通过“B-BGP”学到的。
R3:
启一个loop0启AS300
Intloop0
Ipaddress3.3.3.3.255.255.255.0
Routerbgp300
Neighbot23.1.1.1romote-as200
Bgprouter-id3.3.3.3
Network3.3.3.0mask255.255.255.0
R3#Showipbgpnei
只要:
State/pfxrcd是个数字,是邻居建立了。
R1#showiproute
学到了两条B路由:
1.0.0.0/24issubnetted,1subnets
C1.1.1.0isdirectlyconnected,Loopback0
2.0.0.0/24issubnetted,1subnets
B2.2.2.0[20/0]via12.1.1.2,00:
24:
38
是通过EBGP学来的距离是20,IBGP是200.
3.0.0.0/24issubnetted,1subnets
B3.3.3.0[20/0]via12.1.1.2,00:
00:
08
12.0.0.0/24issubnetted,1subnets
C12.1.1.0isdirectlyconnected,FastEthernet0/0
六、此试验全部的配置总结:
R1#intloop0Ipaddr1.1.1.1255.255.255.0
Intf0/0Ipaddr12.1.1.1255.255.255.0
Noshut
routerbgp100注:
一个路由器上只能配置一个AS号。
Network1.1.1.0mask255.255.255.0
Bgprouter-id1.1.1.1
Nei12.1.1.1remote-as200
R2#intloop0Ipaddr2.2.2.2255.255.255.0
Intf0/0Ipaddr12.1.1.2255.255.255.0
Intf0/1Ipaddr23.1.1.1255.255.255.0
Noshut
Routerbgp200
Neighbor12.1.1.1remote-as100
Neighbor23.1.1.2remoe-as300
Bgprouter-id2.2.2.2.
R3:
Intloop0Ipaddress3.3.3.3.255.255.255.0
Routerbgp200
Neighbot23.1.1.1romote-as200
Bgprouter-id3.3.3.3
Network3.3.3.0mask255.255.255.0
注:
R1、R2、R3只是用neibghor建立了邻居关系,并没把所连接的端口的地址加入到bgp域中,通过在R1上showiproute,看出R1能学到2.0和3.0的网络,说明了:
1.0到达3.0是通过neighbor建立的邻居关系,再通过bgp的承载到达的。
如果把R2的FO/0接口shutdown,到R1上查看bgp表:
showipbgpsum显示:
状态是Active.
R1#showipbgpsumm
BGProuteridentifier1.1.1.1,localASnumber100
BGPtableversionis1,mainroutingtableversion1
NeighborVASMsgRcvdMsgSentTblVerInQOutQUp/DownState/PfxRcd
12.1.1.24200262600000:
00:
07Active
七、bdp的三张表:
1)邻居表:
用showipbgpnei或:
showipbgpsummary(常用)
2)BGP表:
查看用showipbgp显示有三个条目:
哪个条目是学来的?
2.0和3.0是常来的。
NetworkNextHopMetricLocPrfWeightPath
*>1.1.1.0/240.0.0.0032768i
*>2.2.2.0/2412.1.1.200200i
*>3.3.3.0/2412.1.1.20200300i
I:
本地的为空,小i移到前面了,代表IGP
*:
表示是可用的路由。
>:
是取优的路径(始终是会选择一条最优路径)
0.0.0.0:
指本地BGP网络
200300i:
从300到200过来的,AS离我最近的放在最左边。
BGP的EBGP管理值为20IBGP的管理值为200
3)路由表:
把”>”指向的那一条放进路由表中。
如图:
Best最优的路径,始终会选一条最优的路径,不会形成负载,但可以用手工形成。
R2上有两个邻居,把BGP的邻居donw,但是直连接电路还是通的。
方法:
Routerbgp200
Nei12.1.1.1shut
R2#Showipbgpsum
NeighborVASMsgRcvdMsgSentTblVerInQOutQUp/DownState/PfxRcd
12.1.1.14100253300000:
00:
43Idle(Admin)(手动关闭)
23.1.1.2430091100110001:
26:
331
直连的能拼通:
R2#ping12.1.1.1
Typeescapesequencetoabort.
Sending5,100-byteICMPEchosto12.1.1.1,timeoutis2seconds:
!
!
!
!
!
Successrateis100percent(5/5),round-tripmin/avg/max=8/40/64ms
R2#showipbgpnei显示:
两个邻居的状态:
一个是:
shutdown一个时:
Established状态。
BGPneighboris12.1.1.1,remoteAS100,externallink
Administrativelyshutdown
BGPneighboris23.1.1.2,remoteAS300,externallink
BGPversion4,remoterouterID3.3.3.3
BGPstate=Established,upfor01:
28:
33
八、消息类型:
BGP四种消息类型四个包:
Open
Dekpalive
Update
natification
用试验说明:
如图:
计算机要桥接本地。
启bgp100200R4和R5先不要配置。
R1在AS100R2、R3在AS200,在交机上做端口映射。
SW1#monitorsession1sourceintf0/1监听会话1,源接口交换机机f0/1。
Monitorsession1destinationintf0/3监听会话,目的接口是:
f0/3.
打开软件,wireshark,点击开始。
到R1上打开f0/0接口。
过一会后,再noshutdown.在wiresshrk软件的过滤栏内输入bgp把bgp包过滤出来。
BGp封装于TCP之上,端口号179.
九、包结构:
第一个包:
open消息作用:
建立邻居关系。
包含:
1.type1类型为1
2.版本为4,版本不相等不能建立邻居。
3.本地的AS(myAS)
4.holdtime:
180s。
可以修改,最小能改成3.(keepalivetime为60s.是由holdtiom决定,是3倍的关系)。
Holdtiom时间不相等也能建立邻居,建立邻居时则依据较小的时间。
5.BGP的ID:
当OSPF和BGp共存时,要保证RouterID一致。
AS环路。
6.用的是TCP协议,要完成三次握手。
抓包试验:
试验:
(TCP的三次握手)
Internetprotocol,src12.1.1.1(12.1.1.2),dst12.1.1.2(12.1.1.1)
第二个包:
keepalive保活。
(是一个空包)
包含:
类型为4.
第三个包:
updata:
更新消息:
包含:
1.类型:
2
2.pathattribute:
路径属性
3.网络可达性消息(NLRI)-networklayerreachabilityinformation:
包含前缀和网络。
第四个包:
notification当bgp发生错误时,会发送natification报文
包含:
1.type类型:
notificationmessage3
2.Errorcode错误代码:
openmessageerror(open消息错误)
Errorsubcode错误子代码:
badpeerAS。
对端的AS错误(不匹配的AS)
十、BGP的邻接状态集:
1.idle:
相当于down状态。
什么也不干。
idle[ˈaidl].懒散的;空闲的
2.connet建立:
建立TCP的连接。
3.active
4.opensent
5.openconfirm
6.eestablished
详细说明:
第一:
idle状态:
初始化TCP的连接。
第二:
connet状态:
等待TCP的连接(是个瞬间),如果TCP连接成功,则发opensent消息,进入opensent状态。
如不成功,则进入Active状态。
第三、Active状态:
第四、opensent:
等待对方的Opensent消息。
收到消息,如匹配,则向对方发送keepalive消息,进入openconfirm状态。
如不匹配,发送notification消息,回到idle状态,进行下一次的重传。
60秒发一次,180秒为三次重复时间。
第五、openconfirm:
等待对方发送keepalive消息。
如收到keepalive消息,则进入下一状态;如收到notification消息,则进入idle状态。
第六、established:
说明邻居关系已经建立。
可以发送updata消息,路由器可以更新了。
十一、试验:
如上图:
配通,
BGP也有router-id选举规则,和原先一样,也可手动指定:
bgprouter-id2.2.2.2
各接口配置地址,每个路由器上都有一个loop0,将网络加入到BGp中,
R1#Routerbgp100
Network1.1.1.0mask255.255.255.0
R3#routerbgp200
Network3.3.3.0mask255.255.255.0
R3#R3#showipbgpnei
R3#showipbgpnei
BGPneighboris23.1.1.1,remoteAS200,internallink内部bgp即:
IBGP
BGPversion4,remoterouterID2.2.2.2
BGPstate=Establis
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- BGP 总结
![提示](https://static.bdocx.com/images/bang_tan.gif)