system { host-name P2A; root-authentication { encrypted-password "$1$EYEfNq6w$BdzFKoWvwZS0Bl/oiwE2j0"; ## SECRET-DATA } login { user ws { full-name Workshop; uid 2002; class super-user; authentication { encrypted-password "$1$AtNyeJ7Q$4iPmRAnrvMz59O/JHLlGg0"; ## SECRET-DATA } } } services { ssh; telnet; } syslog { user * { any emergency; } file messages { any notice; authorization info; } } } interfaces { fe-0/0/0 { description "To P3 - Border B fa0/0"; unit 0 { family inet { address 199.109.203.17/30; } } } fe-0/0/1 { description "To P2 - Core C fa0/0"; unit 0 { family inet { address 199.109.202.25/30; } } } fe-0/0/3 { description "EXTERNAL INTERFACE"; unit 0 { family inet { address 199.109.205.6/30; } } } fxp0 { disable; } lo0 { description "P2 - Border A"; unit 0 { family inet { address 199.109.202.1/32; } } } } routing-options { interface-routes { rib-group inet ifrg; } rib inet.0 { aggregate { route 199.109.202.0/24; } } rib inet.2 { aggregate { route 199.109.202.0/24; } } static { route 0.0.0.0/0 next-hop 199.109.205.5; } rib-groups { ifrg { import-rib [ inet.0 inet.2 ]; } igp-rg { export-rib inet.0; import-rib [ inet.0 inet.2 ]; } pim-rg { export-rib inet.2; import-rib inet.2; } } router-id 199.109.202.1; autonomous-system 65502; multicast { scope autorp-announce { prefix 224.0.1.39/32; interface all; } scope autorp-discovery { prefix 224.0.1.40/32; interface all; } } } protocols { bgp { family inet { unicast; } group iBGP-mesh { type internal; local-address 199.109.202.1; family inet { unicast; multicast; } export set-nexthop-self; local-as 65502; neighbor 199.109.202.2; neighbor 199.109.202.3; } group external-peers { type external; import transit-others; family inet { unicast; multicast; } export [ announce-our-block transit-others ]; local-as 65502; neighbor 199.109.203.18 { description "Pod 3 Border B"; local-address 199.109.203.17; peer-as 65503; } } } ospf { rib-group igp-rg; export default-into-ospf; area 0.0.0.0 { interface fe-0/0/1.0; interface lo0.0 { passive; } interface fe-0/0/0.0 { passive; } interface fe-0/0/3.0 { passive; } } } pim { rib-group inet pim-rg; rp { bootstrap-import reject-all; bootstrap-export reject-all; } interface fe-0/0/1.0 { mode sparse; } interface fe-0/0/0.0 { mode sparse; } } } policy-options { policy-statement default-into-ospf { term default { from { protocol static; route-filter 0.0.0.0/0 exact; } then accept; } term nope { then reject; } } policy-statement set-nexthop-self { then { next-hop self; accept; } } policy-statement announce-our-block { term announce-202 { from { protocol aggregate; route-filter 199.109.202.0/24 exact; } then accept; } } policy-statement transit-others { term 1 { from { protocol bgp; route-filter 199.109.201.0/24 orlonger; route-filter 199.109.203.0/24 orlonger; route-filter 199.109.204.0/24 orlonger; } then accept; } term reject-other { then reject; } } policy-statement reject-all { then reject; } }