Pruebas de tránsito de AS en BGP
Fecha: 4 y 5 de diciembre del 2014 Clase: in-company a empresa #########
Escenario
En este escenario se simula un ISP con acceso a carriers diferentes, la obtención de
rutas por defecto y la preferencia
de las mismas entre cada uno. También se analiza el
proceso de tránsito por el AS y como detenerlo.
Estas pruebas fueron realizadas en Packet Tracert
(tránsito) y con equipos reales (filtro de tránsito).
Verificación inicial
ISP_3#sh ip route (en la tabla de enrutamiento)
---resumido---
Gateway of last resort is
200.45.0.1 to network 0.0.0.0
* 0.0.0.0/32 is
subnetted, 1 subnets
B* 0.0.0.0 [20/0] via
200.45.0.1, 00:24:06 (AS 100)
180.0.0.0/29 is
subnetted, 1 subnets
B 180.0.0.0 [20/0] via
200.45.0.1, 00:24:06 (AS 100)
190.0.0.0/29 is subnetted,
1 subnets
B 190.0.0.0 [20/0] via
200.69.0.1, 00:24:06 (AS 200)
C 200.0.0.0/24 is
directly connected, Ethernet0/0/0
D 200.2.0.0/24
[90/284160] via 200.0.0.2, 00:23:33, Ethernet0/0/0
D 200.3.0.0/24
[90/284160] via 200.0.0.3, 00:23:33, Ethernet0/0/0
200.45.0.0/30 is
subnetted, 1 subnets
C 200.45.0.0 is directly
connected, FastEthernet0/0
200.69.0.0/30 is
subnetted, 1 subnets
C 200.69.0.0 is directly
connected, FastEthernet0/1
ISP_3#
ISP_3#sh ip bgp
(en la tabla propia de BGP)
BGP table version is 8, local router ID is 200.69.0.2
Status codes: s suppressed, d damped, h history, *
valid, > best, i - internal,
r RIB-failure, S Stale
Origin codes: i - IGP, e - EGP, ?
- incomplete
Network Next Hop Metric LocPrf Weight Path
*> 0.0.0.0/32
200.45.0.1 0 0 0
100 ? (prefiere esta ruta según el
router-id mas bajo)
* 200.69.0.1 0 0 0
200 ? ( ? es una ruta redistribuida
en BGP)
*> 180.0.0.0/29
200.45.0.1 0
0 0
100 i ( i
es una ruta advertida por el comando network)
*> 190.0.0.0/29 200.69.0.1 0 0 0
200 i
*>
200.0.0.0/24 0.0.0.0 0 0 32768 i
*>
200.2.0.0/24 200.0.0.2 0 0 0
300 ?
*>
200.3.0.0/24 200.0.0.3 0 0 0
300 ?
ISP_3#
Prueba
de caída del ISP_1
Con esta prueba se verifica la redundancia de las
salida a internet por el enlace de respaldo.
%LINK-5-CHANGED: Interface FastEthernet0/0, changed state to down
%BGP-5-ADJCHANGE: neighbor 200.45.0.1 Down Interface flap
%LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/0,
changed state to down
ISP_3#sh ip route (verificación)
---resumido---
Gateway of last resort is 200.69.0.1 to network 0.0.0.0
* 0.0.0.0/32 is subnetted, 1 subnets
B* 0.0.0.0 [20/0] via 200.69.0.1,
00:22:48 (vía ISP_2)
190.0.0.0/29 is subnetted, 1 subnets
B 190.0.0.0 [20/0] via 200.69.0.1, 00:22:48
C 200.0.0.0/24 is directly connected, Ethernet0/0/0
D 200.2.0.0/24 [90/284160] via 200.0.0.2, 00:13:05, Ethernet0/0/0
D 200.3.0.0/24 [90/284160] via 200.0.0.3, 00:06:19, Ethernet0/0/0
200.69.0.0/30 is subnetted, 1 subnets
C 200.69.0.0 is directly connected, FastEthernet0/1
ISP_3#
Prueba de tránsito por el AS 300
Se reestablece el vínculo a ISP 1 (AS 100), la prueba
se realiza desde el router perteneciente al ISP 2 (AS 200), este
tráfico se debería alcanzar por un NAP u otro punto de acceso
a internet, y no por el sistema autónomo 300.
Internet_2#trace 180.0.0.2 (IP del router Internet_1 en el AS
100)
Type escape sequence to abort.
Tracing the route to 180.0.0.2
1 190.0.0.1 0 msec 0 msec 0 msec
2 200.69.0.2 0 msec 0 msec 1 msec (entra al AS 300)
3 200.45.0.1 0 msec 1 msec 0 msec (sale del AS 300)
4 180.0.0.2 0 msec 0 msec 0 msec
Internet_2#
ISP_2#sh ip
route (verificación en AS
200)
---resumido---
Gateway of last resort is 190.0.0.2 to network 0.0.0.0
B
200.0.0.0/24 [20/0] via 200.69.0.2, 00:10:26
200.69.0.0/30 is subnetted, 1 subnets
C
200.69.0.0 is directly connected, Serial0/0
190.0.0.0/29 is subnetted, 1 subnets
C
190.0.0.0 is directly connected, Ethernet0/0
172.16.0.0/30 is subnetted, 3 subnets
C
172.16.0.8 is directly connected, Loopback2
C
172.16.0.4 is directly connected, Loopback1
C
172.16.0.0 is directly connected, Loopback0
180.0.0.0/29 is subnetted, 1 subnets
B
180.0.0.0 [20/0] via 200.69.0.2, 00:10:27
S* 0.0.0.0/0
[1/0] via 190.0.0.2
ISP_2#
ISP_2#sh ip bgp
BGP table version is 8, local router ID is 172.16.0.9
Status codes: s suppressed, d damped, h history, *
valid, > best, i - internal
Origin codes: i - IGP, e - EGP, ?
- incomplete
Network Next Hop Metric LocPrf Weight Path
*> 0.0.0.0 190.0.0.2 0 32768 ?
* 200.69.0.2 0 300 100 ? (AS 100 vía AS 300)
*> 180.0.0.0/29
200.69.0.2 0 300 100 i (AS 100 vía AS 300)
*> 190.0.0.0/29
0.0.0.0 0 32768 i
*> 200.0.0.0 200.69.0.2 0 0 300 i
ISP_2#
Aplicación del filtro de
tránsito
Utilizando un filter-list que compare el atributo AS
PATH contra una access-list es probablemente la mejor solución.
Esto asegura que siempre sean advertidos prefijos de
nuestro propio AS.
La expresión ^$ asegura que sean advertidos sólo los
prefijos locales, evitando reenviar información de otros AS al exterior.
ISP_3(config)#ip as-path access-list 1 permit ^$
ISP_3(config)#router bgp 300
ISP_3(config-router)#neighbor 200.45.0.1 filter-list 1 out
ISP_3(config-router)#neighbor 200.69.0.1 filter-list 1 out
ISP_3(config-router)#^Z
ISP_3#
ISP_2#sh ip
route (verificación)
---resumido---
Gateway of last resort is 190.0.0.2 to network 0.0.0.0
B
200.0.0.0/24 [20/0] via 200.69.0.2, 00:13:52 (no existe la ruta a 180.0.0.0/29 aprendida
anteriormente desde el AS 300)
200.69.0.0/30 is subnetted, 1 subnets
C
200.69.0.0 is directly connected, Serial0/0
190.0.0.0/29 is subnetted, 1 subnets
C
190.0.0.0 is directly connected, Ethernet0/0
S* 0.0.0.0/0
[1/0] via 190.0.0.2
ISP_2#
ISP_2#sh ip bgp
(verificación)
BGP table version is 14, local router ID is 172.16.0.9
Status codes: s suppressed, d damped, h history, *
valid, > best, i - internal
Origin codes: i - IGP, e - EGP, ?
- incomplete
Network Next Hop Metric LocPrf Weight Path
*> 0.0.0.0
190.0.0.2 0 32768 ?
*> 190.0.0.0/29
0.0.0.0 0 32768 i
*> 200.0.0.0
200.69.0.2 0 0 300 i (no existe 180.0.0.0/29 aprendida
anteriormente desde el AS 300)
ISP_2#
(2014) St. Claus learned networking for deliver packets ?
Rosario,
Argentina