Está en la página 1de 12

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 genie.testbed import load

class OSPFMultiAreaTest(aetest.Testcase):
@aetest.setup
def setup(self, testbed):
self.tb = testbed

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

# Configuración de RT-01
rt_01.configure(
[
'interface Loopback0',
'ip address 192.168.0.254 255.255.255.0',
'exit',
'interface Serial1/0',
'ip address 10.0.0.2 255.255.255.252',
'exit',
'interface Serial1/1',
'ip address 20.0.0.1 255.255.255.252',
'exit',
'router ospf 1',
'network 10.0.0.0 0.0.0.3 area 0',
'network 20.0.0.0 0.0.0.3 area 0',
'network 192.168.0.0 0.0.0.255 area 0',
'exit',
]
)

# Configuración de RT-02
rt_02.configure(
[
'interface Serial1/0',
'ip address 10.0.0.1 255.255.255.252',
'exit',
'interface Loopback1',
'ip address 192.168.1.254 255.255.255.0',
'exit',
'interface Loopback2',
'ip address 192.168.2.254 255.255.255.0',
'exit',
'router ospf 1',
'network 10.0.0.0 0.0.0.3 area 0',
'network 192.168.1.0 0.0.0.255 area 1',
'network 192.168.2.0 0.0.0.255 area 1',
'exit',
]
)

# Configuración de RT-03
rt_03.configure(
[
'interface Serial1/1',
'ip address 20.0.0.2 255.255.255.252',
'exit',
'interface Loopback3',
'ip address 192.168.3.254 255.255.255.0',
'exit',
'interface Loopback4',
'ip address 192.168.4.254 255.255.255.0',
'exit',
'router ospf 1',
'network 20.0.0.0 0.0.0.3 area 0',
'network 192.168.3.0 0.0.0.255 area 2',
'network 192.168.4.0 0.0.0.255 area 2',
'exit',
]
)

@aetest.cleanup
def cleanup(self):
pass

if __name__ == '__main__':
# Cargar el testbed desde un archivo YAML
testbed = load('path/to/testbed.yaml')
# Ejecutar la prueba
aetest.main(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:
@aetest.setup, @aetest.test, y @aetest.cleanup.
2. Setup Section (@aetest.setup): 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 (@aetest.test): 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 (@aetest.cleanup): 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 aetest.main.
Archivo YAML
devices:
RT-01:
alias: RT-01
type: router
connections:
a:
interface: Serial1/0
ip: 10.0.0.1
b:
interface: Serial1/1
ip: 20.0.0.2

RT-02:
alias: RT-02
type: router
connections:
a:
interface: Serial1/0
ip: 10.0.0.2
b:
interface: Loopback1
ip: 192.168.1.254
c:
interface: Loopback2
ip: 192.168.2.254

RT-03:
alias: RT-03
type: router
connections:
a:
interface: Serial1/1
ip: 20.0.0.1
b:
interface: Loopback3
ip: 192.168.3.254
c:
interface: Loopback4
ip: 192.168.4.254

• 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 10.0.0.1.
• b: La conexión B del router tiene una interfaz Serial1/1
con la dirección IP 20.0.0.2.
• 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 10.0.0.2.
• b: La conexión B tiene una interfaz Loopback1 con la
dirección IP 192.168.1.254.
• c: La conexión C tiene una interfaz Loopback2 con la
dirección IP 192.168.2.254.
• 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 20.0.0.1.
• b: La conexión B tiene una interfaz Loopback3 con la
dirección IP 192.168.3.254.
• c: La conexión C tiene una interfaz Loopback4 con la
dirección IP 192.168.4.254.

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