Tratando de no descuidar el blog, hoy les traigo otro libre gratuito que puede utilizar para repasar, recordar o empezar a usar el terminal de Linux/Unix, una vez mas recomiendo su lectura por que no se sabe lo que podrían encontrar que puedas servirles en su día.

Pueden revisar el siguiente Blog donde en primera instancia verán el indice del libro donde puede observar alguna temática en especifico que puedas interesarle. El blog lo pueden encontrar acá.

Ahora si quieren descargar el libro o verlo directamente online desde otro forma les recomiendo este link de Internet Archive.

OSPF

Muchos blogs hablan de OSPF, lo típico como se configura Areas, que es, entre otras cosas. Hoy quiero compartir algunas notas interesantes que quizás no comentan.

  • NSSA al igual Stub, no envía LSA Type 5 al area, por lo que de cierta manera se sumariza la tabla.
  • NSSA no genera default por defecto, y esta se genera solo cuando hay LSA Type 5 en su tabla y la inyecta como LSA Type 7 ó NSSA External Type 2.
  • Totally NSSA, si genera default por defecto y la genera como Inter-Area ó Summary LSA y metrica 1.
  • Por defecto una redistribución de un protocolo hacia OSPF tiene metrica 1 para BGP, 20 para los demas protocolos.
  • Forwarding address cuando sea 0.0.0.0 siempre se buscara el ASBR, de lo contrario tendra next-hop especificado solo si: tiene ospf activado en esa interfaz, la interfaz no es passive o sea broadcast o nonbroadcast.
  • Si forwarding address no la encuentra en su tabla como Inter-Area o Intra-Area, el LSA se ignora y no se instala en la RIB.
  • Las rutas Tipo 1 son preferidas vs Tipo 2.

Raspberry Pi

Ha pasado un tiempo desde la ultima vez que publique en mi Blog, quiero retomarlo tratando de publicar un poco mas seguido, (¿una entrada diaria?) Ya veremos como lo ejecuto.

En esta entrada, quiero empezar con algo simple pero para muchos puede ser un excelente punto de entrada para IoT, y tenemos aquí un Raspberry Pi 3 que ya hoy en día se podría considerar como la computadora mas vendida de todo los tiempos.

Este pequeño ordenador tiempo la potencia de un celular, suficiente para hacer grandes proyectos, hasta los mas simples a lo más complejo. Quiero empezar como funciona tan simple como encender un Led y un Boton.

Para empezar hay el Raspberry Pi necesita de un Sistema Operativo (SO) muchos tutoriales como instalar el SO, en mi caso particular lo hice a través de NOOBS, una vez que hayas puesto en marcha el SO para este tutorial use Raspbian.

Solo aclaremos unos conceptos, una tarjeta como Raspberry posee pines GPIO que son General Purpose Input Output, lo genial de estos pines es que son configurables como entrada como salida. En mi caso particular de Raspberry Pi 3 que posee 40 Pines. Cada pin se tiene que configurar según la función que vaya tener, ya que si se configura como entrada (IN) no puede servir que haga de salida (OUT).

Los GPIO funciona leyendo o enviando señales que no es mas que voltaje que se exponen en los pines, por lo que una salida o entrada se encuentra en el rango 3V por lo que la salida de esta solo se tendrá 3V. Igualmente estos pines se puede dar funcionalidad avanzadas como SPI, PWM, I2C incluso Serial. Ahora el siguiente paso es identificar cada Pin y la posición de esta, hay muchas maneras una es observar la siguiente imagen ☺️:

GPIO layout

Y la otra (mas Geek) es usando el terminal y usar pinout (mas a la mano, y offline) ademas que proporciona informacion adicional.

Ahora que sabemos como identificar los Pin, es hora ponernos manos a la obra y empezar a programar para esta actividad usaremos Python.

Creamos un archivo .py (en mi caso ledon.py) empezaremos importando algunas librerías en Python:

import RPi.GPIO as GPIO
import time

GPIO.setwarnings(False)
GPIO.setmode(GPIO.BOARD)

Estas dos librarías permiten manipular los GPIO, time no mas que una librería que sirve trabajar y manipular variables de tiempo así como también generar Delay en nuestro bucles. Lo siguiente es desactivar unos warnings ya que durante la ejecución te avisara que los pines fueron definidos anteriormente, con esto lo desactivamo. Por ultimo declaramos el modo de GPIO que no es mas que una forma de visualizar los pines segun tu criterio.

Raspberry PI y los pines GPIO: Controlando un LED con Bash y con Python -  Un peatón en la red

Ahora para encender un Led es necesario declarar el tipo de GPIO y tan solo declararlo como 1, ya podemos encender el Led.

GPIO.setup(40, GPIO.OUT)
GPIO.output(40, 1)

Y para apagar el LED es tan simple como:

GPIO.output(40, 0)
Raspberry Pi 3 y Led
Raspberry Pi 3, Protoboard y el LED

Ahora para continuar el desafío vamos a usar un botón de tal manera que cuando lo oprima me encienda el Led, para ello tenemos el siguiente código:

import RPi.GPIO as GPIO
import time
## CONFIG BASICA ##
GPIO.setwarnings(False)
GPIO.setmode(GPIO.BOARD)
## LED
GPIO.setup(40, GPIO.OUT)

## BOTON
GPIO.setup(3, GPIO.IN,pull_up_down=GPIO.PUD_UP)

if __name__ == '__main__':
    while True:
        Boton1 = GPIO.input(3)
        GPIO.output(40, 0)
        if Boton1 == False:
            GPIO.output(40, 1)
Raspberry Pi 3, Protoboard, Led y Boton

Para entender como lo aplique, tenemos que entender que la imagen use el PIN 40 para el LED, me suministra el positivo y Ground o tierra lo obtengo del PIN 39. Para el caso del botón estoy usando el PIN 3 y Ground con el PIN 6. Ahora con el while, Python esta continuamente chequeando el PIN hasta que obtenga un False, al detectarlo enciendo el Led con la instrucción de encender el LED con el que vimos anteriormente.

Asi de simple es usar Raspberry Pi 3, no esta demás comentarles que todo este procedimiento esta bajo su responsabilidad por lo que los invito a que documenten, Raspberry es un dispositivo es mas sensible al ser pines Unbuffered por lo que no tiene ningún mecanismos de protección, igualmente es bueno hacer el intento por que todo esto es parte del aprendizaje y estos ordenadores con económicos.

Hasta una próxima entrada!

Nuevo año, nuevas propuestas, nuevos retos. Recientemente tuve la oportunidad de dar mis primera clases de MPLS en Cloud Lamb la cual como autor de los videos les comparto en mi pagina web, que por cierto solo podran conseguirlo desde esta Web ya que no lo tengo configurado para que este publicamente en Youtuve por lo pronto.

Obviamente los videos no estan libres de defectos, pero esta libre de edición ya que la propuesta de dar clases es que sean en En Vivo pero tal vez en un futuro con algo de edición ó re-grabar la clase pueda mejorarlo.

Para el 27 de Enero doy nuevamente la Clase MPLS mas largo, con mas contenido. Pronto estará disponible por acá.

Links 0x03

Volviendo retomar estos artículos que son muy buenos les comparto algunos links para su utilidad.