Hogar Mapa Indice Busqueda Noticias Arca Enlaces Sobre LF
[Top bar]
[Bottom bar]
[Photo of the Author]
por Guido Socher

Sobre el Author:

Guido es desde hace tiempo fan de Linux. Todos los ordenadores de su casa est'an integrados en una red.

Contenidos:

  1. 10base2
  2. 10baseT
  3. 100baseT y 100baseT4
  4. Conector RJ-45
  5. Tipos de Cable
  6. Cable de conexión cruzada
  7. Concentrador (Hub)
  8. LAN
  9. Tarjetas
  10. Interfaz de Red
  11. Enrutamiento
  12. PLIP
  13. Direcciones IP
  14. Archivos
  15. Mascareo-IP (IP-Masquerading ó NAT)
  16. IRQ
  17. Red de Ejemplo
  18. Referencias

Redes Caseras, glosario y resumen

[Illustration]

Resumen:

Las redes se hacen más y más populares. Su viejo 486 puede perfectamente trabajar como servidor de archivos o correr mascareo de IP para dar acceso a Internet a toda la familia desde diferentes ordenadores al mismo tiempo. Este Artículo le proveerá de los conceptos básicos para comenzar una red casera. Explicará el vocabulario que usted necesita para comprender la literatura y otros artículos sobre redes. El artículo se enfoca a una red casera a pequeña escala.



 

10base2

Esta es una Ethernet con 10 Mbit/s sobre cable coaxial. El cable debe ser terminado a ambos extremos con una resistencia de 50 Ohm. El largo total del cable no debe superar los 185 metros. La distancia mínima entre los adaptadores debe ser mayor de 0.5 metros. Los adaptadores de red son conectados al cable utilizando un conector en T. No se necesita un Concentrador (Hub) y los adaptadores se conectan directamente al cable. Esta es probablemente la configuración más económica para una red casera. De ahí que también se le llame en Inglés "cheapernet". Es importante que el cable corra directamente de adaptador a adaptador (topología de bus). No debe haber nigún cable entre la tarjeta y el conector en T.
10base2
 

10baseT

Ethernet con 100 Mbit/s usando cable de pares trenzados. Cada tarjeta es conectada a través del cable de pares trenzados a un punto central llamado concentrador (hub). Esto resulta en una red con topología de estrella. La longitud del cable entre la tarjeta y el concentrador no debe ser superior a 100 metros. Si usted quiere conectar solo 2 tarjetas entonces también es posible descartar el uso del concentrador y usar un cable de conexión cruzada (cross-over).
10baseT  

100baseT y 100baseT4

Este tipo de red también utiliza cable de pares trenzados (como 10baseT) pero corre a 100 Mbit/s. Para la mayoria de las aplicaciones caseras las redes económicas de 10 Mbit/s deberían ser más que suficientes. 100baseT utiliza los pares 2 y 3 del cable de pares trenzados. 100baseT4 utiliza los 4 pares del cable.  

Conector RJ-45

Este es el tipo de conector utilizado para las redes tipo 10baseT, 100baseT y 100baseT4. Es un pequeño conector plano de plástico con 8 pines.
RJ-45
Pin Nombre Descripción para 10baseT
1 TX+ Transmit. Data+
2 TX- Transmit. Data-
3 RX+ Recibir Data+
4 n/c Sólo 100baseT4
5 n/c Sólo 100baseT4
6 RX- Recibir Data-
7 n/c Sólo 100baseT4
8 n/c Sólo 100baseT4
  Nota: TX & RX son
cambiados en el hub.

Nota: Usted necesita pinzas especiales para conectar el conector RJ-45 al cable.

 

Tipos de Cable

Los siguientes tipos de cable son comunes: Los diferentes tipos de cable de Pares Trenzados están estandarizados en categorías de acuerdo a su atenuación.

El mapeo entre los pines del conector RJ-45 y los pares trenzados está estandarizado. Existen muchos estándares y ellos utilizan colores ligeramente diferentes. La asignación válida de pines es:
Número de Par Pines del Conector estándar 1 estándar 2 estándar 3 estándar 4
1 4/5 azul/blanco blanco/azul blanco/azul blanco/marrón
2 3/6 blanco/verde rojo/naranja celeste/púrpura verde/amarillo
3 1/2 blanco/naranja negro/verde blanco/naranja gris/rosa
4 7/8 blanco/marrón amarillo/marrón celeste/púrpura azul/rojo

El cableado es sólo relevante si Ud. desea pasar 20 o más metros de cable a través de toda la casa. Si Ud. tan solo desea conectar unos pocos ordenadores en la misma habitación Ud. puede obtener cables económicos ya hechos con conectores. Estos cables están disponibles típicamente en longitudes entre 1 y 10 metros.

 

Cable de conexión cruzada

Este es un cable especial para conectar sólo dos tarjetas de red con cable de pares trenzados. Solo se necesita un concentrador (HUB) si desea conectar tres o más ordenadores. El cable de conexión cruzada intercambia RX y TX. Los dos conectores se empalman como sigue:
Pin No Pin No
1 conectado al 3
2 conectado al 6
3 conectado al 1
4 conectado al 5 (100baseT4)
5 conectado al 4 (100baseT4)
6 conectado al 2
7 conectado al 8 (100baseT4)
8 conectado al 7 (100baseT4)
9 conectado al 9 (100baseT4)
Usted también puede comprar cables de conexión cruzada ya hechos con conectores.  

Concentrador (Hub)

Se requiere de un concentrador (Hub) para redes de cable de pares trenzados y más de dos ordenadores. El HUB amplifica la señal de un ordenador y la distribuye a todos los demás ordenadores conectados. Para una red casera usted querrá un "concentrador para grupos de trabajo" de 5 u 8 puertos. Puede utilizar interruptores de Ethernet en vez de concentradores pero son mucho más costosos y solo se justifican si Ud. espera alto tráfico entre muchos ordenadores conectados a la red.  

LAN

LAN significa Red de Area Local (siglas de Local Area Network, en Inglés) y denota una red de difusión. Una red de difusión es una red en la cual cada ordenador puede alcanzar a otro ordenador sin necesidad de pasar por un enrutador. Por ejemplo todos los ordenadores conectados a lo largo de un cable coaxial o todos los ordenadores conectados a un HUB forman una LAN.  

Tarjetas

Mi experiencia personal es que las más baratas son las mejores. Las más costosas usualmente no le dan características adicionales. Las tarjetas ISA PNP pueden causar problemas. La mayoría de las tarjetas vendidas como ISA PNP vienen con un disquete DOS y software donde Ud. puede cambiar los parámetros del flash ROM de esa tarjeta y configurarla para no usar PNP. Usted puede establecer una IRQ y una dirección E/S fijas. (Nota: si Vd. tiene un bios PNP entonces debe deshabilitar PNP para esa interrupción). La dirección E/S estándar es normalmente io=0x300. Vd. puede ver cual dirección e interrupciones está ya utilizando escribiendo:
cat /proc/interrupts /proc/ioports | more
(Nota: Estas son interrupciones y direcciones las cuales están siendo realmente utilizadas por un controlador en el momento.)

Si usted adquirió una tarjeta ISA PNP entonces se habrá dado cuenta de que el disquete de DOS no es de mucha utilidad para un usuario de solo Linux. Usted o un amigo podrían tener un viejo disquete de inicio DOS en alguna parte. Copie el programa que vino con la tarjeta de red a ese disquete. Arranque de él y cambie los parámetros de la tarjeta de red. Si los parámetros son conservados en flash ROM, usted solo hará esto cuando instale el hardware y nunca más.

Las tarjetas más económicas son usualmente las tarjetas NE2000 y cuestan hoy en día cerca de $15 (o 15 Euro). Estas tienen buen soporte bajo Linux. Las tarjetas NE2000 están disponibles con bus ISA o PCI.
Las tarjetas de bus ISA requieren los módulos del kernel "ne" y "8390". Usted puede dejatr que el controlador la reconozca automáticamente o proveer un IRQ y una E/S en la línea de comando. La carga del módulo del kernel sin comprobación automática puede ser realizada como sigue:
insmod 8390
insmod ne irq=10 io=0x300

Con una tarjeta PCI usted usualmente no tendrá ningún problema con interrupciones y direcciones de E/S pero son algo más costosas. Los módulos del kernel para las tarjetas NE2000 PCI son llamados ne2k-pci y 8390.

 

Interfaz de Red

La interfaz de red está físicamente representada por su tarjeta de red pero el rérmino Interfaz de Red también es utilizado para las representación de un nombre de software al cual asignar una dirección IP. Si usted tiene un módem y una tarjeta Ethernet en su ordenador entonces usted tiene por lo menos dos direcciones IP en interfaces de red para este solo ordenador. Una dirección IP siempre es asignada a una interfaz de red y nunca a un ordenador (host). Usted puede derivar el nombre del host de una dirección IP, pero existe en general una relación de uno a muchos entre el nombre del host y la dirección IP. El comando ifconfig es usado para imprimir los parámetros para las diferentes interfaces de red activas y puede utilizar éste comando también para configurar una interfaz de red. He aquí un ejemplo:
> /sbin/ifconfig -a
lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Bcast:127.255.255.255  Mask:255.0.0.0
          UP BROADCAST LOOPBACK RUNNING  MTU:3584  Metric:1
          RX packets:1664 errors:0 dropped:0 overruns:0
          TX packets:1664 errors:0 dropped:0 overruns:0

eth0      Link encap:10Mbps Ethernet  HWaddr 00:80:AD:71:52:19
          inet addr:10.0.0.1  Bcast:10.255.255.255  Mask:255.0.0.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:5993 errors:0 dropped:0 overruns:0
          TX packets:4073 errors:0 dropped:0 overruns:0
          Interrupt:5 Base address:0x300 

dummy0    Link encap:10Mbps Ethernet  HWaddr 00:00:00:00:00:00
          inet addr:10.0.0.1  Bcast:10.255.255.255  Mask:255.0.0.0
          UP BROADCAST RUNNING NOARP MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0
          TX packets:0 errors:0 dropped:0 overruns:0

ppp0      Link encap:Point-Point Protocol  
          inet addr:199.94.253.30  P-t-P:199.94.253.4  Mask:255.255.255.0
          UP POINTOPOINT RUNNING  MTU:552  Metric:1
          RX packets:7 errors:0 dropped:0 overruns:0
          TX packets:8 errors:0 dropped:0 overruns:0
Como puedes ver hay 4 interfaces de red en el ejemplo de arriba  

Enrutamiento

Su kernel de Linux tiene un "enrutador IP interno". La tabla de enrutamiento le dice que hacer con un paquete IP entrante. Dependiendo de la dirección IP del paquete usted puede decidir en la tabla de enrutamiento hacia donde enviarlo. Bajo Linux usted puede escribir /sbin/route ó netstat -r para ver la tabla de enrutamiento pero el comando Unix estándar es netstat -r. Como preparar el enrutamiento está más allá del objetivo de éste artículo y habrá un artículo separado cubriendoeste tema. La Guia del Administrador de Red es una buena fuente en línea para más información acerca de como configurar el enrutamiento.  

PLIP

IP de puerto paralelo es una posibilidad para usar el puerto paralelo como interfaz de red. El parámetro de configuración del kernel es llamado CONFIG_PLIP y usted debería preferiblemente configurarlo como un módulo. PLIP es una posibilidad económica para conectar su Laptop a otro ordenador y a través de éste último a su red casera. Usted necesita comprar un cable de puerto paralelo con 2 conectores macho, también llamado cable LapLink. Si quiere hacer el cable usted mismo entonces el cableado es:

Pin No Pin No
17 al 17
25 al 25
2 al 15
3 al 13
4 al 12
5 al 10
Pin No Pin No
6 al 11
15 al 2
13 al 3
12 al 4
10 al 5
11 al 6
PLIP no es tan rápido como Ethernet pero la velocidad es ya suficiente para un uso decente de aplicaciones de red como, por ejemplo, NFS.

 

Direcciones IP

Usted necesita decidir cuales direcciones IP utilizar para su red. Normalmente usted obtendrá una dirección IP asignada por su proveedor de servicios de Internet cuando se ponga "en línea". Esta dirección IP es asignado más o menos automáticamente al interfaz ppp. Usted normalmente no debe de preocuparse por el. Lo que usted necesita decidir ahora es cuáles direcciones asignar a los otros interfaces de su red privada (ej.: interfaces eth0 y plip1). Un número de direcciones son reservadas para uso privado. Estas direcciones no son enrutadas en la Internet y no le pueden causar problema alguno cuando las re-utilize. Sus rangos son:
Máscara de red Direcciones de red
255.0.0.0 10.0.0.0 - 10.255.255.255
255.255.0.0 172.16.0.0 - 172.31.255.255
255.255.255.0 192.168.0.0 - 192.168.255.255
¿Cuáles direcciones debería usted escoger? Bueno, ésto realmente no importa pero recomiendo utilizar números consecutivos. Ej.: Usted tiene 2 ordenadores conectados via Ethernet y usted necesita ahora 2 direcciones para asignar a las 2 tarjetas de red (usted la asigna a la representación en software de las tarjetas. Esta representación en software es llamada interfaz). Solo use 192.168.0.1 y 192.168.0.2

 

Archivos

La mayoría de las distribuciones viene en éstos días con hermosos interfaces gráficos de usuario (GUIs) para configurar las redes (Ej.: yast o netcfg). Usted puede utilizarlas si lo desea. Refiérase al manual del usuario de su distribución de Linux para cómo utilizarlas. Este artículo no se enfocará en una distribución específica. Explica por tanto los archivos de configuración subyacentes que son de algún modo modificados mágicamente si usted utiliza los GUIs de su distribución. Esto le da también la posibilidad de verificar la configuración que los GUIs efectuaron.

/etc/hosts and /etc/host.conf

Para una pequeña red casera no tiene mucho sentido tener habilitado un servidor DNS. En cambio usted puede tan solo entrar los nombres de las máquinas en un archivo llamado /etc/hosts Ejemplo:

# ipaddr. fullname alias
127.0.0.1 localhost
192.168.0.1 obelix.mynet obelix
192.168.0.2 asterix.mynet asterix
192.168.0.3 idefix.mynet idefix
Junto al archivo /etc/hosts va un archivo llamado /etc/host.conf donde usted dice como resolver los nombres. Usted debería usar lo siguiente en éste archivo:
# /etc/host.conf
order hosts bind
# Allow multiple addrs
multi on

/etc/resolv.conf

El archivo /etc/resolv.conf dice donde resolver cualquier cosa que no pueda ser hallada en /etc/hosts. Usted necesita preguntar a su Proveedor de servicios por la dirección IP de su servidor DNS. Usted debería entrar más de un servidor DNS si fuera posible. Si el primer servidor DNS es lento o está caído entonces se le preguntará al próximo. La sintaxis es:

#/etc/resolv.conf
#nameserver ipaddr.
nameserver 123.456.789.1
# alternative DNS server:
nameserver 123.456.111.9

Estableciendo el nombre del host

/etc/HOSTNAME o (/etc/sysconfig/network para redhat) es un archivo donde muchas distribuciones configuran el nombre de la máquina local. Pero en realidad el nombre del host de una máquina es establecido por el comando hostname. Lo que ocurre en éstas distribuciones es que durante el arranque (Ej.: /etc/rc.d/rc.sysinit) el archivo /etc/HOSTNAME es leído y entonces su contenido es alimentado al comando hostname. Cual archivo se usa exactamente depende realmente de las peculiaridades de su instalación específica. Sin embargo, debería ser fácil para usted investigar ésto ya que usted sabe que puede hacer grep para el nombre del host.
Ejemplo de como establecer el nombre del host:

hostname obelix.mynet

Encapsulador tcp

/etc/hosts.allow este es un archivo de configuración para un sistema de seguridad llamado encapsulador tcp. Todo lo que usted necesita saber es que usted debería añadir las direcciones IP de todas las máquinas en su red local, excluyendo la máquina donde se encuentra éste archivo, detrás de la palabra clave ALL:.
Ejemplo: obelix tiene 2 interfaces de red que van a otros ordenadores en su red local. El interfaz con la dirección IP 192.168.0.2 va a asterix y el interfaz con la dirección IP 192.168.0.3 va a idefix.

# hosts.allow 
# See tcpd(8) and hosts_access(5) for a description
ALL: 192.168.0.2   192.168.0.3
Si usted ejecuta un servidor NFS en obelix entonces usted necesita también añadir la línea
portmap: 192.168.0.2   192.168.0.3
El Sistema de Archivos de Red (Network File System ó NFS) le da a usted la posibilidad de tener acceso a archivos en otro host como si fueran del disco duro local.

/etc/hosts.deny es también para el encapsulador tcp y no debería ser cambiado nunca y debe verse siempre como sigue:

portmap: ALL
ALL: ALL

/etc/hosts.equiv

/etc/hosts.equiv permite a los usuarios locales entrar a otras máquinas (Ej.: con rsh) sin contraseña. Usted puede decidir si quiere esto. La sintaxis es: nombre completo (como en /etc/hosts) de un host de confianza por línea. Ej.:

asterix.mynet
idefix.mynet

/etc/hosts.lpd

El archivo /etc/hosts.lpd es importante si usted quisiera habilitar servicios de impresión via lpd. Como configurar la impresión en red es otra historia pero este archivo debe estar presente en la máquina donde se ejecuta el lp-daemon y debe listar los nombres de todas las máquinas a las que se le permite imprimir. La sintáxis es la misma que en hosts.equiv. La configuración de la impresora en sí misma se realiza mejor con las herramientas de administración de su distribución (Ej.: yast en suse y printtool en redhat). El Printing-HOWTO del Proyecto de Documentación de Linux describe como configurarla si usted no quiere utilizar las herramientas de administración de su distribución.

sendmail

El archivo /etc/service.switch es usado por sendmail. En los hosts dentro de su red (aquellos que no tienen una conexión directa con Internet) usted escribe:

hosts   files
aliases files
USted configura entonces su sendmail en estos hosts para reenviar todo el correo a la máquina que tiene el módem y utiliza ésta última como servidor de correo.

Sendmail lee al arranque un archivo de configuración llamado /etc/sendmail.cf y éste archivo es bien difícil de leer. Las fuentes de sendmail por tanto utilizan un lenguaje de macro llamado m4 para generar el sendmail.cf de un archivo macro. Para hacer ésto usted necesita el procesador de macros m4 (probablemente ya instalado en su sistema) y una parte de las fuentes de sendmail. Redhat Linux instala también éstas fuentes en /usr/lib/sendmail-cf otras distribuciones pueden no venir con ellas pero usted siempre podrá desempacar el código fuente de sendmail. Se puede obtener documentación de cómo trabaja sendmail de www.sendmail.org.

Un servidor de correo central es llamado mail-hub. La idea es que las diferentes máquinas en su red reenvíen todo su correo a éste hub y el hub almacene el correo. Usted lo puede accesar via NFS o pop/imap. Un archivo m4 para hacer exactamente eso luce como sigue:

#divert(-1)
include(`../m4/cf.m4')
VERSIONID(`archivo mc para asterix, UN HOST DENTRO DE LA RED PRIVADA')
undefine(`UUCP_RELAY')
undefine(`BITNET_RELAY')
OSTYPE(`linux')
# ponga aqui su dominio de correo. Ej. si su id de usuario es
# joe y su dirección de correo es joe@linuxnet.somewhere.org entonces escribe:
MASQUERADE_AS(linuxnet.somewhere.org)
# No mostrar estos nombres internos al mundo exterior:
MASQUERADE_DOMAIN(asterix.mynet)
MASQUERADE_DOMAIN(asterix)
MASQUERADE_DOMAIN(localdomain)
MASQUERADE_DOMAIN(localhost)
FEATURE(masquerade_envelope)
#the /etc/passwd entry: mail:*:8:12:mail:/var/spool/mail:
define(`confDEF_USER_ID',``8:12'')
# el hub central de correo es obelix, note el punto al final
define(`MAIL_HUB', `obelix.mynet.')dnl
define(`confHOSTS_FILE',/etc/hosts)dnl
MAILER(smtp)dnl
MAILER(local)dnl
Para generar el archivo sendmail.cf a partir del sendmail.mc de arriba usted va al directorio cf de las fuentes (redhat /usr/lib/sendmail-cf/cf) y coloca el sendmail.mc allí. Entonces ejecuta m4 sendmail.mc > /etc/sendmail.cf

Por favor note que para poner la red a trabajar usted no necesitará sendmail en lo absoluto y usted puede enviar y recibir correo con netscape sin preocuparse por sendmail. Sendmail es probablemente algo para usuarios de Linux más avanzados.

Un poco más difícil es la configuración de su servidor de correo. Este debe enviar correo local y reenviar correo externo. El correo externo puede por ejemplo ser reenviado via smtp (Protocolo Simple de Transferencia de Correo, por sus siglas en Inglés) con lo cual usted debería leer la documentación de sendmail (www.sendmail.org) sobre "define(`SMART_HOST', smtp:provider.mail.host)dnl". Para que el correo salga via smtp tambien es necesario que el fichero /etc/service.switch habilite el DNS lookup en la maquina de correo:

hosts   files dns
aliases files 
Usted también puede utilizar UUCP y otros métodos. Realmente depende de lo que ofrezca su proveedor de Internet.
UUCP significa Unix to Unix Copy y es un viejo sistema de transferencia de mensajes pero es bueno para obtener mensajes de su ISP. De nuevo su proveedor de servicios de Internet debe ofrecer éste servicio. Las compañías más enfocadas hacia Windows podrían incluso no saber lo que es UUCP. ¿Cómo trabaja UUCP para usted? Ejemplo: El dominio de su proveedor es somewhere.org y su host es llamado desde afuera linuxnet (afuera significa interfaz ppp, internamente en nuestros ejemplos hasta ahora le hemos llamado obelix). Su proveedor le da a usted todo el correo via UUCP que va a <alguien>@linuxnet.somewhere.org. Entonces usted lo puede distribuir utilizando sendmail. Cada usuario(a) local tiene su propio(a) cuenta de correo la cual puede configurar USTED. Es solo asunto de añadir otro usuario de unix. Desafortunadamente la mayoría de los proveedores de Internet hoy en día tan solo ofrecen una dirección de correo pop y entonces todo esto no se aplica a usted. Use en este caso netscape ó fetchmail

 

Mascareo-IP (IP-Masquerading ó NAT)

IP-Masquerading es el término Linux y la mayoría de las demás personas le llaman Traducción de Dirección de Red (Network Address Tslation o NAT, por sus siglas en Inglés). Esta es una cosa muy valiosa para una pequña red casera. Le da a usted la posibilidad de accesar la Internet desde cualquiera de sus máquinas locales aunque sólo una máquina sea reconocida en la Internet. Esta única máquina está probablemete conectada via modem/ppp y tiene una dirección IP válida enrutada asignada dinámicamente (o estáticamente) a su interfaz ppp0. Con IP-Masquerading mucha gente en diferentes ordenadores en su red casera pueden accesar la Internet al mismo tiempo. LinuxFocus tendrá un artículo separado de cómo establecer el IP-Masquerading. Recomiendo también la lectura del howto acerca de IP_Masquerade. Para el momento solo explicaremos los principios de su funcionamiento.

Para entender como IP-Masquerade trabaja usted debe entender como se establece una conexión TCP. Cuando usted conecta un host a la Internet con su hojeador de web entonces usted conecta la dirección IP de esa máquina y la aplicación de servidor de web. La aplicación (Ej.: un servidor web) es seleccionada por algo llamado número de puerto. Los números de puerto son pre-definidos. El puerto 80 es el número de puerto para la aplicación de servidor de web. Por tanto si usted escribe www.linuxfocus.org en su netscape entonces este sabe que debe conectarse a la dirección IP 195.53.25.18 (=www.linuxfocus.org) y puerto 80. Para una conexión TCP completa donde los datos pueden ser enviados y recibidos, se necesita un par de direcciones IP y puertos. Esto es 195.53.25.18 y 80 más su propia dirección IP y número de puerto local al cual puede contestar el servidor web. El puerto local generalmente es asignado aleatoriamente. Ej.:

www en www.linuxfocus.org:    su.maquina.en.su.isp:
IP=195.53.25.18 Port=80 ----- IP=123.123.456.1 Port=4123
Si usted comienza una segunda ventana de netscape y establece otra conexión a www.linuxfocus.org entonces es escogido un nuevo puerto local:
www at www.linuxfocus.org:    your.machine.at.your.isp:
IP=195.53.25.18 Port=80 ----- IP=123.123.456.1 Port=4123
IP=195.53.25.18 Port=80 ----- IP=123.123.456.1 Port=4541
Nota: dos veces puerto 80 no es correcto pero solo lo
decimos para hacer el ejemplo más sencillo.
Cuando un paquete TCP regresa del servidor web entonces éste sabe a cual ventana netscape ir a causa de la diferencia en el número de puerto en su máquina. En el caso de una red privada detrás de su.maquina.en.su.isp la situación es:
www at www.linuxfocus.org --- su.maquina.en.su.isp --- hostprivado1.mired
                                                        |
                                                        +- hostprivado2.mired 
Ninguna de las direcciones IP de las interfaces de hostprivado1.mired son conocidas en la Internet. Por tanto es imposible enviar un paquete-IP de la Internet de regreso a hostprivado1.mired. Ningún enrutador en la red sabría a donde enviarlo. Sin embargo su.maquina.a.su.isp tiene una dirección IP que es reconocida en la Internet y como vimos arriba, diferentes conexiones pueden ser llamadas aparte por sus números de puerto.
hostprivado1.mired puede solicitar una conexión a www.linuxfocus.org y puerto 80. Escogería un número de puerto, Ej.: 3211, y enviaría un paquete TCP en dirección a su.maquina.en.su.isp. El host su.maquina.en.su.isp normalmente (sin IP-Masquerade) solo enrutaría el paquete afuera a la Internet donde desaparecería (Por lo menos la respuesta desde el servidor www.linuxfocus.org desaparecería). Con IP-Masquerade su.maquina.en.su.isp atrapa el paquete y construye una nueva conexión con un número de puerto aleatorio local. Entonces recuerda que cualesquiera paquetes de respuesta de regreso a ese puerto deben ser enviados a hostprivado1.mired y puerto 3211.
Así IP-Masquerade, contruye una nueva conexión por usted y tiene una tabla de mapeo de sus números de puerto y direcciones IP y números de puerto en la red privada. Si un paquete de respuesta regresa a la máquina donde se ejecuta IP-Masquerade éste chequea a cuáles direcciones IP privadas y número de puerto debería ser reenviado el paquete.

 

IRQ

Los problemas con las interrupciones no son específicos de las redes. Ellos pueden ocurrir en cualquier momento que usted añada nuevo hardware a su ordenador. Desafortunadamente el hardware PC tan solo permite 16 interrupciones y la mayoría de ellas ya están en uso. Es posible compartir interrupciones entre dos tarjetas PCI a expensas de algún poder de CPU. No es posible compartir interrupciones entre tarjetas de bus ISA. Si usted tiene un bios PNP e inserta una tarjeta de bus ISA con un IRQ fijo en su computadora usted debe primero ir a la utilidad de configuración del BIOS y reservar dicho IRQ de lo contrario el BIOS puede tratar de asignar el IRQ a otro hardware y eso no funcionará.

Bajo Linux usted puede ver cuan frecuentemente algún hardware ha generado ya una interrupción utilizando el comando cat /proc/interrupts. El hardware que no esté en uso no generará interrupción alguna.

La siguiente es una lista de IRQs predefinidos. Ud. tan solo puede utilizarlos para otros propósitos si no utiliza el componente de hardware asignado a él. Ej.: si usted utiliza discos SCSI en vez de IDE entonces puede utilizar los IRQ 14/15 para otras cosas.
IRQ Asignado a
0 timer
1 teclado
2 cascade (controlador IRQ programable)
3 serial 2
4 serial 1
5 libre, usualmente tarjeta de audio
6 disquete
7 puerto paralelo, pero bajo Linux no generará interrupción alguna
8 reloj de tiempo real
9 free
10 libre
11 libre
12 ratón PS/2 (/dev/psaux)
13 coprocesador matemático
14 IDE 1
15 IDE 2

 

Red de Ejemplo

Después de tanta teoría me gustaría discutir un pequeño ejemplo de red con usted. ¿Por qué la gente construye redes caseras? He aquí algunas ideas:

  1. Las redes permiten compartir recursos. Un ordenador puede tener un modem y conexión a Internet, y compartirla y utilizarla. Un ordenador puede tener una impresora, y todos los ordenadores pueden compartirla. Un ordenador puede tener una unidad de disco especial (Ej.: disco ZiP, CD-ROM, dvd) todos los ordenadores pueden utilizarla y montarla via NFS. Un ordenador puede tener un gran disco con cantidades de imágenes y archivos de sonido. Todos los ordenadores lo pueden accesar.
  2. Es una cosa técnicamente interesante.
Ahora vamos a nuestra red de ejemplo. Tenemos un ordenador con modem, otro con impresora. Estos dos están conectados via Ethernet. Ambos tienen unidades de cdrom y disquete. También hay un portátil el cual carece tanto de impresora, como de modem y cdrom. Lo conectamos al puerto paralelo libre del primer ordenador y le damos por tanto acceso a la impresora, cdrom y modem/internet.
example network ¿Cómo usted establecería tal red? Bueno, primero usted compra el hardware. Usted necesita [aparte de los ordenadores, modem e impresora], 2 tarjetas de red, un cable de conexión cruzada (Cross-over) y un cable LapLink. No se requiere concentrador (Hub). Usted instala el hardware, conecta los cables y se asegura de que no ocasiona conflictos de interrupción (IRQ) con el nuevo hardware. Luego usted o re-configura el kernel o tan solo carga los módulos de kernel necesarios si ya se encuentran allí. La mayor parte del soporte de hardware ya estará compilado si usted utiliza un kernel pre-configurado de una de las mayores distribuciones. Ahora utilice el comando ifconfig y asigne una dirección IP a las nuevas interfaces de red. Usted entonces utiliza el comando route para definir cuáles a dónde deben ser enviados los paquetes-IP . Después de ésto su red debería ser operacional. Usted todavía no puede utilizar nombres de dominio e IP-Masquerade tampoco trabajará pero usted puede enviar un ping y observar cómo el LED de su tarjeta de red destella.
Si usted utiliza las siguientes direcciones IP:
IP 
192.168.0.1 eth0 en Workstation 1
192.168.0.2 eth0 en Workstation 2
Entonces usted puede escribir en Workstation 1 ping 192.168.0.2:
>ping 192.168.0.2
PING 192.168.0.2 (192.168.0.2): 56 data bytes
64 bytes from 192.168.0.2: icmp_seq=0 ttl=64 time=0.9 ms
64 bytes from 192.168.0.2: icmp_seq=1 ttl=64 time=0.8 ms
64 bytes from 192.168.0.2: icmp_seq=2 ttl=64 time=0.9 ms

--- ping statistics ---
3 packets transmitted, 3 packets received, 0% packet loss
round-trip min/avg/max = 0.8/0.8/0.9 ms
Ustd detiene esto con ctrl-c. Eche un vistazo también al comando cat /proc/interrupts donde usted debería ver su tarjeta de red o PLIP en el caso de la conexión del portátil. Un cat /proc/ioports debería mostrarle su nuevo hardware y el comando netstat -i muestra cuántos paquetes IP son enviados a cada interfaz.
Usted ya puede usar en este nivel ftp entre los ordenadores e intercambiar archivos.

Básicamente su red ya se encuentra allí pero nada interesante funciona aún. Ahora usted debe editar los diferentes archivos de configuración (use también las finas herramientas gráficas que están disponibles con las varias distribuciones). Finalmente usted establece IP-Masquerade y NFS. Su red ahora es completamente funcional.

Espero que éste le haya brindado un buen vistazo. No se desanime si no le dije exactamente como configurar realmente la parte de software. Habrá artículos separados cubriendo ifconfig/route/netstat, IP-Masquerade, configuración PPP, impresión en red con lpd y NFS. Este artículo estaba destinado a dar un buen resumen para hacer más fácil la comprensión de otros artículos sobre redes.

Feliz networking

P.D.: LinuxFocus es siempre feliz de recibir artículos sobre redes. No todos los artículos se han escrito aún y éste es tan solo el comienzo de una serie. Haganoslo saber si usted es un usuario experimentado y le gustaría escribir un artículo

 

Referencias


Contactar con el equipo de LinuFocus
© Guido Socher
LinuxFocus 1999
Translation information:
en -> -- Guido Socher
en -> es Victor Rossetti

1999-12-01, generated by lfparser version 0.6