juniper不像cisco、华为有多ospf进程的概念,但是有逻辑路由器和逻辑隧道,路由实例
cisco的重分布参考:
https://costiser.ro/2013/01/10/redistribute-different-ospf-processes/
juniper路由实例间的重分布有2种办法:rib-group和auto-export
本文测试auto-export
vmx跑2个routing-instance(cust-left,cust-right)
left路由器导出外部路由lo0.0时带tag12
right路由器导出外部路由lo0.0时带tag23
目的:
left上要能学到right lo0.0的路由
right要能学到left lo0.0的路由
拓扑:
root@left> show configuration | display set
set version 14.1R4.8
set system host-name left
set system root-authentication encrypted-password "$1$2490VjfM$UrF82MOjzmKJzOayMJyap."
set system services ssh root-login allow
set system services ssh protocol-version v2
set system syslog user * any emergency
set system syslog file messages any notice
set system syslog file messages authorization info
set system syslog file interactive-commands interactive-commands any
set interfaces ge-0/0/0 unit 0 family inet address 192.168.12.1/24
set interfaces em0 unit 0 family inet address 10.5.245.41/24
set interfaces lo0 unit 0 family inet address 1.1.1.1/32
set routing-options static route 10.5.0.0/16 next-hop 10.5.245.254
set routing-options router-id 10.5.245.41
set protocols ospf export export-tag
set protocols ospf area 0.0.0.0 interface ge-0/0/0.0
set policy-options policy-statement export-tag term disconnect-tag from interface lo0.0
set policy-options policy-statement export-tag term disconnect-tag then tag 12
set policy-options policy-statement export-tag term disconnect-tag then accept
root@right> show configuration | display set
set version 14.1R4.8
set system host-name right
set system root-authentication encrypted-password "$1$tJ618mXU$XQO1Bd2rVic9uuC46vXbR/"
set system services ssh root-login allow
set system services ssh protocol-version v2
set system syslog user * any emergency
set system syslog file messages any notice
set system syslog file messages authorization info
set system syslog file interactive-commands interactive-commands any
set interfaces ge-0/0/1 unit 0 family inet address 192.168.23.3/24
set interfaces em0 unit 0 family inet address 10.5.245.43/24
set interfaces lo0 unit 0 family inet address 3.3.3.3/32
set routing-options static route 10.5.0.0/16 next-hop 10.5.245.254
set routing-options router-id 10.5.245.43
set protocols ospf export export-tag
set protocols ospf area 0.0.0.0 interface ge-0/0/1.0
set policy-options policy-statement export-tag term disconnect-tag from interface lo0.0
set policy-options policy-statement export-tag term disconnect-tag then tag 23
set policy-options policy-statement export-tag term disconnect-tag then accept
root@vmx> show configuration | display set
set version 14.1R4.8
set system host-name vmx
set system root-authentication encrypted-password "$1$qmh0fZRG$IG64f970Vi8QJ.12FD7FR0"
set system services ssh root-login allow
set system services ssh protocol-version v2
set system syslog user * any emergency
set system syslog file messages any notice
set system syslog file messages authorization info
set system syslog file interactive-commands interactive-commands any
set interfaces ge-0/0/0 unit 0 family inet address 192.168.12.2/24
set interfaces ge-0/0/1 unit 0 family inet address 192.168.23.2/24
set interfaces em0 unit 0 family inet address 10.5.245.42/24
set interfaces lo0 unit 0 family inet address 2.2.2.2/32
set interfaces lo0 unit 1 family inet address 12.12.12.12/32
set interfaces lo0 unit 2 family inet address 23.23.23.23/32
set routing-options static route 10.5.0.0/16 next-hop 10.5.245.254
set routing-options router-id 10.5.245.42
set protocols ospf area 0.0.0.0 interface lo0.0
set policy-options policy-statement export-to-left term 1 from tag 23
set policy-options policy-statement export-to-left term 1 then accept
set policy-options policy-statement export-to-right term 1 from tag 12
set policy-options policy-statement export-to-right term 1 then accept
set policy-options policy-statement import-from-cust-left term 1 from community cust-left
set policy-options policy-statement import-from-cust-left term 1 then accept
set policy-options policy-statement import-from-cust-right term 1 from community cust-right
set policy-options policy-statement import-from-cust-right term 1 then accept
set policy-options community cust-left members target:65002:1
set policy-options community cust-right members target:65003:1
set routing-instances cust-left instance-type vrf
set routing-instances cust-left interface ge-0/0/0.0
set routing-instances cust-left interface lo0.1
set routing-instances cust-left route-distinguisher 65002:1
set routing-instances cust-left vrf-import import-from-cust-right
set routing-instances cust-left vrf-target target:65002:1
set routing-instances cust-left routing-options auto-export
set routing-instances cust-left protocols ospf export export-to-left
set routing-instances cust-left protocols ospf area 0.0.0.0 interface ge-0/0/0.0
set routing-instances cust-right instance-type vrf
set routing-instances cust-right interface ge-0/0/1.0
set routing-instances cust-right interface lo0.2
set routing-instances cust-right route-distinguisher 65003:1
set routing-instances cust-right vrf-import import-from-cust-left
set routing-instances cust-right vrf-target target:65003:1
set routing-instances cust-right routing-options auto-export
set routing-instances cust-right protocols ospf export export-to-right
set routing-instances cust-right protocols ospf area 0.0.0.0 interface ge-0/0/1.0
验证:
root@vmx> show route table cust-left.inet.0 protocol ospf
cust-left.inet.0: 9 destinations, 9 routes (9 active, 0 holddown, 0 hidden)
+ = Active Route, - = Last Active, * = Both
1.1.1.1/32 *[OSPF/150] 00:35:23, metric 0, tag 12
> to 192.168.12.1 via ge-0/0/0.0
3.3.3.3/32 *[OSPF/150] 00:03:17, metric 0, tag 23
> to 192.168.23.3 via ge-0/0/1.0
224.0.0.5/32 *[OSPF/10] 01:05:19, metric 1
MultiRecv
root@vmx>
root@vmx> show route table cust-right.inet.0 protocol ospf
cust-right.inet.0: 9 destinations, 9 routes (9 active, 0 holddown, 0 hidden)
+ = Active Route, - = Last Active, * = Both
1.1.1.1/32 *[OSPF/150] 00:35:35, metric 0, tag 12
> to 192.168.12.1 via ge-0/0/0.0
3.3.3.3/32 *[OSPF/150] 00:32:13, metric 0, tag 23
> to 192.168.23.3 via ge-0/0/1.0
224.0.0.5/32 *[OSPF/10] 01:05:31, metric 1
MultiRecv
root@left> show route protocol ospf
inet.0: 8 destinations, 8 routes (8 active, 0 holddown, 0 hidden)
+ = Active Route, - = Last Active, * = Both
3.3.3.3/32 *[OSPF/150] 00:04:16, metric 0, tag 23
> to 192.168.12.2 via ge-0/0/0.0
224.0.0.5/32 *[OSPF/10] 01:28:00, metric 1
MultiRecv
root@right> show route protocol ospf
inet.0: 8 destinations, 8 routes (8 active, 0 holddown, 0 hidden)
= Active Route, - = Last Active, * = Both
1.1.1.1/32 *[OSPF/150] 00:14:01, metric 0, tag 12
> to 192.168.23.2 via ge-0/0/1.0
224.0.0.5/32 *[OSPF/10] 01:22:18, metric 1
MultiRecv