读JNCIP study guide凌乱的笔记(EBGP)
1:基本配置
}
protocols {
bgp {
group 65020 {
type external; 类型为外部
export advroute;
peer-as 65412; 邻居的AS号
neighbor 172.16.0.25; 邻居的更新源地址
}
}
}
2:EBGP策略
EBGP的import策略
路由惩罚,
路由惩罚有下面几个参数可以修改:
half-life Decay half-life (1..45 minutes) 半衰期的时间( 每隔多少时间惩罚值降低到一半)
max-suppress Maximum hold-down time (1..720 minutes) 最大抑制 (达到一个最大的抑制时间以后,重新向对方请求这条路由)
reuse Reuse threshold (figure-of-merit value) (1..20000) 重新使用值 (当惩罚值降到这个值的时候重新激活这条路由)
suppress Cutoff threshold (figure-of-merit value) (1..20000) 当这条路由达到这个值的时候,抑制此条路由。
启用damping。针对所有接受的路由。
lunsui# show protocols bgp
damping;
export adv;
group 65000 {
type internal;
local-address 10.0.3.3;
advertise-inactive;
import import;
authentication-key "$9$UKiqfu0IRSe"; ## SECRET-DATA
cluster 1.1.1.1;
neighbor 10.0.6.1;
neighbor 10.0.6.2;
neighbor 10.0.3.4;
当然也可以针对某些路由做特定的damping值
先在policy-option下定义一个damping的组。然后在组下定义调整上面所说的那些值。
damping agg {
half-life 30;
}
做一个策略针对那些路由需要做damping
policy-statement damp {
term 1 {
from {
route-filter 0.0.0.0/0 prefix-length-range /17-/32 damping agg;
} 这里指的是,前缀长度是17到32的路由全部要使用这个damping
然后运用到import策略就搞定了。使用run show route damping suppressed就可以看到被damping的路由。
Martian 过滤
在internet上面我们需要过滤一些路由例如,RFC 1918 defines a set of well-known, local use–only addresses,和那些保留的地址空间。
policy-statement reject {
term 1 {
from {
route-filter 0.0.0.0/0 through 0.0.0.0/7 reject; 过滤0.0.0.0/0到0.0.0.0/7的路由
route-filter 0.0.0.0/1 prefix-length-range /1-/7 reject;
}
}
term 2 {
from {
route-filter 0.0.0.0/0 prefix-length-range /28-/32 reject;
route-filter 172.16.0.0/12 orlonger reject;
route-filter 10.0.0.0/8 orlonger reject; 过滤1918私有地址
route-filter 192.168.0.0/24 orlonger reject;
}
}
term 3 {
from as-path fromC;
then next policy;
}
term 4 {
then reject;
}
}
as-path fromC .*65020;
社团属性。
policy-statement C2 {
term 1 {
from protocol bgp;
then {
community add customers;
}
}
}
community R1 members 65412:01;
community customers members 65412:300;
community peer members 65412:200;
community transit members 65412:100;
as-path fromC .*65020;
Path 201.201.4.0 from 172.16.0.26 Vector len 4. Val: 1
*BGP Preference: 170/-101
Next-hop reference count: 26
Source: 172.16.0.26
Next hop: 172.16.0.26 via fxp1.280, selected
State: <Active Ext>
Local AS: 65001 Peer AS: 65020
Age: 3:53:26
Task: BGP_65020.172.16.0.26+3841
Announcement bits (3): 2-KRT 5-BGP.0.0.0.0+179 6-Resolve tree 1
AS path: 65020 I
Communities: 65412:300
Localpref: 100
Router ID: 64.1.1.1
EBGP的export策略
解决下一跳不可达的问题可以使用nexthop-self来解决。因为BGP在收到来自EBGP对等体关系的邻居的路由再传递给自己的IBGP邻居的时候是不会改变下一跳的。而这些IBGP邻居可能缺少下一跳的路由,所以就会导致HIDEN路由的产生,我可以用next-hop self的参数来解决这个问题。
policy-statement adv {
term 1 {
from {
protocol static;
route-filter 192.168.0.0/16 longer;
}
then accept;
}
term 2 {
from {
protocol aggregate;
route-filter 192.168.0.0/22 exact;
}
then accept;
}
term 3 {
from protocol bgp;
then {
next-hop self;
}
}
}
然后运用到export。
使用commiunit进行export过滤
policy-statement toT1-T2 {
term 1 {
from {
protocol aggregate;
route-filter 10.0.0.0/8 exact;
}
then accept;
}
term 2 {
from community [ peer transit ]; 拒绝带有65412:200和65412:100的路由传递出去。
then reject;
}
term 3 {
from {
route-filter 192.168.0.0/16 orlonger;
}
then reject;
}
term 4 {
from community customers;
then {
community - customers; 在传递路由的时候移除community属性。
}
}
}
community customers members 65412:300;
community peer members 65412:200;
community transit members 65412:100;
一些计时器和一些杂七杂八的东西:
当一台BGP的路由器从EBGP对等体收到一条包含有自己AS号的路由时,为了避免环路,他会丢弃该路由。如果当对方由于某些操作失败的时候,将一条路由加入了你本地的AS号的话,那么你将不会接受这样一条路由的。
如果要求你加入这条路由,juniper提供一种机制允许几次的环路。
routing-options {
static {
route 192.168.10.0/24 discard;
route 192.168.100.0/24 discard;
route 10.0.4.0/30 next-hop 10.0.4.14;
}
generate {
route 10.0.0.0/8;
}
autonomous-system 65000 loops 2; 允许一条路由的AS-PATH属性中最多出现两次自己本AS的AS号。
配置完以后要使用run clear bgp neighbor 10.0.5.254 soft-inbound 命令以后才能看到结果。
MED的操作。
policy-statement med {
term 1 {
then {
metric 100;
}
}
}
注意juniper默认的MED值为0。
同时也可以使用下面红色的命令修改MED,并且当策略和metric-out同时配置并且数值不同的时候,会有优先选择使用策略的。
group T1-T2 {
type external;
import [ damp reject T1-T2 ];
export toT1-T2;
peer-as 65222;
multipath;
neighbor 172.16.0.14;
neighbor 172.16.0.18 {
metric-out 500;
}
}
group T2 {
type external;
metric-out igp;
remove-private;
peer-as 65222;
neighbor 172.16.0.22;
}
注意这个MED可以基于某条路由自己计算到自己IBGP邻居达通告者的igp metric。
本地优先级的操作。
group c-bgp {
type external;
local-preference 200;
neighbor 10.0.2.2 {
peer-as 65001;
}
}
当你的BGP对等体在配置你AS的AS号错误的时候,你可以在不改变对端的配置的情况下使得邻居建立。
group C2 {
type external;
peer-as 65020;
local-as 65413;
neighbor 172.16.0.26;
}
限制前缀条目?
}
group C1 {
type external;
multihop;
local-address 10.0.3.4;
family inet {
unicast {
prefix-limit {
maximum 10; 有问题??????
}
}
}
neighbor 200.200.0.1 {
peer-as 65010;
}
}
当你需要过滤路由的时候,不想使用策略进行过滤的时候,那么可以将这些需要过滤的路由加入到火星路由的条目中。
可以在路由选项下输入下面的命令。
set martians 192..0.2.0/24 exact
查看:
lunsui# run show route martians logical-router R6
inet.0:
0.0.0.0/0 exact -- allowed
0.0.0.0/8 orlonger -- disallowed
127.0.0.0/8 orlonger -- disallowed
128.0.0.0/16 orlonger -- disallowed
191.255.0.0/16 orlonger -- disallowed
192.0.0.0/24 orlonger -- disallowed
223.255.255.0/24 orlonger -- disallowed
240.0.0.0/4 orlonger -- disallowed
192.0.2.0/24 orlonger -- disallowed
作者信息我和你错在太过重感情.
欲练神功....