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: |
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.
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.
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.
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) |
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.
> /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:0Como puedes ver hay 4 interfaces de red en el ejemplo de arriba
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:
|
|
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 |
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.
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 idefixJunto 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
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
/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
/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.3Si 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.3El 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 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
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.
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 filesUSted 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 [email protected] 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)dnlPara 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 filesUsted tambi�n puede utilizar UUCP y otros m�todos. Realmente depende de lo que ofrezca su proveedor de Internet.
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=4123Si 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.miredNinguna 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.
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 |
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:
IP | |
192.168.0.1 | eth0 en Workstation 1 |
192.168.0.2 | eth0 en Workstation 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 msUstd 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.
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
Contactar con el equipo de LinuFocus
© Guido Socher LinuxFocus 1999 |
Translation information:
|
1999-12-01, generated by lfparser version 0.6