0% encontró este documento útil (0 votos)
3 vistas12 páginas

Automatización de Redes con OSPF y Python

Este script automatiza y prueba una configuración de red OSPF en múltiples áreas utilizando routers simulados en GNS3. Primero, define la topología de red en un archivo YAML. Luego, el script configura OSPF y direcciones IP en tres routers, y verifica que la configuración se aplique correctamente. La automatización garantiza que la red funcione según lo diseñado y facilita la detección de errores.

Cargado por

19300651
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
3 vistas12 páginas

Automatización de Redes con OSPF y Python

Este script automatiza y prueba una configuración de red OSPF en múltiples áreas utilizando routers simulados en GNS3. Primero, define la topología de red en un archivo YAML. Luego, el script configura OSPF y direcciones IP en tres routers, y verifica que la configuración se aplique correctamente. La automatización garantiza que la red funcione según lo diseñado y facilita la detección de errores.

Cargado por

19300651
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

UNIVERSIDAD TECNOLÓGICA DE TULA-

TEPEJI

Ingeniería en Redes Inteligentes y Ciberseguridad

10IRIC-G1

AUTOMATIZACIÓN DE INFRAESTRUCTURA
DIGITAL II

Presentan:

Armando Vázquez Trejo


José Alfredo Sánchez García
Francisco Everardo Montoya Martínez
Juan Carlos Blas García
Índice

Contenido
Índice ................................................................................................................................................... 1
Introducción ........................................................................................................................................ 3
Etapa 1................................................................................................................................................. 4
Implementación de la red virtual. ................................................................................................... 4
Etapa 2................................................................................................................................................. 5
Descripción del script. ..................................................................................................................... 5
Etapa 3............................................................................................................................................... 10
Ejecución del script y resultados. .................................................................................................. 10
Conclusión ......................................................................................................................................... 12
Introducción

Ambos códigos se utilizan en conjunto para automatizar y realizar pruebas de


configuraciones de red en un entorno controlado. El script de prueba
(OSPFMultiAreaTest) utiliza el testbed definido en el archivo YAML para configurar
routers y verificar la correcta implementación del protocolo OSPF en varias áreas.
Esta automatización facilita la detección de posibles problemas y garantiza que la
configuración de red sea coherente y funcional. La combinación de pyats y genie
proporciona herramientas poderosas para la automatización y prueba de redes en
entornos de desarrollo y pruebas.
Etapa 1
Implementación de la red virtual.
Para realizar la practica se uso el software GNS3. Como se muestra en la imagen la
topología diseñada.

Se aplicará lo siguiente:

• OSPF
• IP´S

• LOOPBACK
Etapa 2
Descripción del script.
Este código es un script de prueba para verificar la configuración de un entorno de
red que utiliza OSPF (Open Shortest Path First) en varias áreas.
from pyats import aetest
from [Link] import load

class OSPFMultiAreaTest([Link]):
@[Link]
def setup(self, testbed):
[Link] = testbed

@[Link]
def configure_routers(self):
# Acceder a los dispositivos en el testbed
rt_01 = [Link]['RT-01']
rt_02 = [Link]['RT-02']
rt_03 = [Link]['RT-03']

# Configuración de RT-01
rt_01.configure(
[
'interface Loopback0',
'ip address [Link] [Link]',
'exit',
'interface Serial1/0',
'ip address [Link] [Link]',
'exit',
'interface Serial1/1',
'ip address [Link] [Link]',
'exit',
'router ospf 1',
'network [Link] [Link] area 0',
'network [Link] [Link] area 0',
'network [Link] [Link] area 0',
'exit',
]
)

# Configuración de RT-02
rt_02.configure(
[
'interface Serial1/0',
'ip address [Link] [Link]',
'exit',
'interface Loopback1',
'ip address [Link] [Link]',
'exit',
'interface Loopback2',
'ip address [Link] [Link]',
'exit',
'router ospf 1',
'network [Link] [Link] area 0',
'network [Link] [Link] area 1',
'network [Link] [Link] area 1',
'exit',
]
)

# Configuración de RT-03
rt_03.configure(
[
'interface Serial1/1',
'ip address [Link] [Link]',
'exit',
'interface Loopback3',
'ip address [Link] [Link]',
'exit',
'interface Loopback4',
'ip address [Link] [Link]',
'exit',
'router ospf 1',
'network [Link] [Link] area 0',
'network [Link] [Link] area 2',
'network [Link] [Link] area 2',
'exit',
]
)

@[Link]
def cleanup(self):
pass

if __name__ == '__main__':
# Cargar el testbed desde un archivo YAML
testbed = load('path/to/[Link]')
# Ejecutar la prueba
[Link](testbed=testbed)

Descripcion del código.


1. Testcase Class (OSPFMultiAreaTest): Esta clase define una prueba que
se ejecutará. Dentro de esta clase, hay tres secciones principales:
@[Link], @[Link], y @[Link].
2. Setup Section (@[Link]): Esta sección se ejecuta antes de las
pruebas reales. En este caso, se utiliza para configurar la conexión al testbed.
3. Test Section (@[Link]): Esta sección contiene el código que verifica la
configuración de los routers. Aquí, se accede a los dispositivos del testbed
(RT-01, RT-02, RT-03) y se realiza la configuración de OSPF en cada uno de
ellos.
4. Cleanup Section (@[Link]): Esta sección se ejecuta después de
que todas las pruebas han sido completadas. En este caso, la sección de
limpieza está vacía (pass), pero generalmente se usaría para realizar
acciones de limpieza después de las pruebas.
5. Main Section (if __name__ == '__main__':): Aquí, se carga el testbed
desde un archivo YAML usando la función load de la biblioteca Genie. Luego,
se ejecuta la prueba utilizando [Link].
Archivo YAML
devices:
RT-01:
alias: RT-01
type: router
connections:
a:
interface: Serial1/0
ip: [Link]
b:
interface: Serial1/1
ip: [Link]

RT-02:
alias: RT-02
type: router
connections:
a:
interface: Serial1/0
ip: [Link]
b:
interface: Loopback1
ip: [Link]
c:
interface: Loopback2
ip: [Link]

RT-03:
alias: RT-03
type: router
connections:
a:
interface: Serial1/1
ip: [Link]
b:
interface: Loopback3
ip: [Link]
c:
interface: Loopback4
ip: [Link]

• devices: La sección devices describe cada dispositivo en el testbed.


• RT-01: Describe el primer router.
• alias: Un alias o nombre alternativo para RT-01.
• type: El tipo de dispositivo, que en este caso es un "router".
• connections: Describe las conexiones del router.
• a: La conexión A del router tiene una interfaz Serial1/0
con la dirección IP [Link].
• b: La conexión B del router tiene una interfaz Serial1/1
con la dirección IP [Link].
• RT-02: Describe el segundo router de manera similar a RT-01, con
algunas diferencias en las conexiones.
• a: La conexión A tiene una interfaz Serial1/0 con la dirección
IP [Link].
• b: La conexión B tiene una interfaz Loopback1 con la
dirección IP [Link].
• c: La conexión C tiene una interfaz Loopback2 con la
dirección IP [Link].
• RT-03: Describe el tercer router de manera similar a RT-02, con
algunas diferencias en las conexiones.
• a: La conexión A tiene una interfaz Serial1/1 con la dirección
IP [Link].
• b: La conexión B tiene una interfaz Loopback3 con la
dirección IP [Link].
• c: La conexión C tiene una interfaz Loopback4 con la
dirección IP [Link].

En resumen, este archivo YAML describe la topología de red del testbed,


especificando los routers y sus conexiones, así como las interfaces y direcciones
IP asociadas.
Etapa 3
Ejecución del script y resultados.
En la siguiente imagen se muestra el archivo YAML siendo ejecutado con las
configuraciones que se aplicaran a la red. (Asignación de dirección IP, Lopbacks
etc.)

Se ejecuta el script para que se realicen los cambios, con las librerías solicitadas.
En la siguiente imagen se muestra el resultado del script una vez siendo ejecutado
y se verifico en los tres routers que se aplicó la configuración de manera correcta.
Conclusión

En conjunto, estos códigos ofrecen una solución para realizar pruebas


automatizadas en entornos de red simulados o reales. La combinación de pyats y
genie proporciona herramientas poderosas para la automatización y prueba de
redes, mejorando la eficiencia y la confiabilidad del proceso de desarrollo y prueba
de configuraciones de red.

También podría gustarte