Mostrando entradas con la etiqueta Networking. Mostrar todas las entradas
Mostrando entradas con la etiqueta Networking. Mostrar todas las entradas

sábado, 21 de abril de 2012

CentOS / Red Hat: Making a persistent KVM network bridge

Hoy en día cuando la virtualización se a convertido en una tecnología de facto en la mayoría de los datacenter existen numerosas soluciones compitiendo en el mercado. En mi caso si me dan a elegir entre las distintas soluciones de pago para Linux, elijo una gratuita (y libre), KVM.
KVM (Kernel-based Virtual Machine), es una solución que nos provee full virtualización, haciendo uso de qemu como hypervisor, la cual se encuentra integrada dentro del propio kernel de Linux de manera modular, mediante el módulo del kernel kvm.ko. Esto nos provee cierta compatibilidad y performance que la ponen prácticamente a la par de otras soluciones de virtualización.
Una de las tareas comunes al crear una nueva maquina virtual, es integrar a esta con la red existente, ya que la virtualización nos provee la posibilidad de hostear múltiples servidores en un solo equipo físico.

La configuración en RHEL o CentOS es muy sencilla, para ello debemos crear un bridge, quien será el responsable de interactuar con la red física. Para hacer esto, al momento de booteo y cuando los scripts SYSV de RC configuran la red (mediante el servicio network), el bridge es configurado utilizando brctl, y la configuración leída de aquellos archivos de interfaces los cuales son definidos como bridge.
En nuestro ejemplo tendremos dos Una NIC física (eth0), en la cual crearemos el bridge y lo configuraremos acorde a los paramétros de networking que necesitemos asignarle al servidor.

sábado, 14 de abril de 2012

Solaris 10 Link Aggregation (NIC Bonding) and switch side Trunking configuration

Link Aggregation también llamado NIC Bonding o NIC Teaming. Es un conjunto de técnicas utilizado combinar múltiples conexiones de red en un solo link a fin de brindar mayor throughput, y proveer redundancia en caso de que el link falle. Es común su utilización en switches o routers y puede ser utilizada también en equipos. Acorde al sistema operativo se pueden configurar varios métodos o políticas para realizar bonding (Round Robin, Active/Backup, XOR, Brodcast) , y en este post específicamente nos vamos a basar en Active/Backup a fin de proveer una mayor rebundancia en la conexión de red del servidor.

Vamos a estructurar el post en tres partes: En la primera comprenderemos como se organiza la configuración de networking en Oracle Solaris 10, de esta manera sabremos donde tenemos que tocar al momento de lograr esta configuración. Luego nos enfocaremos a realizar la configuración del lado del switch suponiendo que el mismo corre Cisco IOS, y donde generaremos un Channel Group en el cual se encontrará conectado nuestro servidor con Solaris 10 y configuraremos Spanning Tree para evitar loops de red.
Durante el post utilizaremos dos interfaces de red, pero cabe notar que esto puede realizarse con varias interfaces, es común encontrar Link Aggregations con tres o más links.

sábado, 31 de diciembre de 2011

Unix: Stateful firewalls vs. Non-Stateful firewalls

Hace unos días tuve una interesante discusión en Twitter sobre las ventajas de utilizar como firewall Packet Filter contra Netfilter (IPTables). Cabe destacar que tengo mas conocimientos de PF que de IPTables, por lo cual conozco más las ventajas prácticas del primero que del último.

En teoría de firewalls, encontramos los denominados stateful firewalls, son firewalls que actúan en layer 3 del modelo OSI/ISO (network) donde su punto fuerte es el poder de inspeccionar estados, y saber si los mismos corresponden a una conexión ya existente o no. Esto es posible lograrlo en Linux mediante connectrion tracking utilizando los módulos conntrack, y  así mantener un record de los estados existentes en el sistema operativo.

Tanto Packet Filter como IP Filter utilizan una estructura denominada tabla de estados (o status table), para mantener dicha información. Si un paquete IP ingresa al firewall, se va a buscar mediante una previa inspección del header si el mismo forma parte de una conexión ya existente, y si esto es cierto no se van a inspeccionar reglas de filtrado, sino que el paquete va a pasar directamente. Si un paquete llega por primera vez al firewall, el mismo si matchea con alguna regla, entonces va a crear una entrada en la tabla de estados del firewall, y ya, mientras la conexión siga viva no va a pasar por dicha inspección de reglas.

domingo, 6 de noviembre de 2011

Linux: Identifying a physical network interface card



Hay momentos en los que es necesario identificar físicamente una interfaz de red, por ejemplo, cuando se debe cablear, o armar un bonding.
Esto suele ser una tarea bastante compleja cuando trabajamos con una cantidad grande de servidores y distintos modelos de ellos, ya que los dispositivos pueden ser nombrados de manera distinta, y donde en un servidor es eth0, puede ser eth1. Existe una herramienta muy útil en Linux, que se denomina ethtool.