Redes en Linux Como (Previamente Net-3 Como)
Autor actual: Joshua Drake, {Poet},
[email protected]
Autores originales: Terry Dawson (autor principal),
[email protected]; Alessandro Rubini,
[email protected] (mantenimiento)
Traducido por: Ricardo Javier C�rdenes Medina,
[email protected]
v1.5, 20 de agosto de 1997, traducci�n del 3 de septiembre
de 1999
Este C�mo es la base para entender la evoluci�n de las capacidades de
Linux para tratar con redes inform�ticas. Es el punto de partida para
aprender todo sobre el mantenimiento de redes TCP/IP, la configuraci�n
de los archivos relacionados con la red, y hay un amplio cap�tulo
sobre configuraci�n de dispositivos f�sicos. En suma, un documento muy
exhaustivo que merece la pena leer.
______________________________________________________________________
�ndice general
1. Introducci�n.
2. Historia del documento
2.1 Comentarios y sugerencias
3. C�mo usar este documento.
3.1 Convenciones usadas en el documento
4. Informaci�n general sobre las redes en Linux.
4.1 Breve historia del desarrollo del
4.2 Recursos referentes al tratamiento de redes con Linux.
4.3 D�nde conseguir informaci�n sobre redes no espec�fica de Linux.
5. Informaci�n gen�rica sobre la configuraci�n de redes.
5.1 �Qu� necesito para comenzar?
5.1.1 C�digo fuente del n�cleo.
5.1.2 Herramientas de red actualizadas.
5.1.3 Aplicaciones de red.
5.1.4 Introducci�n a las direcciones IP.
5.2 �D�nde deber�a poner las �rdenes de configuraci�n?
5.3 Creaci�n de las interfaces de red.
5.4 Configuraci�n de una interfaz de red.
5.5 Configuraci�n del sistema de resoluci�n de nombres (
5.5.1 �Qu� hay en un nombre?
5.5.2 Qu� informaci�n necesitar�
5.5.3 (TT
5.5.4 (TT
5.5.5 (TT
5.5.6 Ejecutar un servidor de nombres
5.6 Configuraci�n de la interfaz
5.7 Encaminamiento (
5.7.1 Entonces �qu� hace el programa
5.8 Configuraci�n de los servidores de red y los servicios.
5.8.1 (TT
5.8.1.1 Un ejemplo de fichero
5.8.2 (TT
5.8.2.1 Un ejemplo de
5.9 Otros ficheros de configuraci�n relacionados con la red
5.9.1 (TT
5.9.2 (TT
5.10 Seguridad en la red y control de acceso.
5.10.1 (TT
5.10.2 (TT
5.10.3 El mecanismo de control de acceso
5.10.3.1 (TT
5.10.3.2 (TT
5.10.4 (TT
5.10.5 Configure su demonio de ftp adecuadamente.
5.10.6 Cortafuegos para redes.
5.10.7 Otras sugerencias.
6. Informaci�n relacionada con IP y Ethernet
6.1 Ethernet
6.2 EQL - ecualizador de tr�fico para l�neas m�ltiples
6.3 IP Accounting (en Linux 2.0)
6.4 IP Accounting (en Linux 2.2)
6.5 IP Aliasing
6.6 IP Firewall (para Linux 2.0)
6.7 IP Firewall (para Linux 2.2)
6.8 Encapsulaci�n IPIP
6.8.1 Una configuraci�n de red con
6.8.2 Configuraci�n de la m�quina cuyos paquetes ser�n encapsulados
6.9 Enmascarado IP (
6.10 Proxy IP transparente
6.11 IPv6
6.12 Mobile IP
6.13 Multicast
6.14 NAT - Network Address Translation (Traducci�n de direcciones de red)
6.15 Traffic Shaper (Manipulaci�n del ancho de banda)
6.16 Encaminamiento con Linux-2.2
7. Uso de hardware com�n en los PC
7.1 RDSI
7.2 PLIP en Linux-2.0
7.3 PLIP en Linux-2.2
7.4 PPP
7.4.1 Mantener una conexi�n permanente a la red usando
7.5 Cliente SLIP
7.5.1 dip
7.5.2 slattach
7.5.3 �Cu�ndo usar cada uno?
7.5.4 Servidor SLIP est�tico con l�nea por llamada y DIP.
7.5.5 Servidor SLIP din�mico con l�nea por llamada y DIP.
7.5.6 Uso de Dip.
7.5.7 Conexi�n SLIP permanente usando una l�nea dedicada y slattach
7.6 Servidor SLIP.
7.6.1 Servidor slip usando
7.6.1.1 D�nde obtener
7.6.1.2 Configuraci�n de
7.6.1.3 Configuraci�n de
7.6.1.4 Configuraci�n del fichero
7.6.1.5 Configuraci�n del fichero
7.6.1.6 Configuraci�n del fichero
7.6.2 Servidor Slip usando
7.6.2.1 Configuraci�n del fichero /etc/diphosts
7.6.3 Servidor SLIP usando el paquete
8. Otras tecnolog�as de red
8.1 ARCNet
8.2 Appletalk (
8.2.1 Configuraci�n del software Appletalk.
8.2.2 Exportaci�n de un sistema de ficheros Linux v�a Appletalk.
8.2.3 Compartir la impresora Linux a trav�s de Appletalk.
8.2.4 Ejecuci�n de AppleTalk.
8.2.5 Comprobaci�n de AppleTalk.
8.2.6 Problemas con AppleTalk.
8.2.7 Si necesitase m�s informaci�n...
8.3 ATM
8.4 AX25 (
8.5 DECNet
8.6 FDDI
8.7 Retransmisi�n de Tramas (
8.8 IPX (
8.9 NetRom (
8.10 Protocolo Rose (
8.11 Soporte SAMBA - NetBEUI, NetBios.
8.12 Soporte de STRIP (
8.13 Anillo con testigo (
8.14 X.25
8.15 Tarjeta WaveLan
9. Cables y Cableado
9.1 Cable serie M�dem NULO (NULL Modem)
9.2 Cable de puerto paralelo (cable PLIP)
9.3 Cableado Ethernet 10base2 (coaxial fino)
9.4 Cable Ethernet de Par Trenzado
10. Glosario de T�rminos usados en este documento
11. �Linux para un PSI?
12. Reconocimientos
13. Copyright.
14. Anexo: El INSFLUG
______________________________________________________________________
1. Introducci�n.
El Sistema Operativo Linux se enorgullece de contar con una
implementaci�n de servicios de red basada en el n�cleo, escrita casi
por completo partiendo de cero. Su rendimiento en los n�cleos
recientes lo convierte en una alternativa v�lida incluso a el mejor de
sus iguales. Este documento intenta describir c�mo instalar y
configurar el software de red de Linux y sus herramientas asociadas.
Esta es la primera entrega desde que LinuxPorts comenz� a hacerse
cargo del documento. Quisiera decir antes que nada que deseamos que
durante los pr�ximos meses encuentre de utilidad este documento, y que
seamos capaces de proporcionar informaci�n precisa y puntual en lo que
respecta al tratamiento de redes con Linux.
Este documento, al igual que los otros Comos de los que nos
encargamos, se va a convertir en algo muy diferente. Dentro de poco
pasar� a ser el Redes en Linux Como en lugar de ser s�lo el Net-3(4)
Como. Va a cubrir temas como PPP, VPN (Redes Privadas Virtuales), y
otros...
2. Historia del documento
El NET-FAQ original fue escrito por Matt Welsh y Terry Dawson para
responder preguntas frecuentes sobre las redes para Linux, un tiempo
antes de que comenzara formalmente el Proyecto de Documentaci�n de
Linux. Cubr�a las �ltimas versiones de desarrollo del Linux Networking
Kernel. El NET-2-HOWTO sobresey� el NET-FAQ y fue uno de los
documentos HOWTO originales del LDP. Cubr�a lo que se llam� versi�n 2
y posteriormente versi�n 3 del Linux Kernel Networking software. Este
documento a su vez lo sobresee y s�lo se refiere a la versi�n 4 del
Linux Networking Kernel: m�s espec�ficamente a las versiones 2.0.x y
2.2.x del n�cleo.
Las versiones anteriores de este documento llegaron a ser bastante
grandes a causa de la enorme cantidad de material que ca�a dentro de
su �mbito. Para ayudar a resolver este problema se han producido unos
cuantos Como que tratan con temas espec�ficos sobre redes. Este
documento proporciona referencias a dichos Como cuando sean relevantes
y cubre aquellas �reas de las que a�n no se habla en otros documentos.
2.1. Comentarios y sugerencias
Estamos interesados en que la gente nos proporcione sugerencias (que
nos informen de cambios, errores, etc.). Por favor, p�ngase en
contacto con nosotros en:
[email protected]. De nuevo, si encuentra
algo err�neo o cualquier cosa que desear�a que fuese a�adida, por
favor, contacte con nosotros.
3. C�mo usar este documento.
Este documento est� organizado de una manera vertical. La primera
secci�n incluye material informativo y se la puede saltar si no es de
su inter�s; lo que sigue es una discusi�n gen�rica sobre temas
referentes a las redes, y debe asegurarse de entender esto antes de
proceder con partes m�s espec�ficas. El resto, informaci�n �espec�fica
de la tecnolog�a�, est� agrupada en tres secciones principales:
informaci�n relativa a Ethernet e IP, tecnolog�as pertinentes a
hardware para PC de amplia difusi�n y tecnolog�as usadas s�lo rara
vez.
La metodolog�a que nosotros sugerimos a la hora de leer este documento
es la siguiente:
Lea las secciones gen�ricas
Estas secciones se aplican a toda, o casi toda tecnolog�a
descrita m�s adelante, y por tanto es muy importante que lo
comprenda.
Estudie su red
Deber�a saber c�mo est�, o estar� dise�ada su red, y exactamente
qu� tipo de hardware y tecnolog�a estar� implementando.
Lea la secci�n ``IP y Ethernet'' si est�
conectado directamente a una LAN o a Internet" Esta secci�n
describe la configuraci�n b�sica para Ethernet ya las varias
posibilidades que ofrece Linux para las redes IP, como servicio
de cortafuegos, encaminamiento avanzado, etc.
Lea la siguiente secci�n si est� interesado en redes locales de
bajo coste o en conexiones punto a punto" Esta secci�n describe
PLIP, PPP, SLIP y RDSI, las tecnolog�as de m�s amplia difusi�n
en estaciones de trabajo personales.
Lea las secciones espec�ficas a tecnolog�as relacionadas con sus
necesidades" Si sus necesidades difieren de una soluci�n con IP
y hardware com�n, la secci�n del final cubre detalles
espec�ficos a protocolos diferentes al IP y a hardware de
comunicaciones peculiar.
Configure
Deber�a intentar configurar su red y tomar nota cuidadosamente
de cualquier problema que tenga.
Busque m�s ayuda si la necesita
Si experimenta problemas que este documento no le ayude a
resolver entonces lea la secci�n relativa a d�nde encontrar
ayuda o d�nde informar de los errores.
�Divi�rtase!
Trabajar en red es divertido, disfr�telo.
3.1. Convenciones usadas en el documento
No se han utilizado convenciones especiales, pero deber�a estar al
corriente de la manera en que aparecen las �rdenes. Siguiendo el
estilo cl�sico en la documentaci�n de Unix, cualquier orden que deba
escribir en su int�rprete de �rdenes, estar� prefijada por el s�mbolo
�prompt�. Este Como muestra el prompt usuario$ para las �rdenes que no
necesitan que las ejecute el root. He escogido usar root# en lugar de
un simple # para evitar confusiones con los trozos dispersos de
guiones (shell script), donde la almohadilla (#) se usa para definir
comentarios entre l�neas.
Cuando se muestran �Opciones de Compilaci�n del N�cleo�, se presentan
en el formato usado por menuconfig. Deber�an ser comprensibles incluso
si usted (al igual que yo) no est� acostumbrado a usar menuconfig. Si
tiene dudas al respecto del anidamiento de las opciones, ejecutar el
programa le ser� de ayuda.
F�jese en que los enlaces a otros documentos COMO son locales para que
pueda acceder a las copias de los documentos del LDP que haya en el
servidor al que usted est� accediendo, en caso de que est� leyendo la
versi�n html de este documento. Si no dispone del paquete completo de
documentos, cada COMO puede ser obtenido en www.linuxdoc.org
(directorio /pub/Linux/HOWTO) y en sus incontables servidores r�plica
(mirror sites).
4. Informaci�n general sobre las redes en Linux.
4.1. Breve historia del desarrollo del Linux Networking Kernel .
Desarrollar una nueva implementaci�n n�cleo de la pila para el
protocolo tcp/ip que rinda tan bien como las implementaciones
existentes no es una tarea f�cil. La decisi�n de no portar una de las
implementaciones existentes se tom� en un tiempo en que hab�a cierta
incertidumbre al respecto de si las implementaciones existentes ser�an
lastradas con copyrights restrictivos por el precedente sentado por
U.S.L. y en que hab�a un gran entusiasmo por hacerlo diferente y
quiz�s incluso mejor de lo que se hab�a hecho.
El voluntario original para liderar el desarrollo del n�cleo del
c�digo de red fue Ross Biro,
[email protected]. Ross produjo una
implementaci�n simple e incompleta pero aprovechable en su mayor parte
de rutinas que fueron completadas con un controlador de Ethernet para
la interfaz de red WD-8003. Esto era suficiente para tener a mucha
gente probando y experimentando con el software y algunas personas
incluso intentaron conectar m�quinas con esta configuraci�n a
conexiones reales en Internet. La presi�n dentro de la comunidad de
Linux conduciendo el desarrollo de la implementaci�n de la red estaba
creciendo y, al final, el coste de una combinaci�n de cierta presi�n
aplicada sobre Ross y sus propios compromisos personales le
sobrecargaron y se descolg� del puesto de desarrollador jefe. Los
esfuerzos de Ross por iniciar el proyecto y la aceptaci�n de la
responsabilidad de producir realmente algo �til en tan controvertidas
circunstancias fue lo que cataliz� todo el trabajo futuro y por lo
tanto supone un componente esencial en el �xito del producto actual.
Orest Zborowski,
[email protected], produjo la interfaz original de
programaci�n de sockets BSD para el n�cleo de Linux. Fue un gran paso
adelante ya que permiti� portar a Linux muchas de las aplicaciones de
red existentes sin modificaciones serias.
Por aquel momento, Laurence Culhane,
[email protected] desarroll�
los primeros controladores de dispositivo para la implementaci�n del
protocolo SLIP en Linux. Esto permiti� a mucha gente que no ten�a
acceso a redes Ethernet experimentar con el nuevo software de red. De
nuevo, hubo gente que cogi� este controlador y lo puso en servicio
para conectarse a Internet. Esto dio a mucha gente una idea de las
posibilidades que podr�an hacerse realidad si Linux tuviera un soporte
total de red y creciera el n�mero de usuarios usando y experimentando
de forma activa el software de red que exist�a.
Una de las personas que tambi�n hab�a estado trabajando activamente en
la tarea de construir la implementaci�n de red era Fred vam Kempen,
[email protected]. Despu�s de un periodo de incertidumbre
tras la renuncia de Ross al cargo de desarrollador jefe, Fred ofreci�
su tiempo y esfuerzos y acept� el papel esencialmente sin oposici�n.
Fred ten�a planes ambiciosos sobre la direcci�n que quer�a que
siguiese el software de red de Linux y orient� el progreso hacia esos
objetivos. Fred desarroll� varias versiones del c�digo de red llamado
el n�cleo de c�digo NET-2 (el c�digo NET era el de Ross) que mucha
gente pudo usar de manera m�s �til. Fred puso formalmente algunas
innovaciones en la agenda de desarrollo, como la interfaz din�mica de
dispositivo, la implementaci�n del protocolo Amateur Radio AX.25 y una
interfaz de red dise�ada m�s modularmente. El c�digo NET-2 de Fred
fue usado por un gran n�mero de entusiastas, que crec�a continuamente
seg�n se iba corriendo la voz de que el software funcionaba. El
software de red en esos momentos a�n estaba constituido por un gran
n�mero de parches a la versi�n est�ndar del n�cleo y no estaba
incluido en la versi�n normal. El NET-FAQ y el subsecuente NET-2-HOWTO
describ�an el por entonces relativamente complejo procedimiento de
ponerlo todo en marcha. Fred se concentraba en desarrollar
innovaciones frente a las implementaciones est�ndar de red y eso
estaba llevando tiempo. La comunidad de usuarios estaba
impacient�ndose por algo que funcionase eficazmente y satisficiera al
80% de usuarios y, como con Ross, la presi�n sobre Fred como
desarrollador en jefe creci�.
Alan Cox,
[email protected] propuso una soluci�n al problema
dise�ada para resolver la situaci�n. Propuso que �l podr�a coger el
c�digo NET-2 de Fred para quitar fallos, haci�ndolo eficaz y estable
para que satisficiera al impaciente usuario de base al tiempo que
retiraba esa presi�n de Fred permiti�ndole continuar con su trabajo.
Alan se puso a ello, obteniendo buenos resultados y su primera versi�n
del c�digo de red de Linux fue llamada it/Net-2D(ebugged)/. El c�digo
funcionaba bien en muchas configuraciones t�picas y el usuario de base
estaba feliz. Alan puso claramente sus propias ideas y habilidad para
contribuir al proyecto y como consecuencia comenzaron a aparecer
muchas discusiones relativas a la direcci�n del c�digo NET-2. Esto
desarroll� dos tendencias distintas dentro de la comunidad de red de
Linux, una que ten�a la filosof�a �hazlo funcionar primero, y luego
hazlo mejor� y la otra �hazlo mejor primero�. Linus termin�
arbitrando y ofreciendo su apoyo a los esfuerzos de desarrollo de Alan
e incluy� el c�digo de Alan en la distribuci�n est�ndar de las fuentes
del n�cleo. Esto puso a Fred en una posici�n dif�cil. Cualquier
desarrollo continuado podr�a debilitar la gran base de usuarios usando
y probando activamente el c�digo y eso significar�a que los progresos
ser�an lentos y dif�ciles. Fred continu� trabajando un tiempo y a la
larga acab� dej�ndolo y Alan se convirti� en el nuevo jefe del
esfuerzo de desarrollo de red para Linux.
Donald Becker,
[email protected] revel� pronto su talento
para los aspectos de bajo nivel de las redes y produjo un amplio
abanico de controladores de red. Casi todos los incluidos en los
n�cleos actuales fueron desarrollados por �l. Hay m�s gente que ha
hecho contribuciones significativas, pero el trabajo de Donald es
prol�fico y eso le garantiza una menci�n especial.
Alan continu� refinando el c�digo NET-2-Debugged durante un tiempo
mientras trabajaba en solucionar algunos de los problemas que quedaban
sin mirar en la lista PORHACER. Por la �poca en que al c�digo fuente
1.3.* del n�cleo les estaban creciendo los dientes, el c�digo de red
hab�a migrado a la entrega NET-3 que es en la que las versiones
actuales est�n basadas. Alan trabaj� en muchos aspectos diferentes
del c�digo de red y con la asistencia de mucha otra gente con talento
de la comunidad de red de Linux hizo crecer el c�digo en todas
direcciones. Alan produjo dispositivos de red din�micos y las
primeras implementaciones de los est�ndares AX.25 e IPX. Alan ha
continuado jugueteando con el c�digo, estructur�ndolo y mejor�ndolo
lentamente hasta el estado en que se encuentra hoy d�a.
Michael Callahan,
[email protected] y Al Longyear
[email protected] aportaron la implementaci�n del protocolo PPP, lo
cual fue cr�tico para incrementar el n�mero de gente que usaba
activamente Linux para trabajar en red.
Jonathon Naylor,
[email protected] ha contribuido mejorando
significativamente el c�digo de AX.25 de Alan, a�adiendo los
protocolos NetRom y Rose. La implementaci�n de AX.25/NetRom/Rose es en
s� misma bastante significativa, porque ning�n otro sistema operativo
puede enorgullecerse de trabajar de forma nativa con estos protocolos
aparte de Linux.
Por supuesto, ha habido centenares de otras personas que han hecho
contribuciones significativas al desarrollo del software de red de
Linux. A algunas de estas personas las encontrar� m�s adelante en la
secci�n de tecnolog�as espec�ficas; otras personas han contribuido con
m�dulos, controladores, correcciones de errores, sugerencias, informes
de pruebas y apoyo moral. En cada caso, cada uno puede decir que ha
puesto su granito de arena y que ofreci� lo que pudo. El c�digo de red
del n�cleo de Linux es un excelente ejemplo de los resultados que se
pueden obtener del an�rquico estilo de desarrollo de Linux. Si a�n no
se ha sorprendido, lo har� pronto. El desarrollo no se ha detenido.
4.2. Recursos referentes al tratamiento de redes con Linux.
Hay varios sitios en los que puede encontrar informaci�n acerca de la
implementaci�n de red de Linux.
Tiene a su disposici�n un mont�n de asesores. Podr� encontrar un
listado en la LinuxPorts Consultants Database,
http://www.linuxports.com
Alan Cox, quien en estos momentos se encarga de mantener el c�digo de
red del n�cleo de Linux tiene una p�gina WWW con los �ltimos titulares
y eventos de inter�s relativos al estado de desarrollo de las
funcionalidades presentes y futuras en cuanto al c�digo de red linux
en: www.uk.linux.org.
Otro buen sitio es un libro escrito por Olaf Kirch titulado la Gu�a
para Administradores de Redes. Es parte del Proyecto de Documentaci�n
de Linux
http://www.linuxdoc.org y puede leerlo de forma interactiva
en su versi�n HTML
http://metalab.unc.edu/LDP/LDP/nag/nag.html, u
obtenerlo en varios formatos mediante FTP (y en castellano) desde el
archivo del proyecto LuCAS
ftp://lucas.hispalinux.es/pub/LuCAS/Manuales-LuCAS/GARL. El libro de
Olaf es bastante extenso y procura una buena iniciaci�n de alto nivel
a la configuraci�n de redes en Linux.
Hay un grupo de noticias en la jerarqu�a de noticias de Linux dedicado
a las redes y a materias relacionadas: comp.os.linux.networking
Hay una lista de correo a la que se puede suscribir, donde hacer
preguntas relacionadas al trabajo en redes con Linux. Para suscribirse
debe mandar un mensaje:
A:
[email protected]
Asunto: cualquier cosa
Mensaje:
subscribe linux-net
En las diferentes redes de IRC suele haber canales #linux en los que
suele haber gente que responde preguntas sobre linux y redes.
Por favor, cuando vaya a informar de cualquier problema, recuerde
incluir todos los detalles que pueda relevantes al respecto. Deber�a
informar, espec�ficamente, de las versiones de los programas que est�
usando, sobre todo la versi�n del n�cleo, la versi�n de herramientas
como pppd o dip y la naturaleza exacta del problema que est�
experimentando. Esto significa tomar nota de la sintaxis exacta de
cualquier mensaje de error que reciba y de cualquier orden que est�
ejecutando.
4.3. Linux. D�nde conseguir informaci�n sobre redes no espec�fica de
Si est� buscando informaci�n b�sica de aprendizaje sobre redes tcp/ip
en general, entonces le recomiendo que eche un vistazo a los
siguientes documentos:
TCP/IP Introduction
este documento est� tanto en versi�n texto
ftp://athos.rutgers.edu/runet/tcp-ip-intro.doc como en versi�n
PostScript
ftp://athos.rutgers.edu/runet/tcp-ip-intro.ps.
TCP/IP Administration
este documento est� tanto en versi�n texto
ftp://athos.rutgers.edu/runet/tcp-ip-admin.doc como en versi�n
PostScript
ftp://athos.rutgers.edu/runet/tcp-ip-admin.ps.
Si busca informaci�n algo m�s detallada sobre redes tcp/ip entonces le
recomiendo:
Internetworking with TCP/IP, Volume 1: principles, protocols
and architecture, de Douglas E. Comer, ISBN 0-13-227836-7,
Prentice Hall publications, Tercera edici�n, 1995.
Si quiere aprender a escribir aplicaciones de red en entornos
compatibles Unix entonces tambi�n le recomiendo:
Unix Network Programming, by W. Richard Stevens, ISBN
0-13-949876-1, Prentice Hall publications, 1990.
Tambi�n deber�a probar el grupo de noticias comp.protocols.tcp-ip.
Otra fuente importante de informaci�n t�cnica espec�fica relativa a la
Internet y al conjunto de protocolos tcp/ip son los RFC. RFC es un
acr�nimo de Request For Comments y es el medio est�ndar de enviar y
documentar los protocolos est�ndar de Internet. Hay muchos sitios de
donde tomar los RFC. Muchos de estos sitios son de FTP y otros
proporcionan acceso por World Wide Web con un buscador asociado que le
permite buscar palabras clave en la base de datos de RFC.
Un posible lugar donde encontrar lo RFC es la base de datos de Nexor
http://pubweb.nexor.co.uk/public/rfc/index/rfc.html.
5. Informaci�n gen�rica sobre la configuraci�n de redes.
Las siguientes subsecciones las necesitar� para saber y comprender
ciertas cosas antes de que intente configurar la red. Son principios
fundamentales que se aplican independientemente de la naturaleza
exacta de la red que desee organizar.
5.1. �Qu� necesito para comenzar?
Antes de que empiece a construir o configurar la red necesita saber
algunas cosas. Las m�s importantes son:
5.1.1. C�digo fuente del n�cleo.
Antes que nada:
La mayor�a de las distribuciones vienen por defecto con el soporte de
red activado, por lo cual no habr� que recompilar el n�cleo. Si tiene
hardware com�n, deber�a irle bien. Por ejemplo, tarjetas de red 3COM,
NE2000, o Intel. Sin embargo proporcionamos la siguiente informaci�n
por si necesita actualizar el n�cleo.
Como puede ser que el n�cleo que est� ejecutando no est� preparado
para los tipos de red o tarjetas que desee usar, probablemente
necesitar� las fuentes del n�cleo para recompilarlo con las opciones
apropiadas.
Siempre puede obtener la �ltima versi�n de CDROM.com
permite que MUCHOS usuarios conecten simult�neamente. El sitio oficial
es kernel.org, pero use el anterior si tiene la posibilidad. Por
favor, recuerde que ftp.kernel.org est� seriamente sobrecargado. Use
un servidor r�plica.
Normalmente las fuentes del n�cleo se instalar�n en el directorio
/usr/src/linux. Para m�s informaci�n sobre c�mo aplicar parches y
construir el n�cleo deber�a leer el Kernel Como. Para m�s informaci�n
sobre c�mo configurar m�dulos del n�cleo deber�a leer el Modules mini-
Howto. Adem�s, el fichero README que hay en las fuentes del n�cleo y
el directorio Documentation son muy ilustrativos para el lector
intr�pido.
A menos que se diga espec�ficamente lo contrario, recomiendo que
empiece con la versi�n est�ndar del n�cleo (la que tenga un n�mero par
como segundo d�gito del n�mero de versi�n). Las versiones de
desarrollo del n�cleo (las que tienen el segundo d�gito impar) podr�an
tener algunos cambios estructurales u otros que podr�an causar
problemas con otro software en su sistema. Si no est� seguro de que
pueda resolver ese tipo de problemas sumado al potencial de que haya
otros errores de software, no los use.
Por otro lado, algunas de las capacidades aqu� descritas han sido
introducidas durante el desarrollo de los n�cleos 2.1, por lo que
tendr� que tomar una decisi�n: puede mantenerse en 2.0 mientras espera
por el 2.2 y por una distribuci�n con cada herramienta actualizada, o
puede coger un 2.1 y buscar los diversos programas necesarios para
explotar las nuevas capacidades. En el momento de escribir este Como,
en Agosto de 1998, el n�cleo disponible es el 2.1.115 y se espera que
el 2.2 aparezca pronto.
Nota del Traductor: En el momento en que acab� la traducci�n de este
Como, en septiembre de 1999, las versiones disponibles del n�cleo son
la 2.2.12 (estable) y la 2.3.16 (desarrollo). Adem�s, las principales
distribuciones han puesto al d�a sus herramientas para tratar las
capacidades de la serie 2.1 y superiores.
5.1.2. Herramientas de red actualizadas.
Las herramientas de red son los programas que usted usa para
configurar los dispositivos de red de linux. Estas herramientas
permiten asignar direcciones a dispositivos y configurar rutas, por
ejemplo.
La mayor�a de distribuciones modernas de Linux est�n dotadas con las
herramientas de red, por lo que si ha instalado Linux a partir de una
distribuci�n y no ha instalado las herramientas de red, deber�a
hacerlo.
Si no ha instalado a partir de una distribuci�n entonces necesitar�
las fuentes para compilar las herramientas usted mismo. No es dif�cil.
Las herramientas de red las mantiene ahora Bernd Eckenfelds y est�n
disponibles en:
ftp://ftp.inka.de/pub/comp/Linux/networking/NetTools/ y est�n
replicadas en:
ftp://ftp.uk.linux.org/pub/linux/Networking/base/.
Tambi�n puede encontrar los �ltimos paquetes de RedHat en
ftp://ftp.cdrom.com/pub/linux/redhat/redhat-6.0/i386/base/net-
tools-1.51-3.i386.rpm.
Para Debian, los paquetes que traen las principales herramientas son
los paquetes hostname, netbase y netstd, que encontrar� en
ftp://ftp.debian.org/debian/dists/stable/main/binary-i386/base/.
Aseg�rese de que elige la versi�n que m�s se ajuste al n�cleo que
desee usar y siga las instrucciones del paquete para instalarlo.
Para instalar y configurar la versi�n actual, ---en el momento de
traducirse esto--- esto necesitar� hacer lo siguiente:
usuario% cd /usr/src
usuario% tar xvfz net-tools-x.xx.tar.gz
usuario% cd net-tools-x.xx
usuario% make config
usuario% make
root# make install
O si no, use los paquetes de su distribuci�n. Por ejemplo, con RedHat:
root# rpm -U net-tools-x.xx-y.i386.rpm
y con Debian:
root# dpkg -i hostname_x.xx-y.yy.deb
root# dpkg -i netbase_x.xx-y.yy.deb
root# dpkg -i netstd_x.xx-y.yy.deb
En los anteriores ejemplos, x.xx se refiere a la versi�n de las
herramientas, e y.yy a la revisi�n de los correspondientes paquetes.
Si adem�s va a configurar un cortafuegos o a usar la caracter�stica de
IP Masquerade, necesitar� ipfwadm. La �ltima versi�n la puede obtener
en: ftp:/ftp.xos.nl/pub/linux/ipfwadm. De nuevo se encontrar� con m�s
de una versi�n disponible. Aseg�rese de coger la versi�n que m�s se
ajuste a su n�cleo. Tenga en cuenta que las capacidades de cortafuegos
de Linux cambiaron durante el desarrollo 2.1 y ipfwadm ha sido
sustituida por ipchains en la versi�n 2.2 del n�cleo. ipfwadm s�lo
vale para la versi�n 2.0 del n�cleo. Se sabe de estas distribuciones
que se ajustan a versiones 2.0 o anteriores del n�cleo:
� Redhat 5.2 o anteriores
� Caldera antes de la versi�n 2.2
� Slackware antes de las versiones 4.x
� Debian antes de las versiones 2.x
Para instalar y configurar la versi�n actual en el momento de escribir
esto necesita leer el IPChains Howto, disponible en el Proyecto de
Documentaci�n de Linux
http://www.linuxdoc.org
Tenga en cuenta que si tiene una versi�n 2.2 (o 2.1 de las �ltimas)
del n�cleo, ipfwadm no es la herramienta correcta para configurar un
cortafuegos. Esta versi�n del NET-3-HOWTO todav�a no trata con la
nueva configuraci�n de cortafuegos. Si necesita informaci�n m�s
detallada sobre ipchains, por favor, dir�jase al documento mencionado
anteriormente.
5.1.3. Aplicaciones de red.
Las aplicaciones de red son programas como telnet y ftp y sus
respectivos programas servidores. David Holland estuvo manteniendo una
distribuci�n de las m�s comunes de la que ahora se ocupa
:
[email protected]. Puede obtenerlas en:
ftp://ftp.uk.linux.org/pub/linux/Networking/base.
5.1.4. Introducci�n a las direcciones IP.
Las direcciones del Protocolo Internet (IP) est�n compuestas por
cuatro bytes. La convenci�n es escribir estas direcciones en la
denominada �notaci�n decimal puntuada� (dotted decimal notation). De
esta forma cada byte es convertido en un n�mero decimal (0-255),
despreciando los ceros a la izquierda a menos que el n�mero en s� sea
cero. Por convenci�n, cada interfaz de una m�quina o encaminador
tiene una direcci�n IP. Es v�lido usar la misma IP para cada interfaz
de una sola m�quina en algunas circunstancias, pero normalmente cada
interfaz tiene su propia direcci�n.
Las Redes basadas en Internet Procotol son secuencias contiguas de
direcciones IP. Todas las direcciones dentro de una red tienen un
n�mero de d�gitos de en com�n. A la porci�n de la red que es com�n a
todas las direcciones llama la �porci�n de la red�. Los d�gitos
restantes son llamados �porci�n de la m�quina�. Al n�mero de bits que
comparten todas las direcciones de una red se le llama m�scara de red
(netmask), y su papel es determinar qu� direcciones pertenecen a la
red y cu�les no. Consideremos el siguiente ejemplo:
--------------------- ---------------
Direcci�n Host 192.168.110.23
M�scara de red 255.255.255.0
Porci�n de red 192.168.110.
Porci�n de Host .23
--------------------- ---------------
Direcci�n de Red 192.168.110.0
Direcci�n de Difusi�n 192.168.110.255
--------------------- ---------------
Cualquier direcci�n a la que se aplique una operaci�n and de bits con
su m�scara de red, revelar� la direcci�n de la red a la que pertenece.
La direcci�n de red es por tanto siempre el menor n�mero de direcci�n
dentro de el rango de la red y siempre tiene la porci�n de m�quina
codificada toda con ceros.
La direcci�n �de difusi�n� (broadcast) es una especial a la que
escucha cada m�quina en la red adem�s de a la suya propia. Esta
direcci�n es a la que se env�an los datagramas si se supone que todas
las m�quinas de la red lo deben recibir. Ciertos tipos de datos, como
la informaci�n de encaminamiento y los mensajes de aviso son
transmitidos a la direcci�n de difusi�n para que cada estaci�n en la
red pueda recibirlo simult�neamente. Hay dos est�ndares usados
com�nmente al respecto de la direcci�n de difusi�n. El m�s ampliamente
aceptado es el de usar la direcci�n m�s alta posible en la red. En el
ejemplo anterior ser�a 192.168.110.255. Por alguna raz�n, otras
estaciones han adoptado la convenci�n de usar las direcciones de red
como direcciones de difusi�n. En la pr�ctica no importa mucho cual
use, pero aseg�rese de que cada m�quina en la red est� configurada con
la misma.
Por razones administrativas, durante el desarrollo inicial del
protocolo IP se formaron, de forma arbitraria, algunos grupos de
direcciones como redes, y estas redes se agruparon en las llamadas
�clases�. Estas clases proporcionan un cierto n�mero de redes de
tama�o est�ndar que pueden ser reservadas. Los rangos reservados son:
----------------------------------------------------------
| Clase | M�scara de | Direcciones de red |
| de red | red | |
----------------------------------------------------------
| A | 255.0.0.0 | 0.0.0.0 - 127.255.255.255 |
| B | 255.255.0.0 | 128.0.0.0 - 191.255.255.255 |
| C | 255.255.255.0 | 192.0.0.0 - 223.255.255.255 |
|Multicast| 240.0.0.0 | 224.0.0.0 - 239.255.255.255 |
----------------------------------------------------------
Las direcciones que deber� usar dependen de lo que vaya a hacer
exactamente. Puede que tenga que realizar varias de las siguientes
actividades para obtener las direcciones que necesite:
Instalar una m�quina Linux en una red IP existente
Si desea instalar una m�quina Linux en una red IP existente
entonces deber�a contactar con los administradores de la red y
preguntarles por la siguiente informaci�n:
� Direcci�n IP del Host
� Direcci�n IP de la red
� Direcci�n IP de broadcast
� M�scara de red IP
� Direcci�n del encaminador (router)
� Direcci�n del Servidor de Nombre de Dominio (DNS)
Deber�a configurar entonces el dispositivo de red Linux con esos
detalles. No puede inventarlos y esperar que la configuraci�n
funcione.
Construir una nueva red propia que nunca conectar� con
Internet" Si est� construyendo una red privada y no tiene
intenci�n de conectar nunca esa red a Internet entonces puede
elegir las direcciones que quiera. De todas maneras, por razones
de seguridad y consistencia, se han reservado algunas
direcciones IP de red espec�ficamente para este prop�sito. Est�n
descritas en el RFC1597 y son las que siguen:
-----------------------------------------------------------
| DIRECCIONES RESERVADAS PARA REDES PRIVADAS |
-----------------------------------------------------------
| Clase | M�scara de | Direcciones de red |
| de red | red | |
-----------------------------------------------------------
| A | 255.0.0.0 | 10.0.0.0 - 10.255.255.255 |
| B | 255.255.0.0 | 172.16.0.0 - 172.31.255.255 |
| C | 255.255.255.0 | 192.168.0.0 - 192.168.255.255 |
-----------------------------------------------------------
Primero deber�a decidir cu�n grande quiere que sea su red para
entonces elegir tantas direcciones como necesite.
5.2. �D�nde deber�a poner las �rdenes de configuraci�n?
Hay unas pocas opciones a elegir para el procedimiento de arranque del
sistema Linux. Despu�s de que carga el n�cleo, siempre ejecuta un
programa llamado init. El programa init lee entonces el fichero de
configuraci�n llamado /etc/inittab y comienza el proceso de arranque.
Hay unos pocos init diferentes, aunque todo el mundo est� ahora
convergiendo al modelo SystemV, desarrollado por Miguel van
Smoorenburg.
A pesar de que el programa init sea el mismo, la configuraci�n del
arranque del sistema est� organizada de manera diferente en cada
distribuci�n.
Normalmente el fichero /etc/inittab contiene una entrada que dice algo
como:
si::sysinit:/etc/init.d/boot
Esta l�nea especifica el nombre del fichero de gui�n de ejecuci�n
(script) que controla la secuencia de carga. Este fichero es algo as�
como el AUTOEXEC.BAT en MS-DOS.
El gui�n de arranque suele llamar a otros, y a menudo la red se
configura dentro de alguno de �stos.
La siguiente tabla puede ser usada como gu�a para su sistema:
----------------------------------------------------------------------
Distrib. |Interfaz Configuraci�n/Encaminado |Iniciaci�n del Servidor
----------------------------------------------------------------------
Debian | /etc/init.d/network | /etc/rc2.d/*
----------------------------------------------------------------------
Slackware| /etc/rc.d/rc.inet1 | /etc/rc.d/rc.inet2
----------------------------------------------------------------------
RedHat | /etc/rc.d/init.d/network | /etc/rc.d/rc3.d/*
----------------------------------------------------------------------
F�jese en que Debian y Red Hat usan un directorio entero de guiones
que �levantan� los servicios del sistema (y normalmente la informaci�n
no se encuentra en esos archivos; por ejemplo, el sistema de Red Hat
almacena toda la configuraci�n del sistema en ficheros dentro de
/etc/sysconfig, de donde es le�da por los guiones de carga). Si quiere
comprender los detalles del proceso de arranque del sistema, le
sugiero que examine /etc/inittab y la documentaci�n que acompa�a a
init. Linux Journal va a publicar (o lo ha hecho ya) un art�culo
tratando la iniciaci�n del sistema, y este documento mantendr� una
referencia a �l tan pronto como est� disponible en la red.
La mayor�a de distribuciones modernas incluyen alg�n programa que le
permita configurar la mayor�a de interfaces de red. Si tiene una de
�stas entonces deber�a ver si hace lo que usted quiere antes de acudir
a la configuraci�n manual.
--------------------------------------------
Distrib. | Programa de configuraci�n de red
--------------------------------------------
RedHat | /sbin/netcfg
Slackware | /sbin/netconfig
--------------------------------------------
5.3. Creaci�n de las interfaces de red.
En muchos sistemas operativos Unix los dispositivos de red tienen
correspondencias en el directorio /dev. Esto no pasa en Linux. Los
dispositivos de red se crean de forma din�mica y por tanto no
requieren de la presencia de ficheros de dispositivo.
En la mayor�a de los casos los dispositivos de red son creados
autom�ticamente por el controlador de dispositivos mientras se inicia
y localiza el hardware. Por ejemplo, el controlador Ethernet crea
interfaces eth[0..n] secuencialmente seg�n va encontrado tarjetas
Ethernet. La primera tarjeta que encuentra es eth0, la segunda eth1,
etc.
Sin embargo, en algunos casos, de los que slip y ppp son ejemplos
notables, los dispositivos de red son creados por la acci�n de alg�n
programa de usuario. Se aplica la misma numeraci�n secuencial de
dispositivos, pero no se crean al arrancar. La raz�n es que al
contrario que con los dispositivos Ethernet, el n�mero de dispositivos
ppp o slip puede variar durante la actividad de la m�quina. Estos
casos ser�n cubiertos con m�s detalle en secciones posteriores.
5.4. Configuraci�n de una interfaz de red.
Cuando tenga todos los programas necesarios y su direcci�n e
informaci�n de red, puede configurar la interfaz de red. Cuando
hablamos de configurar una interfaz de red nos referimos al proceso de
asignar direcciones apropiadas a un dispositivo y asignar valores
adecuados a otros par�metros configurables. El programa usado m�s
com�nmente para hacer esto es la orden ifconfig (interface configure).
Lo normal ser� usar una orden similar a la siguiente:
root# ifconfig eth0 192.168.0.1 netmask 255.255.255.0 up
En este caso estoy configurando la interfaz Ethernet eth0, con
direcci�n IP 192.168.0.1 y m�scara de red 255.255.255.0. El `up del
final de la orden le dice al interfaz que deber�a activarse, pero
normalmente se puede omitir, ya que es el valor por defecto. Para
desactivar una interfaz, simplemente tiene que ejecutar ifconfig eth0
down.
El n�cleo asume ciertas cosas cuando configura interfaces. Por
ejemplo, puede especificar la direcci�n de red y difusi�n de una
interfaz, pero si usted no lo hace, como en mi ejemplo anterior,
entonces el n�cleo har� una suposici�n razonable de cu�les deber�an
ser, bas�ndose en la m�scara que se le proporciona; si tampoco indica
la m�scara, entonces partir� de la clase de la direcci�n IP
configurada. En mi ejemplo, el n�cleo asumir� que se va a configurar
una red clase C en la interfaz y establece una direcci�n de red
192.168.0.0 y una direcci�n de difusi�n 192.168.0.255. Hay otras
muchas opciones para la orden ifconfig. Las mas importantes son:
up esta opci�n activa una interfaz (y es la opci�n por defecto).
down
esta opci�n desactiva una interfaz.
[-]arp
esta opci�n activa o desactiva el uso del protocolo de
resoluci�n de direcci�n (address resolution protocol) sobre la
interfaz
[-]allmulti
esta opci�n activa o desactiva la recepci�n de todos los
paquetes multicast por hardware. El multicast por hardware
permite que varios grupos de interfaces reciban paquetes
remitidos a destinos especiales. Esto puede ser de importancia
si est� usando aplicaciones como videoconferencia, pero
normalmente no se usa.
mtu N
este par�metro le permite especificar la MTU del dispositivo.
netmask <direc>
este par�metro le permite asignar la m�scara de la red a la que
pertenece el dispositivo.
irq <direc>
este par�metro s�lo trabaja con ciertos tipos de hardware, y
permite especificar la IRQ del dispositivo.
[-]broadcast [direc]
este par�metro le permite activar y asignar la acepci�n de
datagramas destinados a la direcci�n de difusi�n, o desactivarla
por completo.
[-]pointopoint [direc]
este par�metro le permite asignar la direcci�n de la m�quina en
el otro extremo de un enlace punto a punto, como en SLIP o PPP.
hw <tipo> <direc>
este par�metro le permite asignar la direcci�n del hardware de
ciertos tipos de dispositivos de red. Esto no suele ser �til
para Ethernet, pero lo es para otras redes como AX.25.
Puede usar la orden ifconfig sobre cualquier dispositivo de red.
Algunos programas de usuario, como pppd y dip configuran
autom�ticamente los dispositivos de red al crearlos, por lo que es
innecesario el uso de ifconfig con ellos.
5.5. Resolver ) Configuraci�n del sistema de resoluci�n de nombres (
Name
El sistema de resoluci�n de nombres es una parte de la biblioteca
est�ndar de Linux. Su funci�n principal es proporcionar un servicio
para convertir las denominaciones �amistosas con el hombre� de las
m�quinas como ftp.funet.fi a direcciones IP �amigables para la
m�quina� como 128.214.248.6.
5.5.1. �Qu� hay en un nombre?
Posiblemente est� familiarizado con la apariencia de los nombres de
m�quina de Internet, pero puede que no entienda como se construyen, o
como se �desconstruyen�. Los nombres de dominio de Internet son
jer�rquicos por naturaleza; esto es, tienen una estructura en �rbol.
Un dominio es una familia, o grupo de nombres. Un dominio puede ser
fragmentado en subdominios. Un �dominio de nivel superior� (toplevel
domain) es un dominio que NO es un subdominio. Los Dominios de Nivel
Superior est�n especificados en el RFC-920. Algunos ejemplos de los
m�s comunes son:
COM
Organizaciones Comerciales
EDU
Organizaciones Educativas
GOV
Organizaciones Gubernamentales
MIL
Organizaciones Militares
ORG
Otras organizaciones
NET
Organizaciones relacionadas con InterNet
Designador de Pa�s
�stos son c�digos de dos letras que representan a un pa�s en
particular.
Por razones hist�ricas, la mayor�a de los dominios pertenecientes a
uno de los de nivel superior que no basados en un nombre de pa�s, son
de organizaciones dentro de los Estados Unidos, aunque los Estados
Unidos tienen tambi�n su propio c�digo de pa�s .us. Esto ha dejado de
ser cierto para los dominios .com y .org, que son usados de forma
com�n por compa��as de fuera de los Estados Unidos de Am�rica.
Cada uno de estos dominios de nivel superior tiene subdominios. Los
dominios de nivel superior basados en el nombre de un pa�s suelen
estar divididos en subdominios basados en com, edu, gov, mil y org.
Por ejemplo, encontrar� cosas como com.au y gov.au, las organizaciones
comerciales y gubernamentales en Australia.
El siguiente nivel de divisi�n suele representar el nombre de la
organizaci�n. Los siguientes subdominios var�an, a menudo basando el
siguiente nivel en la estructura departamental de la organizaci�n a la
que pertenecen, pero pueden estarlo en cualquier criterio considerado
razonable y con significado claro para los administradores de la red
de la organizaci�n.
La parte m�s a la izquierda de un nombre siempre es el nombre �nico
asignado a la m�quina, y es llamada hostname, la porci�n del nombre a
la derecha del nombre de la m�quina es el domainname (nombre de
dominio), y el nombre completo es llamado Fully Qualified Domain Name
(Nombre de Dominio Completamente Cualificado).
Si usamos el ordenador de Terry como ejemplo, el nombre completamente
cualificado es perf.no.itg.telstra.com.au. Esto significa que el
nombre de la m�quina es perf y el nombre de dominio el
no.itg.telstra.com.au. El nombre de dominio est� basado en un dominio
de nivel superior basado en su pa�s, Australia, y como su direcci�n de
correo pertenece a una organizaci�n comercial tenemos .com como
siguiente nivel de dominio. El nombre de la compa��a es (era)
telstra, y la estructura interna de su nombre est� basada en una
estructura organizacional. En su caso, la m�quina pertenece al Grupo
de Tecnolog�a de la Informaci�n (Information Technology Group),
secci�n de Operaciones de Red (Network Operations).
Los nombres son, por norma, bastante m�s cortos; por ejemplo, mi PSI
se llama systemy.it y mi organizaci�n sin �nimo de lucro se llama
linux.it, sin subdominio com ni org, por lo que mi propia m�quina se
llama morgana.systemy.it y
[email protected] es una direcci�n de correo
electr�nico v�lida. Sepa que el due�o de un dominio tiene derecho
tanto para registrar una m�quina como para registrar subdominios; por
ejemplo, el GUL (Grupo de Usuarios de Linux) al que pertenezco usa el
dominio pluto.linux.it, porque los due�os de linux.it convinieron en
abrir un subdominio para el GUL.
5.5.2. Qu� informaci�n necesitar�
Necesitar� saber a qu� dominio pertenecen sus m�quinas. El software de
resoluci�n de nombres proporciona el servicio de traducci�n haciendo
consultas a un Servidor de Nombres de Dominio (Domain Name Server),
por lo que deber� saber la direcci�n IP del servidor de nombres
(nameserver) local que vaya a usar.
Hay tres ficheros que es necesario editar. Los comentar� uno a uno.
5.5.3. /etc/resolv.conf
/etc/resolv.conf es el fichero de configuraci�n principal del c�digo
de resoluci�n de nombres. Su formato es bastante simple. Es un fichero
de texto con una palabra clave por l�nea. Hay tres palabras clave de
uso frecuente, que son:
domain
esta palabra clave especifica el nombre de dominio local.
search
�sta especifica una lista de dominios alternativos para
completar el nombre de una m�quina.
nameserver
�sta, que puede utilizarse varias veces, especifica una
direcci�n IP de un servidor de nombres de dominio para
consultarlo cuando se resuelvan nombres.
Su /etc/resolv.conf podr�a parecerse a �ste:
domain maths.wu.edu.au
search maths.wu.edu.au wu.edu.au
nameserver 192.168.10.1
nameserver 192.168.12.1
Este ejemplo especifica que el nombre de dominio por defecto para
a�adir a los nombres no cualificados (esto es, nombres de m�quinas
suministrados sin dominio) es maths.wu.edu.au, y que si no se
encuentra la m�quina en este dominio intentemos tambi�n el dominio
wu.edu.au directamente. Se proporcionan dos entradas de servidor de
nombres, cada uno de los cuales puede ser llamado por el c�digo de
resoluci�n de nombres para traducir el nombre.
5.5.4. /etc/host.conf
El fichero /etc/host.conf es el lugar donde se configuran algunos
elementos que gobiernan el comportamiento del c�digo de resoluci�n de
nombres. El formato de este fichero est� descrito en detalle en la
p�gina de manual resolv+. El ejemplo siguiente funcionar� en casi
todas las circunstancias:
order hosts,bind
multi on
Esta configuraci�n le dice al resolutor de nombres que examine el
fichero /etc/hosts antes de intentar consultar a un servidor de
nombres, y que devuelva todas las direcciones v�lidas de una m�quina
que encuentre en el fichero /etc/hosts, en lugar de s�lo el primero.
5.5.5. /etc/hosts
El fichero /etc/hosts es donde se pone el nombre y direcci�n IP de las
m�quinas locales. Si usted inserta un nombre en este fichero, entonces
su ordenador no consultar� a un servidor de dominio para obtener la
direcci�n IP. La desventaja de este m�todo es que usted mismo tendr�
que poner el fichero al d�a si la direcci�n de alguna m�quina cambia.
En un sistema bien administrado, las �nicas entradas que suelen
aparecer son la interfaz de loopback (prueba en bucle) y el nombre de
la m�quina local.
# /etc/hosts
127.0.0.1 localhost loopback
192.168.0.1 this.host.name
Se puede especificar m�s de un nombre de m�quina por l�nea, como se
demuestra en la primera entrada, que es la forma est�ndar para la
interfaz de prueba (loopback).
5.5.6. Ejecutar un servidor de nombres
Si quiere tener un servidor de nombres local, le resultar� sencillo.
Por favor, lea el DNS Como,
http://www.insflug.org/documentos/DNS-
Como/ y la documentaci�n incluida en su copia de BIND (Berkeley
Internet Name Domain).
5.6. Configuraci�n de la interfaz loopback
La interfaz loopback' es un tipo especial de interfaz que le permite
hacer conexiones consigo mismo. Hay varias razones por las que podr�a
querer esto. Por ejemplo, puede que desee probar alg�n tipo de
programa sin interferir con alguien m�s en su red. Por convenci�n, la
direcci�n de red IP 127.0.0.1 ha sido asignada espec�ficamente para el
dispositivo de pruebas. Por lo que da igual lo que haga su m�quina,
que si abre una conexi�n de telnet a 127.0.0.1, siempre llegar� a la
interfaz interna.
Configurar la interfaz loopback es simple y deber�a asegurarse de
hacerlo.
root# ifconfig lo 127.0.0.1
root# route add -host 127.0.0.1 lo
Hablaremos m�s de la orden route en la siguiente secci�n.
5.7. Encaminamiento ( Routing ).
El encaminamiento es un tema amplio. Ser�a f�cil llenar varios
vol�menes hablando de �l. La mayor�a de ustedes tendr�n requisitos de
encaminamiento relativamente simples, pero algunos no. Cubrir�
solamente algunos de los fundamentos b�sicos. Si est� interesado en
informaci�n m�s detallada, entonces sugiero que se remita a las
referencias propuestas al principio del documento.
Comencemos con una definici�n. �Qu� es el encaminamiento IP? Esta es
la que yo suelo aplicar:
El Encaminamiento IP es el proceso por el que una m�quina
con m�ltiples conexiones de red decide por d�nde dirigir un
datagrama IP que haya recibido.
Ser�a �til ilustrar esto con un ejemplo. Imagine una oficina con el
encaminamiento t�pico, que podr�a constar de un enlace PPP con
Internet, varios segmentos Ethernet alimentando las estaciones de
trabajo, y un enlace PPP hacia otra oficina. Cuando el encaminador
recibe un datagrama en cualquiera de sus conexiones de red, el
mecanismo que usa para determinar qu� interfaz deber�a enviar el
datagrama, es el encaminamiento. Las estaciones sencillas tambi�n
necesitan encaminar. Todas las estaciones en Internet tienen dos
dispositivos de red: uno es la interfaz de pruebas descrita
anteriormente, y la otra es la que usa para comunicarse con el resto
de la red, quiz� una Ethernet, quiz� una interfaz serie PPP o SLIP.
Bien... Por tanto, �c�mo funciona el encaminado? Cada m�quina tiene
una lista de reglas, llamada tabla de encaminamiento. Esta tabla
contiene columnas que suelen contener al menos tres campos: el primero
es una direcci�n de destino, el segundo es el nombre de la interfaz a
la que se va a encaminar el datagrama, y el tercero es (opcionalmente)
la direcci�n IP de otra m�quina que coger� el datagrama en su
siguiente paso a trav�s de la red. En Linux puede ver esta tabla
usando la siguiente orden:
root# cat /proc/net/route
o con cualquiera de estas otras:
root# /sbin/route -n
root# /bin/netstat -r
El proceso de encaminado es relativamente simple: se recibe un
datagrama que llega, se examina la direcci�n de destino (para qui�n
es) y se compara con cada entrada en la lista. Se selecciona la
entrada que m�s se parezca y se reenv�a el datagrama a la interfaz
especificada. Si el campo de pasarela (gateway) est� descrito, el
datagrama se reenv�a a esa m�quina mediante la interfaz especificada,
y si no, se asume que la direcci�n de destino est� en la red a la que
se accede mediante la interfaz correspondiente.
Para manipular esta tabla se usa una orden especial. Esta instrucci�n
toma sus argumentos en l�nea de �rdenes y los convierte en llamadas al
sistema del n�cleo, que le piden que a�ada, borre o modifique entradas
en la tabla de encaminamiento. Dicha orden se llama route.
Un ejemplo sencillo. Imagine que tiene una red Ethernet. Le han dicho
que pertenece a una red clase C con direcci�n 192.168.1.0. Le han dado
la direcci�n IP 192.168.1.10 para su uso y tambi�n que 192.168.1.1 es
un encaminador conectado a Internet.
El primer paso es configurar la interfaz como se describi�
anteriormente. Puede usar una orden como:
root# ifconfig eth0 192.168.1.10 netmask 255.255.255.0 up
Ahora necesita a�adir una entrada en la tabla de rutas para decirle al
n�cleo que los datagramas destinados a todas las m�quinas con
direcciones que se ajusten a 192.168.1.*, deber�n ser enviados al
dispositivo Ethernet. Deber�a usar una orden similar a:
root# route add -net 192.168.1.0 netmask 255.255.255.0 eth0
F�jese en el uso del par�metro -net para especificar al programa route
que esta entrada es una regla para una red completa. Otra opci�n es
-host, que indica una v�a espec�fica a una direcci�n IP en particular.
Esta ruta le permitir� establecer conexiones IP con todas las
estaciones de su segmento Ethernet. Pero �qu� pasa con todas las
m�quinas con direcci�n IP que no est�n en su segmento Ethernet?
Ser�a bastante engorroso, por no decir imposible, tener que a�adir
caminos para cada red de destino posible, por lo que existe un truco
que se usa para simplificar la tarea. A este truco se le llama camino
por defecto. El camino por defecto se ajusta a todo destino posible,
pero con prioridad m�nima, por lo que si existe cualquier otra entrada
que se ajuste a la direcci�n requerida, ser� la que se use en lugar
del camino por defecto. La idea del camino por defecto es simplemente
permitirle decir: �y todo lo dem�s deber�a ir por aqu�. En el ejemplo
que me he inventado podr�a usar una orden como:
root# route add default gw 192.168.1.1 eth0
El par�metro gw le dice a la orden route que lo que le sigue es la
direcci�n IP, o nombre, de una pasarela u otra m�quina encaminadora a
la que se deber�an enviar todos los datagramas que se ajusten a esta
entrada para futuro encaminamiento.
Por lo tanto, la configuraci�n completa deber�a parecerse a:
root# ifconfig eth0 192.168.1.10 netmask 255.255.255.0 up
root# route add -net 192.168.1.0 netmask 255.255.255.0 eth0
root# route add default gw 192.168.1.1 eth0
Si echa una mirada a los ficheros rc de red de su m�quina, encontrar�
que al menos uno de ellos se parece mucho a esto. Es una configuraci�n
muy com�n.
Veamos ahora una configuraci�n de encaminamiento un poco m�s
complicada. Imaginemos que estamos configurando el encaminador de
antes, el que soportaba el enlace PPP a Internet y los segmentos LAN
alimentando las estaciones de trabajo en la oficina. Imaginemos que el
encaminador tiene tres segmentos Ethernet y un enlace PPP. Nuestra
configuraci�n de encaminamiento deber�a parecerse a esto:
root# route add -net 192.168.1.0 netmask 255.255.255.0 eth0
root# route add -net 192.168.2.0 netmask 255.255.255.0 eth1
root# route add -net 192.168.3.0 netmask 255.255.255.0 eth2
root# route add default ppp0
Cada una de las estaciones deber�a usar la forma simple que
presentamos anteriormente. S�lo el encaminador necesita especificar
cada uno de los caminos de red de forma separada, porque para las
estaciones el mecanismo de encaminamiento por defecto enviar� todos
los paquetes al encaminador, dej�ndole el problema de repartirlos.
Puede estar pregunt�ndose por qu� el encaminador por defecto
presentado no especifica un gw. La raz�n es simple: los protocolos de
enlace serie como PPP y SLIP s�lo tienen dos terminales en su red, uno
en cada extremo. Especificar el host al otro extremo como pasarela no
tiene sentido y es redundante, ya que no hay otra elecci�n, por lo que
no se necesita especificar una pasarela para este tipo de conexi�n de
red. Otros tipos como Ethernet, arcnet o token ring necesitan que se
especifique la pasarela, ya que se puede acceder a un gran n�mero de
terminales al mismo tiempo.
5.7.1. Entonces �qu� hace el programa routed ?
La configuraci�n de encaminamiento descrita anteriormente se ajusta a
necesidades de red simples, donde los posibles caminos hacia los
destinos son sencillos. Cuando se tienen necesidades de red m�s
complejas, las cosas se vuelven un poco m�s complicadas.
Afortunadamente la mayor�a de ustedes no tendr� este problema.
El gran problema con el �encaminamiento manual� o �encaminamiento
est�tico� que aqu� se ha descrito, es que si una m�quina o enlace
falla en la red, entonces la �nica manera en que podr� dirigir sus
datagramas por otra direcci�n, si es que existe, es interviniendo
manualmente y ejecutando las �rdenes apropiadas. Naturalmente esto es
poco elegante, lento, nada pr�ctico y peligroso. Se han desarrollado
varias t�cnicas para ajustar autom�ticamente las tablas de
encaminamiento en el caso de fallos en la red donde hubiera caminos
alternativos. Todas estas t�cnicas se agrupan de manera no muy oficial
bajo la definici�n �protocolos de encaminamiento din�mico�.
Puede que haya o�do de alguno de los protocolos m�s comunes. Es
probable que RIP (Routing Information Protocol) y OSPF (Open Shortest
Path First Protocol) sean los m�s comunes. El Routing Information
Protocol es muy com�n en redes peque�as, como las redes corporativas
peque�as y medianas o en las redes de edificios. El OSPF es m�s
moderno y m�s capaz de gestionar grandes configuraciones de red, y
est� mejor preparado para entornos donde haya un gran n�mero de
caminos posibles a trav�s de la red. Las implementaciones habituales
de estos protocolos son: routed (RIP) y gated (RIP, OSPF y otros). El
programa routed suele venir incluido en las distribuciones de Linux, y
si no, estar� incluido en el paquete NetKit, detallado m�s adelante.
Un ejemplo de d�nde y c�mo deber�a usar un protocolo de encaminamiento
din�mico vendr�a a ser algo como lo siguiente:
192.168.1.0 / 192.168.2.0 /
255.255.255.0 255.255.255.0
- -
| |
| /-----\ /-----\ |
| | |ppp0 // ppp0| | |
eth0 |---| A |------//---------| B |---| eth0
| | | // | | |
| \-----/ \-----/ |
| \ ppp1 ppp1 / |
- \ / -
\ /
\ /
\ /
\ /
\ /
\ /
\ /
\ /
ppp0\ /ppp1
/-----\
| |
| C |
| |
\-----/
|eth0
|
|---------|
192.168.3.0 /
255.255.255.0
Tenemos tres encaminadores A, B y C. Cada uno da servicio a un
segmento Ethernet con una red IP de clase C (m�scara de red
255.255.255.0). Cada encaminador tiene tambi�n un enlace PPP a cada
uno de los otros encaminadores. La red forma un tri�ngulo.
Deber�a estar claro que la tabla de encaminamiento del encaminador A
podr�a ser algo como:
root# route add -net 192.168.1.0 netmask 255.255.255.0 eth0
root# route add -net 192.168.2.0 netmask 255.255.255.0 ppp0
root# route add -net 192.168.3.0 netmask 255.255.255.0 ppp1
Esto funcionar�a bien hasta que el enlace entre los encaminadores A y
B falle. Si falla ese enlace, entonces con la entrada de
encaminamiento mostrada anteriormente, las m�quinas del segmento
Ethernet de A no podr�n alcanzar a las del segmento Ethernet en B
porque sus datagramas ser�n dirigidos al enlace ppp0 de A que est�
mal. Podr�an seguir comunic�ndose todav�a con las m�quinas del
segmento Ethernet de C, y las del segmento Ethernet de C con las del
segmento Ethernet de B, porque el enlace entre B y C a�n est� intacto.
Pero espere un momento. Si A puede hablar con C y C puede a�n hablar
con B, �por qu� no puede A encaminar sus datagramas para B a trav�s de
C y dejar que C se los mande a B? Este es exactamente el tipo de
problema para el que fueron dise�ados los protocolos de encaminamiento
din�mico como RIP. Si cada uno de los encaminadores A, B y C est�
ejecutando el demonio de encaminamiento, entonces sus tablas deber�an
ser ajustadas autom�ticamente para reflejar el nuevo estado de la red
si alguno de los enlaces falla. Configurar tal red es sencillo. En
cada encaminador s�lo necesita hacer dos cosas. En este caso, para el
Encaminador A:
root# route add -net 192.168.1.0 netmask 255.255.255.0 eth0
root# /usr/sbin/routed
El demonio de encaminamiento routed encuentra autom�ticamente todos
los puertos de red activos cuando comienza y busca mensajes en cada
uno de los dispositivos de red para poder determinar y poner al d�a la
tabla de encaminamiento en el host.
�sta ha sido una explicaci�n muy concisa del encaminamiento din�mico y
de d�nde podr�a usarlo. Si quiere m�s informaci�n, tendr� que acudir a
las referencias listadas al principio del documento.
Los puntos importantes relacionados con el encaminamiento din�mico
son:
1. S�lo necesita ejecutar un protocolo de encaminamiento din�mico
cuando su m�quina Linux tenga la posibilidad de elegir entre
m�ltiples caminos para llegar a un destino.
2. El demonio de encaminamiento din�mico modificar� autom�ticamente la
tabla de encaminamiento para ajustarla a los cambios en la red.
3. RIP es adecuado para redes de tama�o peque�o y medio.
5.8. Configuraci�n de los servidores de red y los servicios.
Los servidores de red y los servicios son aquellos programas que
permiten a un usuario remoto hacer uso de su m�quina Linux. Los
programas servidores escuchan en los puertos de red. Los puertos de
red son el medio de llegar a un servicio en particular en una m�quina
en particular, y es as� como un servidor conoce la diferencia entre
una conexi�n telnet y otra de FTP que le lleguen. El usuario remoto
establece una conexi�n de red con la m�quina, y el programa servidor,
el demonio de red que est� escuchando en ese puerto, aceptar� la
conexi�n y se ejecutar�. Hay dos modos de operaci�n para los demonios
de red. Ambos se usan por igual en la pr�ctica. Las dos maneras son:
aut�nomo (standalone)
el programa demonio de red escucha en el puerto de red asignado
y, cuando llega una conexi�n, se ocupa �l mismo de dar el
servicio de red.
esclavo del servidor inetd
el servidor inetd es un demonio de red especial que se
especializa en controlar las conexiones entrantes. Tiene un
fichero de configuraci�n que le dice qu� programa debe ser
ejecutado cuando se reciba una conexi�n. Cualquier puerto de
servicio puede ser configurado tanto para el protocolo tcp como
para udp. Los puertos son descritos en otro fichero del que
hablaremos dentro de poco.
Hay dos ficheros importantes que necesitamos configurar. Son el
fichero /etc/services que asigna nombres a los n�meros de puerto y el
fichero /etc/inetd.conf que es el fichero de configuraci�n del demonio
de red inetd.
5.8.1. /etc/services
El fichero /etc/services es una base de datos sencilla, que asocia un
nombre que nosotros podamos entender, con un puerto de servicio de la
m�quina. Su formato es bastante simple. Es un fichero de texto en el
que cada l�nea representa una entrada a la base de datos. Cada entrada
comprende tres campos separados por cualquier n�mero de espacios en
blanco (espacio o tabulador). Los campos son:
nombre puerto/protocolo sobrenombres # comentario
nombre
una sola palabra que representa el servicio descrito.
puerto/protocolo
este campo est� dividido en dos subcampos.
puerto
un n�mero que especifica el n�mero de puerto del servicio que
estar� disponible. La mayor�a de los servicios comunes tienen
asignados n�meros de servicio, y est�n descritos en el RFC-1340.
protocolo
este subcampo debe tener como valor tcp o udp.
Es importante que tenga en cuenta que el servicio 18/tcp es muy
diferente del 18/udp y que no hay raz�n t�cnica por la cual
deban existir ambos. Normalmente prevalece el sentido com�n, y
s�lo ver� una entrada tcp y otra udp para el mismo servicio si
es que est� disponible para ambos.
sobrenombres
(o alias) otros nombres que pueden usarse para referirse a esta
entrada de servicio.
Cualquier texto que aparezca en una l�nea despu�s de un caracter # es
ignorado y se trata como un comentario.
5.8.1.1. Un ejemplo de fichero /etc/services .
Todas las distribuciones modernas de Linux tienen un buen fichero
/etc/services. Para el caso de que est� montando una m�quina desde
cero, aqu� tiene una copia del fichero /etc/services proporcionado por
una antigua la distribuci�n Debian
http://www.debian.org:
# /etc/services:
# $Id: services,v 1.3 1996/05/06 21:42:37 tobias Exp $
#
# Network services, Internet style
#
# Note that it is presently the policy of IANA to assign a single well-known
# port number for both TCP and UDP; hence, most entries here have two entries
# even if the protocol doesn't support UDP operations.
# Updated from RFC 1340, �Assigned Numbers� (July 1992). Not all ports
# are included, only the more common ones.
tcpmux 1/tcp # TCP port service multiplexer
echo 7/tcp
echo 7/udp
discard 9/tcp sink null
discard 9/udp sink null
systat 11/tcp users
daytime 13/tcp
daytime 13/udp
netstat 15/tcp
qotd 17/tcp quote
msp 18/tcp # message send protocol
msp 18/udp # message send protocol
chargen 19/tcp ttytst source
chargen 19/udp ttytst source
ftp-data 20/tcp
ftp 21/tcp
ssh 22/tcp # SSH Remote Login Protocol
ssh 22/udp # SSH Remote Login Protocol
telnet 23/tcp
# 24 - private
smtp 25/tcp mail
# 26 - unassigned
time 37/tcp timserver
time 37/udp timserver
rlp 39/udp resource # resource location
nameserver 42/tcp name # IEN 116
whois 43/tcp nicname
re-mail-ck 50/tcp # Remote Mail Checking Protocol
re-mail-ck 50/udp # Remote Mail Checking Protocol
domain 53/tcp nameserver # name-domain server
domain 53/udp nameserver
mtp 57/tcp # deprecated
bootps 67/tcp # BOOTP server
bootps 67/udp
bootpc 68/tcp # BOOTP client
bootpc 68/udp
tftp 69/udp
gopher 70/tcp # Internet Gopher
gopher 70/udp
rje 77/tcp netrjs
finger 79/tcp
www 80/tcp http # WorldWideWeb HTTP
www 80/udp # HyperText Transfer Protocol
link 87/tcp ttylink
kerberos 88/tcp kerberos5 krb5 # Kerberos v5
kerberos 88/udp kerberos5 krb5 # Kerberos v5
supdup 95/tcp
# 100 - reserved
hostnames 101/tcp hostname # usually from sri-nic
iso-tsap 102/tcp tsap # part of ISODE.
csnet-ns 105/tcp cso-ns # also used by CSO name server
csnet-ns 105/udp cso-ns
rtelnet 107/tcp # Remote Telnet
rtelnet 107/udp
pop-2 109/tcp postoffice # POP version 2
pop-2 109/udp
pop-3 110/tcp # POP version 3
pop-3 110/udp
sunrpc 111/tcp portmapper # RPC 4.0 portmapper TCP
sunrpc 111/udp portmapper # RPC 4.0 portmapper UDP
auth 113/tcp authentication tap ident
sftp 115/tcp
uucp-path 117/tcp
nntp 119/tcp readnews untp # USENET News Transfer Protocol
ntp 123/tcp
ntp 123/udp # Network Time Protocol
netbios-ns 137/tcp # NETBIOS Name Service
netbios-ns 137/udp
netbios-dgm 138/tcp # NETBIOS Datagram Service
netbios-dgm 138/udp
netbios-ssn 139/tcp # NETBIOS session service
netbios-ssn 139/udp
imap2 143/tcp # Interim Mail Access Proto v2
imap2 143/udp
snmp 161/udp # Simple Net Mgmt Proto
snmp-trap 162/udp snmptrap # Traps for SNMP
cmip-man 163/tcp # ISO mgmt over IP (CMOT)
cmip-man 163/udp
cmip-agent 164/tcp
cmip-agent 164/udp
xdmcp 177/tcp # X Display Mgr. Control Proto
xdmcp 177/udp
nextstep 178/tcp NeXTStep NextStep # NeXTStep window
nextstep 178/udp NeXTStep NextStep # server
bgp 179/tcp # Border Gateway Proto.
bgp 179/udp
prospero 191/tcp # Cliff Neuman's Prospero
prospero 191/udp
irc 194/tcp # Internet Relay Chat
irc 194/udp
smux 199/tcp # SNMP Unix Multiplexer
smux 199/udp
at-rtmp 201/tcp # AppleTalk routing
at-rtmp 201/udp
at-nbp 202/tcp # AppleTalk name binding
at-nbp 202/udp
at-echo 204/tcp # AppleTalk echo
at-echo 204/udp
at-zis 206/tcp # AppleTalk zone information
at-zis 206/udp
z3950 210/tcp wais # NISO Z39.50 database
z3950 210/udp wais
ipx 213/tcp # IPX
ipx 213/udp
imap3 220/tcp # Interactive Mail Access
imap3 220/udp # Protocol v3
ulistserv 372/tcp # UNIX Listserv
ulistserv 372/udp
#
# UNIX specific services
#
exec 512/tcp
biff 512/udp comsat
login 513/tcp
who 513/udp whod
shell 514/tcp cmd # no passwords used
syslog 514/udp
printer 515/tcp spooler # line printer spooler
talk 517/udp
ntalk 518/udp
route 520/udp router routed # RIP
timed 525/udp timeserver
tempo 526/tcp newdate
courier 530/tcp rpc
conference 531/tcp chat
netnews 532/tcp readnews
netwall 533/udp # -for emergency broadcasts
uucp 540/tcp uucpd # uucp daemon
remotefs 556/tcp rfs_server rfs # Brunhoff remote filesystem
klogin 543/tcp # Kerberized `rlogin' (v5)
kshell 544/tcp krcmd # Kerberized `rsh' (v5)
kerberos-adm 749/tcp # Kerberos `kadmin' (v5)
#
webster 765/tcp # Network dictionary
webster 765/udp
#
# From �Assigned Numbers�:
#
#> The Registered Ports are not controlled by the IANA and on most systems
#> can be used by ordinary user processes or programs executed by ordinary
#> users.
#
#> Ports are used in the TCP [45,106] to name the ends of logical
#> connections which carry long term conversations. For the purpose of
#> providing services to unknown callers, a service contact port is
#> defined. This list specifies the port used by the server process as its
#> contact port. While the IANA can not control use of these ports it
#> does register or list use of these ports as a convienence to the
#> community.
#
ingreslock 1524/tcp
ingreslock 1524/udp
prospero-np 1525/tcp # Prospero non-privileged
prospero-np 1525/udp
rfe 5002/tcp # Radio Free Ethernet
rfe 5002/udp # Actually use UDP only
bbs 7000/tcp # BBS service
#
#
# Kerberos (Project Athena/MIT) services
# Note that these are for Kerberos v4 and are unofficial. Sites running
# v4 should uncomment these and comment out the v5 entries above.
#
kerberos4 750/udp kdc # Kerberos (server) udp
kerberos4 750/tcp kdc # Kerberos (server) tcp
kerberos_master 751/udp # Kerberos authentication
kerberos_master 751/tcp # Kerberos authentication
passwd_server 752/udp # Kerberos passwd server
krb_prop 754/tcp # Kerberos slave propagation
krbupdate 760/tcp kreg # Kerberos registration
kpasswd 761/tcp kpwd # Kerberos "passwd"
kpop 1109/tcp # Pop with Kerberos
knetd 2053/tcp # Kerberos de-multiplexor
zephyr-srv 2102/udp # Zephyr server
zephyr-clt 2103/udp # Zephyr serv-hm connection
zephyr-hm 2104/udp # Zephyr hostmanager
eklogin 2105/tcp # Kerberos encrypted rlogin
#
# Unofficial but necessary (for NetBSD) services
#
supfilesrv 871/tcp # SUP server
supfiledbg 1127/tcp # SUP debugging
#
# Datagram Delivery Protocol services
#
rtmp 1/ddp # Routing Table Maintenance Protocol
nbp 2/ddp # Name Binding Protocol
echo 4/ddp # AppleTalk Echo Protocol
zip 6/ddp # Zone Information Protocol
#
# Debian GNU/Linux services
rmtcfg 1236/tcp # Gracilis Packeten remote config server
xtel 1313/tcp # french minitel
cfinger 2003/tcp # GNU Finger
postgres 4321/tcp # POSTGRES
mandelspawn 9359/udp mandelbrot # network mandelbrot
# Local services
En el d�a a d�a, este fichero se encuentra en proceso de continuo
crecimiento seg�n se van creando nuevos servicios. Si piensa que su
copia es incompleta, le sugiero que haga una copia del /etc/services
de una distribuci�n reciente.
5.8.2. /etc/inetd.conf
/etc/inetd.conf es el fichero de configuraci�n para el demonio
servidor inetd. Su funci�n es la de almacenar la informaci�n relativa
a lo que inetd debe hacer cuando recibe una petici�n de conexi�n a un
servicio en particular. Para cada servicio que desee que acepte
conexiones deber� decirle a inetd qu� demonio servidor de red
ejecutar, y c�mo ha de hacerlo.
Su formato tambi�n es relativamente sencillo. Es un fichero de texto
en el que cada l�nea describe un servicio que desee proporcionar.
Cualquier texto en una l�nea que siga a # es ignorado y se considera
un comentario. Cada l�nea contiene siete campos separados por
cualquier n�mero de espacios en blanco (espacio o tabulador). El
formato general es el siguiente:
servicio tipo_socket proto flags usuario servidor argumentos
servicio
es el servicio correspondiente a esta configuraci�n, tomado del
fichero /etc/services.
tipo_socket
describe el tipo de socket que esta entrada considerar�
relevante. Los valores permitidos son: stream, dgram, raw, rdm o
seqpacket. Es un poco t�cnico por naturaleza, pero por regla
general casi todos los servicios basados en tcp usan stream, y
casi todos los basados en udp usan dgram. S�lo algunos demonios
servidores muy particulares usar�n otros valores.
proto
el protocolo considerado v�lido para este servicio. Deber�a
corresponder con la entrada apropiada en el fichero
/etc/services y suele ser tcp o udp. Los servidores basados en
Sun RPC (Remote Procedure Call) usar�n rpc/tcp o rpc/udp.
flags
s�lo hay dos valores posibles. Este campo le dice a inetd si el
programa servidor de red libera el socket despu�s de comenzar la
ejecuci�n, y si por tanto inetd podr� ejecutar otro servidor
para la siguiente petici�n de conexi�n, o si inetd deber�
esperar y asumir que el demonio servidor que est� ejecut�ndose
controlar� las nuevas peticiones de conexi�n. Esto tiene su
dificultad, pero por norma general todos los servidores tcp
deber�an tener esta entrada con el valor nowait y la mayor�a de
servidores udp deber�an tener wait. De todas maneras hay
algunas excepciones notables, por lo que deber�a leer la gu�a de
ejemplo si no est� seguro.
usuario
este campo indica qu� cuenta de usuario de /etc/passwd ser�
asignada como due�a del demonio de red cuando se ejecute. Esto
es a menudo �til si quiere protegerse ante riesgos de seguridad.
Puede asignar el usuario nobody a una entrada, por lo que si la
seguridad del servidor de red es traspasada el posible da�o
queda minimizado. Habitualmente, sin embargo, este campo est�
asignado a root, porque muchos servidores requieren privilegios
de administrador para funcionar correctamente.
servidor
este campo es el camino completo hasta el programa servidor a
ejecutar para esta entrada.
argumentos
este campo comprende el resto de la l�nea de �rdenes y es
opcional. Es en donde se pone cualquier argumento de l�nea de
�rdenes que desee pasar al programa demonio servidor cuando es
ejecutado.
5.8.2.1. Un ejemplo de /etc/inetd.conf
Al igual que pasa con el /etc/services, todas las distribuciones
modernas incluir�n un buen fichero /etc/inetd.conf para trabajar con
�l. Aqu� incluyo, como ejemplo, el fichero /etc/inetd.conf de la
distribuci�n Debian
http://www.debian.org.
# /etc/inetd.conf: see inetd(8) for further informations.
#
# Internet server configuration database
#
#
# Modified for Debian by Peter Tobias <
[email protected]>
#
# <service_name> <sock_type> <proto> <flags> <user> <server_path> <args>
#
# Internal services
#
#echo stream tcp nowait root internal
#echo dgram udp wait root internal
discard stream tcp nowait root internal
discard dgram udp wait root internal
daytime stream tcp nowait root internal
daytime dgram udp wait root internal
#chargen stream tcp nowait root internal
#chargen dgram udp wait root internal
time stream tcp nowait root internal
time dgram udp wait root internal
#
# These are standard services.
#
telnet stream tcp nowait root /usr/sbin/tcpd /usr/sbin/in.telnetd
ftp stream tcp nowait root /usr/sbin/tcpd /usr/sbin/in.ftpd
#fsp dgram udp wait root /usr/sbin/tcpd /usr/sbin/in.fspd
#
# Shell, login, exec and talk are BSD protocols.
#
shell stream tcp nowait root /usr/sbin/tcpd /usr/sbin/in.rshd
login stream tcp nowait root /usr/sbin/tcpd /usr/sbin/in.rlogind
#exec stream tcp nowait root /usr/sbin/tcpd /usr/sbin/in.rexecd
talk dgram udp wait root /usr/sbin/tcpd /usr/sbin/in.talkd
ntalk dgram udp wait root /usr/sbin/tcpd /usr/sbin/in.ntalkd
#
# Mail, news and uucp services.
#
smtp stream tcp nowait root /usr/sbin/tcpd /usr/sbin/in.smtpd
#nntp stream tcp nowait news /usr/sbin/tcpd /usr/sbin/in.nntpd
#uucp stream tcp nowait uucp /usr/sbin/tcpd /usr/lib/uucp/uucico
#comsat dgram udp wait root /usr/sbin/tcpd /usr/sbin/in.comsat
#
# Pop et al
#
#pop-2 stream tcp nowait root /usr/sbin/tcpd /usr/sbin/in.pop2d
#pop-3 stream tcp nowait root /usr/sbin/tcpd /usr/sbin/in.pop3d
#
# `cfinger' is for the GNU finger server available for Debian. (NOTE: The
# current implementation of the `finger' daemon allows it to be run as `root'.)
#
#cfinger stream tcp nowait root /usr/sbin/tcpd /usr/sbin/in.cfingerd
#finger stream tcp nowait root /usr/sbin/tcpd /usr/sbin/in.fingerd
#netstat stream tcp nowait nobody /usr/sbin/tcpd /bin/netstat
#systat stream tcp nowait nobody /usr/sbin/tcpd /bin/ps -auwwx
#
# Tftp service is provided primarily for booting. Most sites
# run this only on machines acting as "boot servers."
#
#tftp dgram udp wait nobody /usr/sbin/tcpd /usr/sbin/in.tftpd
#tftp dgram udp wait nobody /usr/sbin/tcpd /usr/sbin/in.tftpd /boot
#bootps dgram udp wait root /usr/sbin/bootpd bootpd -i -t 120
#
# Kerberos authenticated services (these probably need to be corrected)
#
#klogin stream tcp nowait root /usr/sbin/tcpd /usr/sbin/in.rlogind -k
#eklogin stream tcp nowait root /usr/sbin/tcpd /usr/sbin/in.rlogind -k -x
#kshell stream tcp nowait root /usr/sbin/tcpd /usr/sbin/in.rshd -k
#
# Services run ONLY on the Kerberos server (these probably need to be corrected)
#
#krbupdate stream tcp nowait root /usr/sbin/tcpd /usr/sbin/registerd
#kpasswd stream tcp nowait root /usr/sbin/tcpd /usr/sbin/kpasswdd
#
# RPC based services
#
#mountd/1 dgram rpc/udp wait root /usr/sbin/tcpd /usr/sbin/rpc.mountd
#rstatd/1-3 dgram rpc/udp wait root /usr/sbin/tcpd /usr/sbin/rpc.rstatd
#rusersd/2-3 dgram rpc/udp wait root /usr/sbin/tcpd /usr/sbin/rpc.rusersd
#walld/1 dgram rpc/udp wait root /usr/sbin/tcpd /usr/sbin/rpc.rwalld
#
# End of inetd.conf.
ident stream tcp nowait nobody /usr/sbin/identd identd -i
5.9. Otros ficheros de configuraci�n relacionados con la red
Hay varios ficheros miscel�neos relacionados con la configuraci�n de
la red en Linux por los que podr�a estar interesado. Nunca deber�a
tener que modificar estos ficheros, pero merece la pena describirlos
para que sepa lo que contienen y para qu� son.
5.9.1. /etc/protocols
El fichero /etc/protocols es una base de datos que correlaciona
n�meros de identificaci�n de protocolos con sus nombres. Esto lo usan
los programadores para especificar protocolos por su nombre en sus
programas y tambi�n por programas como tcpdump para mostrar nombres en
lugar de n�meros en su salida. En general la sintaxis del fichero es:
nombredelprotocolo n�mero sobrenombres
El fichero /etc/protocols proporcionado con la distribuci�n Debian
http://www.debian.org es como sigue:
# /etc/protocols:
# $Id: protocols,v 1.1 1995/02/24 01:09:41 imurdock Exp $
#
# Internet (IP) protocols
#
# from: @(#)protocols 5.1 (Berkeley) 4/17/89
#
# Updated for NetBSD based on RFC 1340, Assigned Numbers (July 1992).
ip 0 IP # internet protocol, pseudo protocol number
icmp 1 ICMP # internet control message protocol
igmp 2 IGMP # Internet Group Management
ggp 3 GGP # gateway-gateway protocol
ipencap 4 IP-ENCAP # IP encapsulated in IP (officially �IP�)
st 5 ST # ST datagram mode
tcp 6 TCP # transmission control protocol
egp 8 EGP # exterior gateway protocol
pup 12 PUP # PARC universal packet protocol
udp 17 UDP # user datagram protocol
hmp 20 HMP # host monitoring protocol
xns-idp 22 XNS-IDP # Xerox NS IDP
rdp 27 RDP # "reliable datagram" protocol
iso-tp4 29 ISO-TP4 # ISO Transport Protocol class 4
xtp 36 XTP # Xpress Tranfer Protocol
ddp 37 DDP # Datagram Delivery Protocol
idpr-cmtp 39 IDPR-CMTP # IDPR Control Message Transport
rspf 73 RSPF # Radio Shortest Path First.
vmtp 81 VMTP # Versatile Message Transport
ospf 89 OSPFIGP # Open Shortest Path First IGP
ipip 94 IPIP # Yet Another IP encapsulation
encap 98 ENCAP # Yet Another IP encapsulation
5.9.2. /etc/networks
El fichero /etc/networks tiene una funci�n similar a la del fichero
/etc/hosts. Proporciona una base de datos sencilla de nombres de red y
direcciones de red. Su formato difiere en que s�lo puede haber dos
campos por l�nea y los campos est�n codificados as�:
nombredelared direcci�ndered
Un ejemplo podr�a ser:
loopnet 127.0.0.0
localnet 192.168.0.0
amprnet 44.0.0.0
Cuando use �rdenes como route, si un destino es una red y la red tiene
una entrada en el fichero /etc/networks entonces route mostrar� el
nombre de la red en lugar de su direcci�n.
5.10. Seguridad en la red y control de acceso.
D�jeme empezar esta secci�n advirtiendo que la seguridad de su m�quina
y red ante ataques maliciosos es un arte complejo. No me considero un
experto en este campo y aunque los mecanismos que voy a describir
puedan ayudar, si quiere tomarse en serio la seguridad entonces le
recomiendo que investigue un poco en el tema. Hay algunas buenas
referencias en Internet relacionadas con la seguridad, incluido el
Security HOWTO (Dispone de una traducci�n en
http://www.insflug.org/documentos/Seguridad-Como/.
Una regla general importante es: No ejecute servicios que no tenga
intenci�n de usar'. Muchas distribuciones vienen configuradas con
todo tipo de servicios que se inician autom�ticamente. Para asegurar
un nivel m�nimo de seguridad deber�a examinar el fichero
/etc/inetd.conf y comentar (poner un # al inicio de la l�nea) de toda
declaraci�n de servicio que no vaya a usar. Buenos candidatos son:
shell, exec, uucp, ftp y servicios de informaci�n como finger, netstat
y systat.
Hay todo tipo de mecanismos de seguridad y control de acceso,
describir� los m�s elementales.
5.10.1. /etc/ftpusers
El fichero /etc/ftpusers es un mecanismo sencillo que le permite
denegar la entrada a ciertos usuarios mediante FTP. El fichero
/etc/ftpusers lo lee el programa demonio de FTP (ftpd) cuando se
recibe una conexi�n FTP. El fichero es una simple lista de aquellos
usuarios que no tienen permitido el acceso. Puede parecerse a esto:
# /etc/ftpusers - users not allowed to login via ftp
root
uucp
bin
mail
5.10.2. /etc/securetty
El fichero /etc/securetty permite especificar qu� dispositivos tty
puede usar root para identificarse en el sistema. El fichero
/etc/securetty es le�do por el programa de acceso (normalmente
/etc/login). Su formato es una lista de los nombres de dispositivos
tty permitidos, en todos los dem�s root tiene prohibida la entrada:
# /etc/securetty - tty's on which root is allowed to login
tty1
tty2
tty3
tty4
5.10.3. El mecanismo de control de acceso hosts de tcpd
El programa tcpd que ha visto listado en el fichero /etc/inetd.conf
proporciona mecanismos de control de registro y acceso a los servicios
que haya de proteger.
Cuando es invocado por el programa inetd lee dos ficheros que
contienen reglas de acceso y que permiten o deniegan acceso al
servidor que est� protegiendo.
Mirar� en los ficheros de reglas hasta que encuentre la primera
correspondencia. Si no se encuentran correspondencias asume que el
acceso deber�a estar permitido para todo el mundo. La secuencia de
archivos que revisa es: /etc/hosts.allow, /etc/hosts.deny. Describir�
cada uno de estos en seguida. Para una descripci�n completa de este
servicio deber�a referirse a las p�ginas del manual apropiadas
(hosts_access (5) es un buen punto de partida).
5.10.3.1. /etc/hosts.allow
El /etc/hosts.allow es un fichero de configuraci�n del programa
/usr/sbin/tcpd. El fichero hosts.allow contiene reglas que describen
qu� m�quinas tienen permiso para acceder a un servicio en la suya.
El formato del fichero es bastante sencillo:
# /etc/hosts.allow
#
# <lista de servicios>: <lista de hosts> [: orden]
lista de servicios
es una lista delimitada por comas de nombres de servidores a los
que se aplica esta regla. Ejemplos de nombre de servicio son:
ftpd, telnetd y fingerd.
lista de hosts
es una lista de nombres de m�quinas, delimitada por comas. Aqu�
tambi�n puede usar direcciones IP. De forma adicional, puede
especificar nombres de m�quinas o direcciones usando caracteres
comod�n para corresponder con grupos de m�quinas. Por ejemplo:
gw.vk2ktj.ampr.org para una m�quina espec�fica, .uts.edu.au para
cualquier nombre de m�quina que acabe en esa cadena, 44. para
cualquier direcci�n IP que comience con esos d�gitos. Hay
algunas palabras especiales para simplificar la configuraci�n,
algunas de las cuales son:
� ALL, que se corresponde con cualquier host.
� LOCAL se corresponde con cualquier nombre de host que no
contenga un . o sea que est� en el mismo dominio que su m�quina;
� PARANOID se corresponde con cualquier nombre que no se
corresponda con esta direcci�n (name spoofing). Hay una �ltima
palabra que tambi�n es �til. La palabra
� EXCEPT permite proporcionar una lista con excepciones. Esto lo
cubriremos en un cap�tulo posterior.
orden
es un par�metro opcional. Este par�metro es el camino completo
hasta una orden que deber�a ser ejecutada cada vez que se cumpla
esta regla. Podr�a por ejemplo ejecutar una instrucci�n que
intentase identificar qui�n est� autenticado en el host que
conecta, o generar un mensaje de correo u otro tipo de alerta a
un administrador de sistema avisando de que alguien intenta
conectar. Hay cierto n�mero de expansiones que podr�amos
incluir, algunos ejemplos comunes son: %h se expande al nombre
de la m�quina que se conecta o a su direcci�n si no tiene un
nombre, %d es el demonio que est� siendo llamado.
Un ejemplo:
# /etc/hosts.allow
#
# Permitir correo a todo el mundo
in.smtpd: ALL
# Todo telnet y FTP s�lo a hosts dentro de mi dominio y el host que tengo
# en caso
telnetd, ftpd: LOCAL, myhost.athome.org.au
# Permitir finger a cualquiera pero mantener un registro de qui�n es.
fingerd: ALL: (finger @%h | mail -s "finger desde %h" root)
5.10.3.2. /etc/hosts.deny
El fichero /etc/hosts.deny es un fichero de configuraci�n del programa
/usr/sbin/tcpd. El fichero hosts.deny contiene reglas que describen
qu� m�quinas tienen prohibido el acceso a un servicio en su m�quina.
Un ejemplo simple podr�a parecerse a esto:
# /etc/hosts.deny
#
# Desautorizar a todos los host con nombre sospechoso
ALL: PARANOID
#
# Desautorizar a todos los host.
ALL: ALL
La entrada PARANOID es redundante porque la otra entrada abarca todo
en cualquier caso. Ambas entradas ser�an razonables por defecto
dependiendo de sus requisitos particulares.
La configuraci�n m�s segura es tener ALL: ALL por defecto en
/etc/hosts.deny para despu�s dar permiso espec�ficamente a aquellos
servicios y hosts que se desee en /etc/hosts.allow.
5.10.4. /etc/hosts.equiv
El fichero hosts.equiv se usa para garantizar a ciertos hosts y
usuarios derechos de acceso a cuentas en su m�quina sin que tenga que
proporcionar una clave. Esto es �til en un entorno seguro donde
controle todas las m�quinas, pero en otro caso es un peligro para la
seguridad. Su m�quina es s�lo tan segura como la menos segura de
aquellas en las que conf�e. Para maximizar la seguridad, no use este
mecanismo, y anime a sus usuarios para que tampoco usen ficheros
.rhost.
5.10.5. Configure su demonio de ftp adecuadamente.
Muchos servidores estar�n interesados en ejecutar un demonio de FTP
an�nimo para permitir a otras personas que subir y descargar ficheros
sin necesidad de un userid espec�fico. Si decide ofrecer este servicio
aseg�rese de que configura el demonio de ftp apropiadamente para
acceso an�nimo. La mayor�a de las p�ginas de ftpd(8) describen c�mo
hacerlo. Deber�a asegurarse siempre de que sigue estas instrucciones.
Una cosa importante es no usar una copia de su fichero /etc/passwd
habitual en el directorio /etc de la cuenta an�nima; aseg�rese de que
elimina todos los detalles sobre las cuentas excepto aquellos que deba
tener, ya que en otro caso ser� vulnerable a las t�cnicas de
adquisici�n de claves por fuerza bruta.
5.10.6. Cortafuegos para redes.
Un excelente medio de seguridad es no permitir que los datagramas
lleguen siquiera a su m�quina o servidores. Esto lo cubre en
profundidad el
http://www.insflug.org/documentos/Cortafuegos-Como/ y,
m�s concisamente, la �ltima secci�n de este documento.
5.10.7. Otras sugerencias.
Hay otras sugerencias, que deber�a considerar, pero que realmente son
cuesti�n de cada uno.
sendmail
a pesar de su popularidad, el demonio sendmail aparece con
preocupante regularidad en los anuncios de alerta de seguridad.
Usted decides, pero yo elijo no ejecutarlo.
NFS y otros servicios Sun RPC
tenga cuidado con estos. Hay todo tipo de posibles formas de
explotar estos servicios. Es dif�cil de encontrar una opci�n a
los servicios NFS, y si decide usarlos, aseg�rese de que es
cuidadoso con los permisos que da al configurarlo.
6. Informaci�n relacionada con IP y Ethernet
Esta secci�n cubre la informaci�n espec�fica a Ethernet e IP. Estas
subsecciones han sido agrupadas juntas debido a que pienso que son las
m�s interesante dentro de la que previamente se llam� secci�n de
�Tecnolog�a Espec�fica�. Cualquiera que tenga una LAN se beneficiar�
de esta parte.
6.1. Ethernet
Los dispositivos Ethernet son eth0, eth1, eth2, etc. A la primera
tarjeta detectada por el n�cleo se le asigna eth0 y al resto se les
asigna secuencialmente en el orden en que sean detectadas.
Por defecto, el n�cleo de Linux s�lo intenta buscar una tarjeta de
red, por lo que tendr� que pasarle algunos par�metros para forzar la
detecci�n de las dem�s.
Para aprender c�mo hacer trabajar una tarjeta Ethernet bajo Linux
deber�a acudir al Ethernet Howto, Ethernet-HOWTO.html.
Una vez que tenga el n�cleo compilado para reconocer su tarjeta
Ethernet, configurar la tarjeta es sencillo.
Normalmente deber�a hacer algo como:
root# ifconfig eth0 192.168.0.1 netmask 255.255.255.0 up
root# route add -net 192.168.0.0 netmask 255.255.255.0 eth0
La mayor�a de los controladores Ethernet fueron desarrollados por
Donald Becker,
[email protected].
6.2. EQL - ecualizador de tr�fico para l�neas m�ltiples
El nombre del dispositivo EQL es eql. Con las fuentes est�ndar del
n�cleo s�lo podr� tener un dispositivo EQL por m�quina. EQL
proporciona un medio para utilizar m�ltiples l�neas punto a punto como
un solo enlace PPP, slip o PLIP l�gico para llevar tcp/ip. A menudo es
m�s barato usar varias l�neas de baja velocidad que tener una sola
l�nea de alta velocidad.
Opciones de Compilaci�n del N�cleo:
Network device support --->
[*] Network device support
<*> EQL (serial line load balancing) support
Para poder usar este mecanismo la m�quina en el otro extremo de la
l�nea debe admitirlo tambi�n. Linux, Livingstone Portmasters y los
nuevos servidores dial-in soportan servicios compatibles.
Para configurar EQL necesitar� las herramientas eql que est�n
disponibles en
ftp://metalab.unc.edu/pub/linux/system/Serial/eql-1.2.tar.gz.
La configuraci�n es bastante directa. Se comienza por la interfaz eql.
La interfaz es exactamente como la de cualquier otro dispositivo de
red. La direcci�n IP y mtu se configura usando ifconfig, con algo
como:
root# ifconfig eql 192.168.10.1 mtu 1006
Lo siguiente que se necesita es iniciar manualmente cada una de las
l�neas que se vayan a usar. Esta puede ser cualquier combinaci�n de
dispositivos de red punto a punto. C�mo iniciar las conexiones depende
del tipo de enlace que sea, por lo que ha de mirar las secciones
apropiadas para m�s informaci�n.
Finalmente necesitar� asociar el enlace serie con el dispositivo EQL,
esto se llama �esclavizar� y se hace con la orden eql_enslave como se
ve en el ejemplo:
root# eql_enslave eql sl0 28800
root# eql_enslave eql ppp0 14400
El par�metro velocidad estimada que se da a eql_enslave no hace nada
directamente. Lo usa el controlador (driver) EQL para determinar qu�
parte de los datagramas va a recibir cada dispositivo, para as� afinar
el balance de las l�neas jugando con este valor.
Para disociar una l�nea de un dispositivo EQL use eql_emancipate de
esta manera:
#root eql_emancipate eql sl0
Puede a�adir rutas de la misma manera que para cualquier otro enlace
punto a punto, excepto en que las rutas deben referirse al dispositivo
eql en lugar de a los verdaderos dispositivos en serie. Normalmente
usar�:
root# route add default eql
El controlador EQL fue desarrollado por Simon Janes,
[email protected].
6.3. IP Accounting (en Linux 2.0)
Los servicios de auditor�a IP del n�cleo de Linux le permiten
recolectar y analizar datos de uso de la red. Los datos recogidos
comprenden el n�mero de paquetes y de bytes acumulados desde que se
puso a cero la �ltima vez. Tiene a su disposici�n varias reglas para
categorizar estas cifras para que se ajusten a los prop�sitos que les
vaya a dar. Esta opci�n ha sido eliminada del n�cleo a partir de la
versi�n 2.1.102, porque el viejo sistema de cortafuegos basado en
ipfwadm fue reemplazado por ipfwchains.
Opciones de Compilaci�n del N�cleo:
Networking options --->
[*] IP: accounting
Despu�s de que haya compilado e instalado el n�cleo necesitar� hacer
uso de la orden ipfwadm para configurar la auditor�a de IP. Hay muchas
maneras diferentes de obtener la informaci�n de auditor�a para elegir.
He creado un ejemplo sencillo de lo que podr�a ser �til, pero deber�a
leer la p�gina de manual de ipfwadm para obtener m�s informaci�n.
Escena: Tenemos una red Ethernet que accede a la Internet mediante un
enlace PPP. En la Ethernet tiene una m�quina que ofrece cierta
variedad de servicios y est� interesado en saber cu�nto tr�fico se
genera por cada conexi�n ftp y http, as� como el tr�fico total tcp y
udp.
Podr�as usar un conjunto de �rdenes que se pareciese a lo siguiente,
que se presenta como gui�n de ejecuci�n de �rdenes (shell script):
#!/bin/sh
#
# Borrar las reglas de contabilidad
ipfwadm -A -f
#
# Establecer macros
localnet=44.136.8.96/29
any=0/0
# Agregar reglas para los segmentos de la red local
ipfwadm -A in -a -P tcp -D $localnet ftp-data
ipfwadm -A out -a -P tcp -S $localnet ftp-data
ipfwadm -A in -a -P tcp -D $localnet www
ipfwadm -A out -a -P tcp -S $localnet www
ipfwadm -A in -a -P tcp -D $localnet
ipfwadm -A out -a -P tcp -S $localnet
ipfwadm -A in -a -P udp -D $localnet
ipfwadm -A out -a -P udp -S $localnet
#
# Reglas por defecto
ipfwadm -A in -a -P tcp -D $any ftp-data
ipfwadm -A out -a -P tcp -S $any ftp-data
ipfwadm -A in -a -P tcp -D $any www
ipfwadm -A out -a -P tcp -S $any www
ipfwadm -A in -a -P tcp -D $any
ipfwadm -A out -a -P tcp -S $any
ipfwadm -A in -a -P udp -D $any
ipfwadm -A out -a -P udp -S $any
#
# Mostrar las reglas
ipfwadm -A -l -n
#
Los nombres ftp-data y www se refieren a l�neas en /etc/services. La
�ltima orden da una lista de cada una de las reglas de auditor�a y
muestra los totales obtenidos.
Una cosa importante a tener en cuenta cuando analizamos IP accounting
es que los totales de todas las reglas que se han cumplido se han
incrementado, por tanto para obtener las diferencias tendr� que hacer
los c�lculos apropiados. Por ejemplo, si quiero saber cuantos datos no
fueron de ftp, ni www restar� los totales individuales de la regla que
se corresponde con todos los puertos.
root# ipfwadm -A -l -n
IP accounting rules
pkts bytes dir prot source destination ports
0 0 in tcp 0.0.0.0/0 44.136.8.96/29 * -> 20
0 0 out tcp 44.136.8.96/29 0.0.0.0/0 20 -> *
10 1166 in tcp 0.0.0.0/0 44.136.8.96/29 * -> 80
10 572 out tcp 44.136.8.96/29 0.0.0.0/0 80 -> *
252 10943 in tcp 0.0.0.0/0 44.136.8.96/29 * -> *
231 18831 out tcp 44.136.8.96/29 0.0.0.0/0 * -> *
0 0 in udp 0.0.0.0/0 44.136.8.96/29 * -> *
0 0 out udp 44.136.8.96/29 0.0.0.0/0 * -> *
0 0 in tcp 0.0.0.0/0 0.0.0.0/0 * -> 20
0 0 out tcp 0.0.0.0/0 0.0.0.0/0 20 -> *
10 1166 in tcp 0.0.0.0/0 0.0.0.0/0 * -> 80
10 572 out tcp 0.0.0.0/0 0.0.0.0/0 80 -> *
253 10983 in tcp 0.0.0.0/0 0.0.0.0/0 * -> *
231 18831 out tcp 0.0.0.0/0 0.0.0.0/0 * -> *
0 0 in udp 0.0.0.0/0 0.0.0.0/0 * -> *
0 0 out udp 0.0.0.0/0 0.0.0.0/0 * -> *
6.4. IP Accounting (en Linux 2.2)
El nuevo c�digo para llevar la contabilidad se accede mediante �IP
Firewall Chains�. Consulte la p�gina principal de IP chains
http://www.adelaide.net.au/~rustcorp/ipfwchains/ipfwchains.html si
desea m�s informaci�n. Entre otras cosas, necesitar� usar ipchains en
lugar de ipfwadm para configurar sus filtros. (De
Documentation/Changes en las �ltimas fuentes del n�cleo)
6.5. IP Aliasing
Hay algunas aplicaciones para las que es �til ser capaz de asignar
varias direcciones IP a un s�lo dispositivo de red. Los Proveedores de
Servicios de Internet usan esto a menudo para ofertar a sus usuarios
WWW y FTP �a medida�. Puede acudir al IP-Alias mini-HOWTO si quiere
obtener m�s informaci�n de la que aqu� hay.
Opciones de Compilaci�n del N�cleo:
Networking options --->
....
[*] Network aliasing
....
<*> IP: aliasing support
Despu�s de compilar e instalar su n�cleo con la implementaci�n de
IP_Alias, la configuraci�n es muy sencilla. Los alias se a�aden a
dispositivos de red virtuales asociados al verdadero dispositivo de
red. Se aplica una convenci�n sencilla para dar nombres a estos
dispositivos, que es <nombredisp>:<n�m disp virtual>, por ejemplo
eth0:0, ppp0:10, etc. Tenga en cuenta que dispositivo nombre:n�mero
s�lo se puede configurar despu�s de haber activado la interfaz
principal.
Por ejemplo, asumiremos que tiene una red Ethernet que soporta dos
redes IP diferentes simult�neamente y quiere que tu m�quina tenga
acceso directo a ambas. Podr�amos hacer algo como:
root# ifconfig eth0 192.168.1.1 netmask 255.255.255.0 up
root# route add -net 192.168.1.0 netmask 255.255.255.0 eth0
root# ifconfig eth0:0 192.168.10.1 netmask 255.255.255.0 up
root# route add -net 192.168.10.0 netmask 255.255.255.0 eth0:0
Para borrar un alias sencillamente a�adimos un `-' al final de su
nombre y nos referimos a �l de forma tan sencilla como:
root# ifconfig eth0:0- 0
Tambi�n ser�n borradas autom�ticamente todas las rutas asociadas con
ese alias.
6.6. IP Firewall (para Linux 2.0)
Los temas referentes a Cortafuegos IP y al trabajo con Cortafuegos
est� cubierto en mayor profundidad en el
http://www.insflug.org/documentos/Cortafuegos-Como/. Tener un
Cortafuegos IP le permite asegurar su m�quina frente a accesos por la
red no autorizados filtrando o permitiendo que entren datagramas de o
hacia las direcciones IP que sean designadas. Hay tres clases
diferentes de reglas, filtrado de entradas (incoming filtering),
filtrado de salidas (outgoing filtering) y filtrado de reenv�os
(forwarding filtering). Las reglas de entradas son aplicadas a los
datagramas recibidos en un dispositivo de red. Las reglas de salidas
se aplican a los datagramas que va a transmitir un dispositivo de red.
Las reglas de reenv�os se aplican a datagramas que se reciben pero que
no son para esta m�quina, como por ejemplo datagramas que entran por
una interfaz para ser encaminados por otra.
Opciones de Compilaci�n del N�cleo:
Networking options --->
[*] Network firewalls
....
[*] IP: forwarding/gatewaying
....
[*] IP: firewalling
[ ] IP: firewall packet logging
La configuraci�n de las reglas del cortafuegos IP se realiza usando la
orden ipfwadm. Como mencion� antes, yo no soy un experto en seguridad,
por lo aunque le voy a presentar un ejemplo que se puede usar, usted
deber�a investigar y desarrollar sus propias reglas si la seguridad es
algo que le importe.
El uso m�s com�n de los cortafuegos IP es probablemente cuando est�
usando su m�quina Linux como encaminador y pasarela (gateway)
cortafuegos para proteger tu red local de accesos sin autorizaci�n
desde fuera de la red.
La configuraci�n siguiente est� basada en una contribuci�n de Arnt
Gulbrandsen,
[email protected].
El ejemplo describe la configuraci�n de las reglas de cortafuegos en
la m�quina cortafuegos/encaminadora ilustrada en este diagrama.
- -
\ | 172.16.37.0
\ | /255.255.255.0
\ --------- |
| 172.16.174.30 | Linux | |
NET =================| f/w |------| ..37.19
| PPP | router| | --------
/ --------- |--| Mail |
/ | | /DNS |
/ | --------
- -
Las �rdenes que siguen, deber�an normalmente estar situadas en un
fichero rc de manera que sean ejecutadas autom�ticamente cada vez que
el sistema reinicie. Para mayor seguridad deber�an ser llamadas
despu�s de que ser configuradas las interfaces de red, pero antes de
que las interfaces hayan sido puestas �en marcha� para prevenir
cualquier intento de acceder mientras la m�quina cortafuegos est�
reiniciando.
#!/bin/sh
# Limpiar la tabla de reglas de 'Reenv�os'
# Cambiar la pol�tica por defecto a 'accept'
#
/sbin/ipfwadm -F -f
/sbin/ipfwadm -F -p accept
#
# .. y lo mismo para 'Entradas'
#
/sbin/ipfwadm -I -f
/sbin/ipfwadm -I -p accept
# Antes que nada, sellamos la interfaz PPP
# Me encantar�a usar '-a deny' en lugar de '-a reject -y' pero entonces
# ser�a imposible originar conexiones desde ese interfaz.
# El -o causa que todos los datagramas rechazados sean registrados. Esto
# toma espacio de disco a cambio de tener el conocimiento de un ataque
# por error de configuraci�n.
#
/sbin/ipfwadm -I -a reject -y -o -P tcp -S 0/0 -D 172.16.174.30
# Eliminar ciertos tipos de paquetes que obviamente han sido generados
# de forma 'artificial': No puede venir nada de direcciones
# multicast/anycast/broadcast
#
/sbin/ipfwadm -F -a deny -o -S 224.0/3 -D 172.16.37.0/24
#
# y nunca deber�amos ver llegar por un cable nada de la red
# 'loopback'
#
/sbin/ipfwadm -F -a deny -o -S 127.0/8 -D 172.16.37.0/24
# aceptamos entradas de las conexiones SMTP y DNS, pero s�lo
# hacia el Mail/Name Server
#
/sbin/ipfwadm -F -a accept -P tcp -S 0/0 -D 172.16.37.19 25 53
#
# DNS usa tanto UPD como TCP, por lo tanto los permitimos ambos
# para quien pregunte por nuestro servidor de nombres
#
/sbin/ipfwadm -F -a accept -P udp -S 0/0 -D 172.16.37.19 53
#
# pero no "respuestas" que lleguen a puertos peligrosos como el de NFS
# y extensiones de NFS de Larry McVoy. Si ejecutamos squid, a�adir
# su puerto aqu� tambi�n.
#
/sbin/ipfwadm -F -a deny -o -P udp -S 0/0 53 \
-D 172.16.37.0/24 2049 2050
# valen las respuestas a otros puertos de usuario
#
/sbin/ipfwadm -F -a accept -P udp -S 0/0 53 \
-D 172.16.37.0/24 53 1024:65535
# Rechazar conexiones de entrada a identd Usaremos 'reject' aqu� para que
# se le diga al ordenador que intenta conectar que no contin�e, si no lo
# hici�ramos, experimentar�amos retrasos mientras ident da un error de
# 'time out'
#
/sbin/ipfwadm -F -a reject -o -P tcp -S 0/0 -D 172.16.37.0/24 113
# Aceptamos algunas conexiones a servicios comunes desde las redes
# 192.168.64 y 192.168.65, que son amistades en las que confiamos.
#
/sbin/ipfwadm -F -a accept -P tcp -S 192.168.64.0/23 \
-D 172.16.37.0/24 20:23
# aceptar y dejar pasar cualquier cosa que se origine dentro
#
/sbin/ipfwadm -F -a accept -P tcp -S 172.16.37.0/24 -D 0/0
# denegar la mayor�a del resto de conexiones TCP y registrarlas
# (a�ade 1:1023 si tiene problemas con el FTP)
#
/sbin/ipfwadm -F -a deny -o -y -P tcp -S 0/0 -D 172.16.37.0/24
# ... para UDP tambi�n
#
/sbin/ipfwadm -F -a deny -o -P udp -S 0/0 -D 172.16.37.0/24
Las buenas configuraciones de cortafuegos son un poco complicadillas.
Este ejemplo deber�a ser un punto de partida razonable. La p�gina de
manual de ipfwadm ofrece m�s asistencia en lo que respecta al manejo
de la herramienta. Si intenta configurar un cortafuegos, aseg�rese de
que hace suficientes preguntas para tener informaci�n de las fuentes
que considera fiables y haga algunas pruebas de funcionamiento con su
configuraci�n desde el exterior de la red.
6.7. IP Firewall (para Linux 2.2)
Al nuevo c�digo para controlar el cortafuegos se accede mediante IP
Firewall Chains. Consulte la p�gina principal de IP Chains
http://www.adelaide.net.au/~rustcorp/ipfwchains/ipfwchains.html si
desea m�s informaci�n. Entre otras cosas, necesitar� usar ipchains en
lugar de ipfwadm para configurar sus filtros. (De
Documentation/Changes en las �ltimas fuentes del n�cleo)
Estamos avisados de que esto est� seguramente desfasado y estamos
trabajando para tener esta secci�n m�s al d�a. Es posible que tengamos
una versi�n nueva para agosto de 1999.
6.8. Encapsulaci�n IPIP
�Qu� raz�n hay para encapsular datagramas IP dentro de datagramas IP?
Le parecer� una tonter�a si nunca ha visto antes sus aplicaciones.
Bien, aqu� tenemos un par de ejemplos comunes en los que se usa:
Mobile-IP e IP-Multicast. Posiblemente su uso m�s extendido o al
menos el mejor conocido es Amateur Radio.
Opciones de Compilaci�n del N�cleo:
Networking options --->
[*] TCP/IP networking
[*] IP: forwarding/gatewaying
....
<*> IP: tunneling
Los dispositivos t�neles de IP se denominan tunl0, tunl1, etc.
�Pero por qu�?. Bien, bien. Las reglas convencionales de
encaminamiento de redes IP comprenden direcciones de red y m�scaras de
red. Esto hace que conjuntos de direcciones contiguas sean encaminadas
mediante una sola regla de encaminamiento. Esto es muy conveniente,
pero significa que s�lo puede usar una direcci�n IP en particular
cuando est� conectado a alguna parte de la red a la que pertenece. En
la mayor�a de los casos esto vale, pero si suele desplazarse entonces
no ser� capaz siempre de conectar desde el mismo sitio. La
encapsulaci�n IP/IP (IP tunneling) le permite saltarse esta
restricci�n permitiendo que los datagramas que est�n destinados a su
direcci�n IP sean encapsulados y dirigidos a otra direcci�n IP. Si
sabe que va a estar durante un tiempo trabajando en otra red IP
entonces podr� poner a punto una m�quina de su red habitual para que
acepte los datagramas que van dirigidos a su IP y que los reenv�e a la
direcci�n que est� usando de manera temporal.
6.8.1. Una configuraci�n de red con t�neles
192.168.1/24 192.168.2/24
- -
| ppp0 = ppp0 = |
| aaa.bbb.ccc.ddd fff.ggg.hhh.iii |
| |
| /-----\ /-----\ |
| | | // | | |
|---| A |------//---------| B |---|
| | | // | | |
| \-----/ \-----/ |
| |
- -
El diagrama ilustra otra posible raz�n para usar encapsulaci�n IPIP,
las redes privadas virtuales. Este ejemplo presupone que tiene dos
m�quinas cada una con una sola conexi�n ppp a Internet. Cada m�quina
tiene una sola direcci�n IP. Tras cada una de estas m�quinas hay
algunas redes privadas de �rea local configuradas con direcciones de
red IP reservadas. Supongamos que quiere permitir que cualquier
m�quina en la red A se conecte con cualquier m�quina en la red B, como
si estuvieran conectadas a Internet por una ruta de red. La
encapsulaci�n IP se lo permitir�. Tenga en cuenta que la encapsulaci�n
no resuelve el problema de c�mo hacer que las m�quinas las redes A y B
se comuniquen con otras m�quinas en Internet, ya que para seguimos
necesitando trucos como el Enmascaramiento IP. La encapsulaci�n la
realiza normalmente una m�quina que est� funcionando como encaminador.
El encaminador Linux A deber�a configurarse as�:
#!/bin/sh
PATH=/sbin:/usr/sbin
mask=255.255.255.0
remotegw=fff.ggg.hhh.iii
#
# Configuraci�n Ethernet
ifconfig eth0 192.168.1.1 netmask $mask up
route add -net 192.168.1.0 netmask $mask eth0
#
# Configuraci�n ppp0 (iniciar enlace ppp, establecer ruta por defecto)
pppd
route add default ppp0
#
# Configuraci�n del dispositivo t�nel
ifconfig tunl0 192.168.1.1 up
route add -net 192.168.2.0 netmask $mask gw $remotegw tunl0
El encaminador Linux `B' deber�a configurarse con:
#!/bin/sh
PATH=/sbin:/usr/sbin
mask=255.255.255.0
remotegw=aaa.bbb.ccc.ddd
#
# Configuraci�n Ethernet
ifconfig eth0 192.168.2.1 netmask $mask up
route add -net 192.168.2.0 netmask $mask eth0
#
# Configuraci�n ppp0 (iniciar enlace PPP, establecer ruta por defecto)
pppd
route add default ppp0
#
# Configuraci�n del dispositivo t�nel
ifconfig tunl0 192.168.2.1 up
route add -net 192.168.1.0 netmask $mask gw $remotegw tunl0
La orden:
route add -net 192.168.1.0 netmask $mask gw $remotegw tunl0
se leer�a: Env�a cualquier datagrama destinado a 192.168.1.0/24 dentro
de un datagrama IPIP con direcci�n de destino aaa.bbb.ccc.ddd'.
Las configuraciones son rec�procas en cada extremo. El dispositivo de
t�nel usa el gw dado en la ruta como destino del datagrama IP en el
que encerrar� el datagrama que ha recibido para encaminar. Esa
m�quina debe saber c�mo desencapsular datagramas IPIP, esto es, debe
tambi�n estar configurada con un dispositivo t�nel.
6.8.2. Configuraci�n de la m�quina cuyos paquetes ser�n encapsulados
No tiene por qu� estar encaminando una red entera. Por ejemplo puede
estar encapsulando una sola direcci�n IP. En este caso podr�a
configurar el dispositivo tunl en la m�quina `remota' con su direcci�n
IP y el extremo A usar� la m�quina encaminadora (y Proxy Arp) en lugar
encaminar la red a trav�s del dispositivo t�nel. Dibujemos de nuevo y
modifiquemos apropiadamente nuestra configuraci�n. Ahora tenemos una
m�quina B que quiere actuar y comportarse como si estuviera conectada
a Internet y al mismo tiempo fuera parte de una red remota soportada
por la m�quina A:
192.168.1/24
-
| ppp0 = ppp0 =
| aaa.bbb.ccc.ddd fff.ggg.hhh.iii
|
| /-----\ /-----\
| | | // | |
|---| A |------//---------| B |
| | | // | |
| \-----/ \-----/
| tambi�n: 192.168.1.12
-
El encaminador Linux A deber�a configurarse as�:
#!/bin/sh
PATH=/sbin:/usr/sbin
mask=255.255.255.0
remotegw=fff.ggg.hhh.iii
#
# Configuraci�n Ethernet
ifconfig eth0 192.168.1.1 netmask $mask up
route add -net 192.168.1.0 netmask $mask eth0
#
# Configuraci�n ppp0 (iniciar enlace ppp, establecer ruta por defecto)
pppd
route add default ppp0
#
# Configuraci�n del dispositivo t�nel
ifconfig tunl0 192.168.1.1 up
route add -host 192.168.1.12 gw $remotegw tunl0
#
# Proxy ARP para la m�quina remota
arp -s 192.168.1.12 xx:xx:xx:xx:xx:xx pub
El encaminador Linux B deber�a configurarse as�:
#!/bin/sh
PATH=/sbin:/usr/sbin
mask=255.255.255.0
remotegw=aaa.bbb.ccc.ddd
#
# Configuraci�n ppp0 (iniciar enlace ppp, establecer ruta por
# defecto)
pppd
route add default ppp0
#
# Configuraci�n del dispositivo t�nel
ifconfig tunl0 192.168.1.12 up
route add -net 192.168.1.0 netmask $mask gw $remotegw tunl0
Esta clase de configuraci�n es m�s t�pica de aplicaciones Mobile-IP,
donde una m�quina quiere moverse por Internet y mantener una �nica IP
fija. Deber�a leer la secci�n Mobile-IP (IP M�vil) si quiere m�s
informaci�n de c�mo se hace esto en la pr�ctica.
6.9. Enmascarado IP ( IP Masquerade )
Mucha gente dispone de una sola cuenta por conexi�n telef�nica para
conectarse a Internet. Casi todos los que utilizan esa configuraci�n
se ve limitado a una sola direcci�n IP que le da el Proveedor de
Servicios de Internet. Esto normalmente es bastante para permitir un
s�lo acceso completo a la red. El Enmascarado IP es un truco
inteligente que permite que varias m�quinas usen una sola direcci�n
IP, haciendo que las otras m�quinas se hagan pasar, y de ah� el
t�rmino de enmascaramiento, por la m�quina que realmente tiene la
conexi�n. Hay un peque�o defecto y es que el enmascarado funciona casi
siempre en un s�lo sentido, y este es que las m�quinas enmascaradas
pueden hacer llamadas, pero no pueden aceptar o recibir llamadas de
otras m�quinas remotas. Esto significa que algunos servicios de red
como talk no funcionar�n y otros como ftp deber�n ser configurados en
modo pasivo (PASV) para que funcionen. Afortunadamente los servicios
de red m�s comunes como telnet, WWW e irc funcionan bien.
Opciones de Compilaci�n de Red:
Code maturity level options --->
[*] Prompt for development and/or incomplete code/drivers
Networking options --->
[*] Network firewalls
....
[*] TCP/IP networking
[*] IP: forwarding/gatewaying
....
[*] IP: masquerading (EXPERIMENTAL)
Lo normal es que su m�quina Linux est� usando una l�nea slip o PPP
como si fuera una m�quina aislada. Sin embargo, podemos tener adem�s
otros dispositivos de red configurados, quiz� una ethernet,
configurada con una de las direcciones de red privadas. Las m�quinas
que van a ser enmascaradas podr�an estar en esta segunda red. Cada una
de ellas deber�a tener asignada la direcci�n IP del puerto Ethernet de
la m�quina Linux como la pasarela (gateway) por defecto.
Una configuraci�n t�pica podr�a ser algo parecido a:
- -
\ | 192.168.1.0
\ | /255.255.255.0
\ --------- |
| | Linux | .1.1 |
NET =================| masq |------|
| PPP/slip | router| | --------
/ --------- |--| host |
/ | | |
/ | --------
- -
Enmascarado con IPFWADM
Las �rdenes m�s importantes para esta configuraci�n son:
# Ruta de red hacia la Ethernet
route add -net 192.168.1.0 netmask 255.255.255.0 eth0
#
# Ruta por defecto al resto de Internet
route add default ppp0
#
# Hace que todas las m�quinas de la red 192.168.1/24 sean
# enmascarados
ipfwadm -F -a m -S 192.168.1.0/24 -D 0.0.0.0/0
Enmascarado con IPCHAINS
# Ruta de red hacia la Ethernet
route add -net 192.168.1.0 netmask 255.255.255.0 eth0
#
# Ruta por defecto al resto de Internet
route add default ppp0
#
# Hace que todas las m�quinas de la red 192.168.1/24 sean
# enmascarados
ipchains -A forward -s 192.168.1.0/24 -j MASQ
Puede obtener m�s informaci�n sobre Enmascarado IP de Linux en la
p�gina de recursos de IP Masquerade
http://www.hwy401.com/achau/ipmasq. Tambi�n hay un documento muy
detallado que habla sobre enmascaramiento, que es el IP-Masquerade-
Como (que tambi�n ense�a a configurar otros sistemas operativos para
trabajar teniendo un Linux como servidor enmascarador).
6.10. Proxy IP transparente
El proxy transparente de IP es una caracter�stica que le permite
redirigir servidores o servicios destinados a otra m�quina a esos
servicios en esta m�quina. Normalmente esto es �til cuando tiene un
Linux como encaminador que adem�s proporciona un servidor proxy.
Deber�a redirigir todas las conexiones destinadas a este servicio de
forma remota al servidor local de proxy.
Opciones de Compilaci�n del N�cleo:
Code maturity level options --->
[*] Prompt for development and/or incomplete code/drivers
Networking options --->
[*] Network firewalls
....
[*] TCP/IP networking
....
[*] IP: firewalling
....
[*] IP: transparent proxy support (EXPERIMENTAL)
La configuraci�n de la caracter�stica de proxy transparente se realiza
mediante la orden ipfwadm.
Un ejemplo que podr�a ser �til es el siguiente:
root# ipfwadm -I -a accept -D 0/0 telnet -r 2323
Este ejemplo har� que cualquier intento de conexi�n al puerto telnet
(23) por parte de otra m�quina sea redirigida al puerto 2323 de esta
m�quina. Si tiene un servicio activo en ese puerto, podr�a redirigir
las conexiones telnet, hacer un registro de lo que pasa, o cualquier
cosa que se ajuste a sus necesidades.
Un ejemplo m�s interesante es redirigir todo el tr�fico http a trav�s
de un almac�n cach� local. Sin embargo, el protocolo usado por los
servidores proxy es diferente al http nativo: mientras que un cliente
conecta a www.servidor.com:80 y pregunta por /camino/p�gina, cuando
conecta a la cach� local busca proxy.dominio.local:8080 y pregunta por
www.servidor.com/camino/p�gina.
Para filtrar una petici�n http a trav�s del proxy local, necesitar�
adaptar el protocolo insertando un peque�o servidor llamado transproxy
(lo puede encontrar en la web). Si quiere puede ejecutarlo en el
puerto 8081, y ejecutar esta orden:
root# ipfwadm -I -a accept -D 0/0 80 -r 8081
Entonces, el programa transproxy recibir� todas las conexiones que
tengan que alcanzar servidores externos y las pasar� al proxy local
arreglando las diferencias de protocolo.
6.11. IPv6
�Justo ahora que cre�a que empezaba a entender las redes IP las reglas
cambian! IPv6 es la notaci�n abreviada de la versi�n 6 del Internet
Protocol. IPv6 fue desarrollada principalmente para responder a los
temores de la comunidad de Internet al respecto de que pronto habr�
escasez de direcciones IP para asignar. Las direcciones IPv6 son de 16
bytes (128 bits). IPv6 incorpora varios cambios m�s, en su mayor parte
simplificaciones, que har�n que las redes IPv6 sean m�s manejables que
las IPv4.
Linux ya tiene una implementaci�n de IPv6 que funciona, pero no est�
completa, a partir de la serie de n�cleos 2.2.*.
Si quiere experimentar con esta pr�xima generaci�n de tecnolog�a de
Internet, o le hace falta, deber�a leerse la IPv6-FAQ que est�
disponible en
http://www.terra.net/ipv6.
6.12. Mobile IP
El t�rmino movilidad de IP describe la habilidad de una m�quina que es
capaz de mover su conexi�n de red de un punto de Internet a otro sin
cambiar su direcci�n IP o perder conectividad. Normalmente cuando una
m�quina con IP cambia su punto de conexi�n tambi�n debe cambiar su
direcci�n IP. La Movilidad de IP soluciona este problema asignando una
IP fija a la m�quina m�vil y usando encapsulaci�n IP (tunneling) con
encaminado autom�tico para asegurar que los datagramas destinados a
ella se encaminan a la verdadera direcci�n IP que est� usando en ese
momento.
Est� en camino un proyecto para proporcionar un juego completo de
herramientas de movilidad de IP para Linux. El estado del proyecto y
las herramientas los puede obtener de la p�gina principal de Linux
Mobile IP
http://anchor.cs.binghamton.edu/~mobileip.
6.13. Multicast
IP Multicast permite encaminar datagramas IP hacia a un n�mero
arbitrario de m�quinas con IP de forma simult�nea. Este mecanismo se
explota para proporcionar material de amplia distribuci�n por Internet
como transmisiones de imagen y sonido y otras aplicaciones noveles.
Opciones de Compilaci�n del N�cleo:
Networking options --->
[*] TCP/IP networking
....
[*] IP: multicasting
Esto requiere un conjunto de herramientas y algo de configuraci�n de
la red. Una fuente de informaci�n sobre c�mo instalar y configurar
esto para Linux la encontramos en
http://www.teksouth.com/linux/multicast.
6.14. red) NAT - Network Address Translation (Traducci�n de direc�
ciones de
El servicio de Traducci�n de Direcciones de Redes IP es algo as� como
el hermano mayor estandarizado del servicio de Enmascarado IP de
Linux. Est� especificado con cierto detalle en el RFC-1631 en su
archivo RFC m�s pr�ximo. NAT proporciona caracter�sticas que no posee
el Enmascarado IP que lo hacen eminentemente m�s apropiado para su uso
en los dise�os de encaminamiento de cortafuegos corporativos y en
instalaciones a mayor escala.
Michael Hasenstein,
[email protected], ha
desarrollado una implementaci�n alfa de NAT para el n�cleo 2.0.29 de
Linux. La documentaci�n e implementaci�n de Michaels est� disponible
en: la p�gina Web de Linux IP Network Address
http://www.csn.tu-
chemnitz.de/HyperNews/get/linux-ip-nat.html
Los n�cleos m�s modernos de Linux 2.2.x tambi�n incluyen algo de la
funcionalidad NAT en el algoritmo de encaminamiento.
6.15. Traffic Shaper (Manipulaci�n del ancho de banda)
El traffic shaper (regulador de caudal) es un controlador que crea
nuevas interfaces de red, las cuales tienen una limitaci�n en el
caudal, definida por el usuario, y que act�an sobre una interfaz de
red f�sica para hacer la comunicaci�n real, pudiendo ser utilizadas
por el encaminador para el tr�fico saliente.
El regulador fue introducido con Linux-2.1.15 y fue portado a
Linux-2.0.36 (apareci� en el 2.0.36-pre-patch-2 distribuido por Alan
Cox, el autor del dispositivo regulador y mantenedor de Linux-2.0).
El regulador de caudal s�lo puede ser compilado como m�dulo y para
configurarlo se usa el programa shapecfg con �rdenes como las
siguientes:
shapecfg attach shaper0 eth1
shapecfg speed shaper0 64000
El dispositivo regulador s�lo puede controlar el ancho de banda del
tr�fico de salida, ya que los paquetes son transmitidos a trav�s suyo
de acuerdo con las tablas de rutas; sin embargo, una funcionalidad de
rutas por direcci�n de origen podr�a ayudar a limitar el ancho de
banda global de m�quinas espec�ficas que est�n usando un encaminador
Linux.
Linux-2.2 implementa tambi�n ese tipo de encaminamiento, y si lo
necesita en Linux-2.0, busque el parche de Mike McLagan, en
ftp://ftp.invlogic.com. Lea Documentation/networking/shaper.txt si
desea m�s informaci�n al respecto del shaper.
Si quiere probar un intento de regulaci�n de caudal de paquetes
entrantes, use rshaper-1.01 (o m�s nuevo). Lo encontrar� en
ftp://ftp.systemy.it/pub/develop.
6.16. Encaminamiento con Linux-2.2
La �ltima versi�n de Linux, la 2.2, ofrece mucha flexibilidad en lo
que a pol�tica de encaminamiento se refiere. Desafortunadamente,
deber� esperar a la siguiente versi�n de este Como, o acudir a las
fuentes del n�cleo.
7. Uso de hardware com�n en los PC
7.1. RDSI
La Red Digital de Servicios Integrados (RDSI) es una serie de
est�ndares que especifican una red digital conmutada de prop�sito
general. Una llamada RDSI crea un servicio de datos as�ncrono punto a
punto hacia el destino. RDSI suele distribuirse con un enlace de gran
velocidad que se divide en varios canales discretos. Hay dos tipos de
canales diferentes, los Canales B que son los que realmente
transportan los datos del usuario y un s�lo canal llamado canal D que
se usa para enviar informaci�n de control a la RDSI para establecer
llamadas y otras funciones. En Australia, por ejemplo, RDSI se
distribuye con un enlace de 2Mbps que se divide en 30 canales
discretos B de 64kbps con un canal D de 64kbps. Se pueden usar
cualquier n�mero de canales en cualquier momento y en cualquier
combinaci�n. Usted podr�a, por ejemplo, establecer 30 llamadas
separadas a 30 destinos diferentes a 64kbps cada uno, o 15 llamadas a
15 destinos diferentes a 128kbps cada uno (dos canales por llamada), o
sencillamente un peque�o n�mero de llamadas y dejar el resto de los
canales sin usar. Se puede usar un canal tanto para llamadas entrantes
como salientes. La intenci�n original de la RDSI fue permitir a las
compa��as de telecomunicaciones proporcionar un s�lo servicio de datos
que pudiera transmitir tanto tel�fono (mediante voz digitalizada) como
servicios de datos a su casa o negocio sin que tuviera que hacer
ning�n cambio especial de configuraci�n.
Hay unas pocas maneras diferentes de conectar su ordenador a un
servicio RDSI. Una manera es usar un dispositivo llamado Adaptador
Terminal que se enchufa a la Unidad Terminadora de Red que su compa��a
local de telecomunicaciones tuvo que instalar al proporcionarle el
servicio RDSI y que presenta unas cuantas interfaces serie. Uno de
estos interfaces se usa para introducir instrucciones de
establecimiento de llamadas y la configuraci�n y los otros son los que
realmente se conectan a los dispositivos de red que usar�n los
circuitos de datos cuando se hayan establecido. Linux trabajar� con
este tipo de configuraci�n sin modificaci�n alguna, simplemente tiene
que tratar el puerto del Adaptador Terminal como tratar�a cualquier
otro dispositivo serie. Otra manera, que es para la que est� dise�ado
el soporte de RDSI del n�cleo permite instalar una tarjeta RDSI en su
m�quina Linux y dejar entonces que sea el propio Linux quien maneje
los protocolos y haga las llamadas.
Opciones de Compilaci�n del N�cleo:
ISDN subsystem --->
<*> ISDN support
[ ] Support synchronous PPP
[ ] Support audio via ISDN
< > ICN 2B and 4B support
< > PCBIT-D support
< > Teles/NICCY1016PC/Creatix support
La implementaci�n del n�cleo de Linux de la RDSI soporta varios tipos
diferentes de tarjetas RDSI. Son las que vienen listadas en las
opciones de configuraci�n del n�cleo.
� ICN 2B and 4B
� Octal PCBIT-D
� Tarjetas Teles ISDN y compatibles
Algunas de estas tarjetas requieren que se les carguen ciertos
programas antes de funcionar. Hay una utilidad aparte que hace esto.
Hay disponibles m�s detalles de c�mo configurar el soporte RDSI de
Linux en el directorio /usr/src/linux/Documentation/isdn/ y tambi�n un
listado PUF (Pregutas de Uso Frecuente) dedicado a isdn4linux en
http://www.lrz-muenchen.de/~ui161ab/www/isdn. (Puede pulsar sobre la
bandera inglesa para la versi�n en ingl�s).
Una nota al respecto de PPP. El conjunto de protocolos PPP operar�
tanto sobre lineas serie s�ncronas como as�ncronas. El demonio PPP
(pppd) que se suele distribuir para Linux s�lo soporta el modo
as�ncrono. Si desea ejecutar los protocolos PPP sobre el servicio
RDSI, necesitar� una versi�n especial modificada. En la documentaci�n
anteriormente mencionada encontrar� detalles de c�mo encontrarlo.
En
http://www.insflug.org/documentos/RDSI-Como/ tiene a su disposici�n
un documento con detalles espec�ficos de la configuraci�n en Espa�a.
7.2. PLIP en Linux-2.0
Los nombres de los dispositivos PLIP son `plip0', `plip1' y `plip2'.
Opciones de Compilaci�n del N�cleo:
Network device support --->
<*> PLIP (parallel port) support
plip (Parallel Line IP), se parece a SLIP en que se usa para
proporcionar conexiones punto a punto entre dos m�quinas, excepto en
que est� dise�ado para usar los puertos paralelos de impresora de la
m�quina en lugar de los puertos serie (se incluye un diagrama de
cableado en la secci�n de diagramas de cableado m�s adelante). Como es
posible transmitir m�s de un bit a la vez con un puerto paralelo, es
posible obtener mayores velocidades con la interfaz plip que con los
dispositivos serie est�ndar. Adem�s, puede aprovecharse incluso el
m�s sencillo de los puertos paralelos, el puerto de impresora, en
lugar de tener que comprar una UART 16550AFN, comparativamente m�s
cara, para los puertos serie. PLIP usa mucha CPU si lo comparamos con
un enlace serie y casi seguro que no ser� una buena opci�n si puede
obtener algunas tarjetas Ethernet baratas, pero funcionar� cuando no
est� disponible nada m�s y adem�s lo har� bastante bien. Se puede
esperar una tasa de transferencia de alrededor de 20 kilobytes por
segundo cuando el enlace est� funcionando correctamente.
Los controladores de dispositivo de PLIP compiten con el controlador
de dispositivo paralelo por el hardware del puerto paralelo. Si desea
usar ambos controladores deber� compilar los dos como m�dulos para
asegurarse de que es capaz de elegir qu� puerto quiere que use PLIP y
qu� puertos usar� como dispositivos para la impresora. Lea el Modules
mini-Howto para obtener m�s informaci�n sobre la configuraci�n de los
m�dulos en el n�cleo.
Por favor tenga en cuenta que algunos port�tiles usan circuiter�a que
no funcionar� con PLIP porque no permiten algunas combinaciones de
se�ales en las que se basa PLIP, que las impresoras no usan.
El interfaz plip de Linux es compatible con el Crynwyr Packet Driver
PLIP y esto significa que puede conectar su m�quina Linux a una
m�quina DOS que est� ejecutando cualquier clase de programas tcp/ip
mediante plip.
En la serie de n�cleos 2.0.* los dispositivos PLIP est�n asignados a
puertos e IRQ como sigue
dispositivo i/o IRQ
----------- ----- ---
plip0 0x3bc 5
plip1 0x378 7
plip2 0x278 2
Si sus puertos paralelos no se ajustan a alguna de las combinaciones
de encima entonces tendr� que cambiar la IRQ de un puerto usando el
par�metro irq de la orden ifconfig. Aseg�rese de que activa las IRQ de
los puertos de impresora en la ROM BIOS antes, si es que dispone de
esa opci�n. Como alternativa, puede especificar las opciones io= e
irq= como argumentos a insmod, si usa m�dulos. Por ejemplo:
root# insmod plip.o io=0x288 irq=5
La operaci�n PLIP se controla con dos retardos, cuyos valores por
defecto suelen ser correctos. Posiblemente necesite incrementarlos si
tiene una m�quina un tanto lenta, en cuyo caso los temporizadores a
incrementar est�n en la otra m�quina. Hay un programa llamado
plipconfig que permite cambiar la configuraci�n de los temporizadores
sin recompilar el n�cleo. Viene con muchas distribuciones Linux.
Para configurar una interfaz plip, necesitar� invocar las siguientes
�rdenes (o a�adirlas a su gui�n de iniciaci�n del sistema):
root# /sbin/ifconfig plip1 pliplocal pointopoint plipremota
root# /sbin/route add plipremota plip1
Aqu�, el puerto usado es el que est� en la direcci�n E/S 0x378;
pliplocal y plipremota son los nombres o direcciones IP usadas para
los extremos del cable PLIP. Personalmente, prefiero tenerlas en mi
base de datos /etc/hosts:
# entradas plip
192.168.3.1 pliplocal
192.168.3.2 plipremota
El par�metro pointopoint tiene el mismo significado que para SLIP, en
el que especifica la direcci�n de la m�quina en el otro extremo del
enlace.
En casi todos los aspectos, se puede tratar una interfaz plip como si
fuese una interfaz SLIP, excepto que no se puede (ni se necesita) usar
dip ni slattach.
Para obtener m�s informaci�n al respecto de PLIP, acuda al PLIP mini-
Howto.
7.3. PLIP en Linux-2.2
Durante el desarrollo de las versiones 2.1 del n�cleo, se cambi� la
implementaci�n del puerto paralelo, hacia una configuraci�n mejor.
Opciones de compilaci�n del n�cleo:
General setup --->
[*] Parallel port support
Network device support --->
<*> PLIP (parallel port) support
El nuevo c�digo de PLIP se comporta como el anterior (se usan las
mismas �rdenes ifconfig y route que en la secci�n anterior, pero la
iniciaci�n del dispositivo es diferente debido a la avanzada
implementaci�n del manejo del puerto paralelo).
El �primer� dispositivo PLIP siempre es denominado plip0, siendo �ste
el que primero detecta el sistema, de manera similar a lo que ocurre
con los dispositivos Ethernet. El verdadero puerto paralelo que se va
a usar es uno de los que est�n disponibles, tal como se muestra en
/proc/parport. Por ejemplo, si s�lo tiene un puerto paralelo, s�lo
tendr� un directorio llamado /proc/parport/0.
Si el n�cleo no detecta la IRQ usada por el puerto, insmod plip
fallar�; en este caso simplemente tendr� que escribir el n�mero
correcto en /proc/parport/0/irq y reinvocar insmod.
Hay disponible informaci�n completa al respecto del puerto paralelo en
el archivo Documentation/parport.txt, parte de las fuentes de su
n�cleo.
7.4. PPP
Los nombres de los dispositivos PPP son ppp0, ppp1, etc. Los
dispositivos est�n numerados de forma secuencial de manera que el
primer dispositivo configurado recibe el 0.
Opciones de compilaci�n del N�cleo:
Networking options --->
<*> PPP (point-to-point) support
La configuraci�n del PPP est� cubierta en detalle en el PPP-Como,
http://www.insflug.org/documentos/PPP-Como/.
7.4.1. Mantener una conexi�n permanente a la red usando pppd .
Si es tan afortunado como para tener una conexi�n semi-permanente a la
red y quiere hacer que su m�quina establezca autom�ticamente la
conexi�n PPP si se pierde, existe un truco sencillo para hacerlo.
Configure el PPP de tal manera que pueda ser iniciado por el usuario
root ejecutando la orden:
# pppd
Aseg�rese de que tiene configurada la opci�n -detach en el fichero
/etc/ppp/options. Entonces, inserte la siguiente l�nea en el fichero
/etc/inittab, bajo las definiciones de getty.
pd:23:respawn:/usr/sbin/pppd
Esto har� que el programa init ejecute y monitorice el programa pppd y
que lo reinicie autom�ticamente si muere.
7.5. Cliente SLIP
Los nombres de los dispositivos SLIP son sl0, sl1, etc. siendo
asignado el 0 al primer dispositivo configurado y el resto
incrementando secuencialmente seg�n van siendo configurados.
Opciones de compilaci�n del n�cleo:
Network device support --->
[*] Network device support
<*> SLIP (serial line) support
[ ] CSLIP compressed headers
[ ] Keepalive and linefill
[ ] Six bit SLIP encapsulation
El SLIP (Serial Line Internet Protocol) le permite usar tcp/ip sobre
una l�nea serie, sea una l�nea de tel�fono con un m�dem, o una l�nea
dedicada. Por supuesto para usar SLIP necesitar� tener acceso a un
servidor SLIP de alg�n tipo. Muchas universidades y empresas de todo
el mundo proporcionan acceso mediante SLIP.
Slip usa los puertos serie de su m�quina para transportar datagramas
IP. Para hacerlo debe tomar el control del dispositivo serie. Los
dispositivos SLIP se denominan sl0, sl1, etc. �C�mo se corresponden a
sus dispositivos serie? El c�digo de red usa lo que denominados una
llamada ioctl (i/o control - control de e/s) para convertir los
dispositivos serie en dispositivos SLIP. Se le proporcionan dos
programas que pueden hacer esto, y se llaman dip y slattach.
7.5.1. dip
dip (Dialup IP) es un sofisticado programa capaz de programar la
velocidad del dispositivo serie, ordenar a su m�dem que llame al otro
extremo del enlace, identificarle autom�ticamente en el servidor
remoto, examinar los mensajes que le env�a el servidor y obtener
informaci�n tal como su direcci�n IP y ejecutar las ioctl necesarias
para conmutar su puerto serie al modo SLIP. dip tiene una gran
capacidad para ejecutar guiones (scripts) y esto lo puede explotar
para automatizar el procedimiento de autenticaci�n.
Puede encontrarlo en:
ftp://metalab.unc.edu/pub/Linux/system/Network/serial/dip/dip337o-
uri.tgz.
Para instalarlo, intente lo siguiente:
usuario% cd /usr/src
usuario% gzip -dc dip337o-uri.tgz | tar xvf -
usuario% cd dip-3.3.7o
root# make install
El Makefile asume la existencia de un grupo denominado uucp, pero
puede que usted quiera cambiarlo a dip o SLIP dependiendo de su
configuraci�n.
7.5.2. slattach
slattach es un programa muy sencillo comparado con dip, muy f�cil de
usar, pero no tiene la sofisticaci�n de dip. No tiene capacidad para
ejecutar guiones, todo lo que hace es configurar su dispositivo serie
como dispositivo SLIP. Asume que tiene toda la informaci�n que
necesita y la l�nea serie se establece antes de que lo invoque.
slattach es ideal para usarlo donde necesite una conexi�n permanente
al servidor, como un cable f�sico o una l�nea dedicada.
7.5.3. �Cu�ndo usar cada uno?
Deber�a usar dip cuando su enlace a la m�quina servidora de SLIP es un
m�dem, o alg�n otro enlace temporal. Deber�a usar slattach cuando
disponga de una l�nea dedicada, quiz� un cable, entre su m�quina y el
servidor, y no se necesita ejecutar ninguna acci�n especial para hacer
que el enlace funcione. Mire la secci�n ``Conexi�n Permanente con
Slip'' para m�s informaci�n.
configurar SLIP se parece mucho a configurar una interfaz Ethernet
(lea la secci�n ``Configuraci�n de un dispositivo Ethernet'' m�s
atr�s). Sin embargo, hay unas pocas diferencias clave.
Antes que nada, los enlaces SLIP son diferentes a las redes Ethernet
en que s�lo hay dos m�quinas en la red, una en cada extremo del
enlace. Al contrario que con Ethernet que est� disponible para su uso
nada m�s que termine de cablear, con SLIP, dependiendo del tipo de
enlace que tenga, puede que tenga que iniciar la conexi�n de red de
alguna manera especial.
Si est� usando dip entonces esto no deber�a hacerlo en el momento de
arrancar, sino algo m�s adelante, cuando est� preparado para usar el
enlace. Es posible automatizar este procedimiento. Si est� usando
slattach entonces probablemente quieras a�adir una secci�n a su
fichero rc.* correspondiente. Esto lo describiremos pronto.
Hay dos tipos principales e servidores SLIP: servidores de direcciones
IP din�micas y servidores de direcciones IP est�ticas. Casi cualquier
servidor SLIP le pedir� al conectar una identificaci�n y una
contrase�a. dip puede proporcionar estos datos autom�ticamente.
7.5.4. Servidor SLIP est�tico con l�nea por llamada y DIP.
Un servidor est�tico de SLIP es aqu�l en el que se le ha dado una
direcci�n IP que es exclusivamente suya. Cada vez que conecte al
servidor, tendr� que configurar su puerto SLIP con esa direcci�n. El
servidor est�tico de SLIP contestar� a la llamada del m�dem,
posiblemente le pregunte su nombre de usuario y contrase�a, y entonces
encaminar� cualquier datagrama destinado a su direcci�n mediante esa
conexi�n. Si tiene un servidor est�tico, entonces puede que quiera
a�adir una entrada con su direcci�n IP y el nombre de su m�quina (ya
que sabe cuales ser�n) en /etc/hosts. Tambi�n deber�a configurar
algunos otros ficheros como: rc.*, host.conf, resolv.conf,
/etc/HOSTNAME y rc.local. Recuerde que cuando configure rc.*, no
necesita a�adir ninguna orden especial para la conexi�n SLIP ya que es
dip el que hace todo el trabajo duro al configurar la interfaz.
Necesitar� proporcionarle a dip la informaci�n apropiada de manera que
configure la interfaz por usted despu�s de ordenarle al m�dem que
establezca la llamada y de darle de alta en el servidor SLIP.
Si esta es la manera de trabajar de su servidor SLIP entonces puede
pasar a la secci�n ``Uso de Dip'' para aprender a configurar dip de
forma apropiada.
7.5.5. Servidor SLIP din�mico con l�nea por llamada y DIP.
Un servidor din�mico de SLIP es aqu�l que le asigna una direcci�n IP
al azar, a partir de una reserva de direcciones, cada vez que se
registra. Eso significa que no hay garant�as de que tenga una
direcci�n en particular cada vez, y esa direcci�n puede ser usada por
otra persona despu�s de que usted haya desconectado. El administrador
de red que configur� el servidor SLIP habr� asignado un rango de
direcciones para que el servidor SLIP las use, cuando el servidor
recibe una nueva llamada entrante, localiza la primera direcci�n sin
asignar, gu�a a quien llama a trav�s del procedimiento de registro y
entonces imprime un mensaje de bienvenida que contiene la direcci�n IP
que se le ha asignado, para entonces proceder a usar esa direcci�n IP
durante toda la llamada.
La configuraci�n para este tipo de servidor es similar a la
configuraci�n para un servidor est�tico, excepto en que debe a�adir un
paso en el que obtiene la direcci�n IP que el servidor le ha asignado
y configura su dispositivo SLIP con ella.
De nuevo, dip hace el trabajo duro y las nuevas versiones son
suficientemente sofisticadas no s�lo como para registrarle, sino
tambi�n como para leer autom�ticamente la direcci�n IP impresa en el
mensaje de bienvenida y almacenarla de manera que pueda configurar el
dispositivo SLIP con ella.
Si esta es la manera de trabajar de su servidor SLIP, entonces puede
pasar a la secci�n ``Uso de Dip'' para aprender a configurar dip de
forma apropiada.
7.5.6. Uso de Dip.
Como se explic� anteriormente, dip es un programa potente que puede
simplificar y automatizar el proceso de llamada a el servidor SLIP,
registro, inicio de la conexi�n y configuraci�n de tus dispositivos
SLIP con las �rdenes ifconfig y route apropiadas.
Esencialmente, para usar dip escribiremos un �gui�n dip�, que es
b�sicamente una lista de �rdenes que dip comprende y que le dicen c�mo
debe realizar cada una de las acciones que usted quiere que haga.
Eche un vistazo al fichero sample.dip que viene con dip para hacerse
una idea de c�mo funciona. dip es un programa bastante potente, con
muchas opciones. No las va a encontrar todas aqu�, y tendr� que mirar
la correspondiente p�gina man, el README y los ficheros de ejemplo que
vendr�n con su versi�n de dip.
F�jese en que el gui�n sample.dip asume que est� accediendo a un
servidor SLIP est�tico, por lo que su IP ya se conoce de antemano. Las
nuevas versiones de dip incluyen, para los servidores SLIP din�micos,
una orden que puede usarse para leer y configurar autom�ticamente el
dispositivo SLIP con la direcci�n IP que el servidor din�mico le
asigna. El ejemplo siguiente es una versi�n modificada y traducida del
sample.dip que viene con dip337j-uri.tgz y probablemente sea un buen
punto de partida. Puede que quiera grabarlo como /etc/guiondip y
editarlo para que se ajuste a su configuraci�n.
#
# sample.dip Programa de soporte de conexi�n para Dialup IP
#
# Este fichero (deber�a mostrar) muestra el uso de DIP
# Este fichero deber�a funcionar para los servidores din�micos
# de tipo Annex, si usted usa un servidor est�tico entonces utilice
# el fichero sample.dip que viene en el paquete dip337-uri.tgz
#
#
# Versi�n: @(#)sample.dip 1.40 20/07/93
#
# Autor: Fred N. van Kempen, <
[email protected]>
#
main:
# Lo siguiente es configurar el nombre y direcci�n del otro extremo
# La m�quina a la que llamo se llama 'xs4all.hacktic.nl'
# (== 193.78.33.42)
get $remote xs4all.hacktic.nl
# Asignar 255.255.255.0 como m�scara de red de sl0
netmask 255.255.255.0
# Asignar el puerto serie y velocidad deseados
port cua02
speed 38400
# Reiniciar el m�dem y la l�nea terminal
# �Esto parece darle problemas a algunas personas!
reset
# �Nota! Valores "est�ndar" predefinidos de "errlevel"
# 0 - OK
# 1 - CONNECT
# 2 - ERROR
#
# Puede cambiarlos buscando "addchat()" en *.c...
# Nos preparamos para llamar.
send ATQ0V1E1X4\r
wait OK 2
if $errlvl != 0 goto problema_con_modem
dial 555-1234567
if $errlvl != 1 goto problema_con_modem
# Estamos conectados. Registrarse en el sistema.
login:
sleep 2
wait ogin: 20
if $errlvl != 0 goto problema_al_registrarse
send MILOGIN\n
wait ord: 20
if $errlvl != 0 goto clave_erronea
send MIPASSWD\n
loggedin:
# Ahora estamos registrados.
wait SOMEPROMPT 30
if $errlvl != 0 goto error_de_prompt
# Ordenamos al servidor que entre en modo SLIP
send SLIP\n
wait SLIP 30
if $errlvl != 0 goto error_de_prompt
# Obtenemos nuestra direcci�n IP del servidor y la asignamos
# Aqu� asumiremos que tras ordenar al servidor SLIP que entre
# en modo SLIP, nos imprime nuestra direcci�n IP.
get $local remote 30
if $errlvl != 0 goto prompt_error
# Configurar los par�metros operativos de SLIP
get $mtu 296
# Aseguramos que se ejecuta "route add -net default xs4all.hacktic.nl"
default
# �Decimos hola y arrancamos!
done:
print CONNECTED $local ---> $rmtip
mode CSLIP
goto salir
error_de_prompt:
print Se produjo un TIME-OUT esperando a que arrancara sliplogin
goto error
problema_al_registrarse:
print Hubo un problema esperando por el mensaje Login:...
goto error
clave_erronea:
print Hubo un problema esperando por el mensaje Password:...
goto error
problema_con_modem:
print Hubo un problema con el m�dem...
error:
print FALL� LA CONEXI�N a $remote
quit
salir:
exit
El ejemplo anterior asume que estamos llamando a un servidor SLIP
din�mico. Si est� llamando a un servidor SLIP est�tico, entonces
deber�a funcionarle el fichero sample.dip que viene con
dip-337-uri.tgz.
Cuando se le da a dip la orden get $local, busca en el texto que viene
del otro extremo una cadena que se parezca a una direcci�n IP, osea
una cadena de n�meros separados por caracteres �.�. Esta modificaci�n
se hizo espec�ficamente pensando en los servidores SLIP din�micos,
para que el proceso de leer la direcci�n IP pudiera ser automatizado.
El ejemplo anterior crear� autom�ticamente una ruta por defecto a
trav�s del enlace SLIP. Si no es lo que deseaba, a lo mejor porque
tiene una conexi�n Ethernet que deber�a ser la ruta por defecto,
entonces elimine la orden default del gui�n. Despu�s de que haya
acabado de ejecutarse el gui�n, si ejecuta la orden ifconfig, ver� que
hay un dispositivo sl0. Este es el dispositivo SLIP. Si fuese
necesario, podr�a modificar su configuraci�n a mano, despu�s de que la
orden dip haya acabado, usando las �rdenes ifconfig y route.
Por favor, observe que dip le permite elegir varios protocolos
diferentes en la orden mode. El ejemplo m�s com�n es cSLIP que es SLIP
con compresi�n. Por favor, tenga en cuenta que ambos extremos del
enlace deben concordar, por lo que debe asegurarse de que elija lo que
elija, sea la mismo que lo que tenga el servidor.
El ejemplo anterior es bastante robusto y deber�a copar con la mayor�a
de los errores. Para obtener m�s informaci�n, haga el favor de
dirigirse a las p�ginas man de dip. Naturalmente podr�a, por ejemplo,
codificar un gui�n para que haga cosas como llamar de nuevo al
servidor si no consigue conectarse tras un periodo de tiempo
determinado, o incluso hacer intentos con varios servidores si tiene
acceso a m�s de uno.
7.5.7. Conexi�n SLIP permanente usando una l�nea dedicada y slattach
Si lo que tiene es un cable entre dos m�quinas, o es tan afortunado
como para tener una l�nea dedicada, o alg�n otro tipo de conexi�n en
serie permanente entre su m�quina y otra, entonces no necesita la
complejidad de usar dip para establecer un enlace serie. slattach es
una utilidad muy sencilla de usar, que le permite suficiente
funcionalidad como para configurar una conexi�n.
Como la conexi�n ser� permanente, querr� a�adir algunas �rdenes al
fichero rc pertinente. En esencia, todo lo que necesita hacer para
tener una conexi�n permanente es asegurarse de que configura el
dispositivo serie a la velocidad correcta y que lo pasa a modo SLIP.
slattach permite hacer esto con una sola orden. A�ade lo siguiente al
fichero rc pertinente:
#
# Activar una conexi�n SLIP est�tica por l�nea dedicada
#
# configuramos /dev/cua0 para 19.2kbps y cslip
/sbin/slattach -p cslip -s 19200 /dev/cua0 &
/sbin/ifconfig sl0 IPA.IPA.IPA.IPA pointopoint IPR.IPR.IPR.IPR up
#
# Fin de SLIP est�tico
Nota del traductor: A fecha de la traducci�n, la serie estable del
n�cleo era la 2.2. En la serie 2.2, los dispositivos /dev/cuaX han
sido completamente eliminados, unific�ndolos a los /dev/ttySX.
Donde:
IPA.IPA.IPA.IPA
representa su direcci�n IP.
IPR.IPR.IPR.IPR
representa la direcci�n IP del extremo remoto.
slattach asigna el primer dispositivo SLIP sin asignar al dispositivo
serie especificado. slattach comienza por sl0. Por lo tanto la primera
orden slattach asocia el dispositivo SLIP sl0 al dispositivo serie
especificado y sl1 la siguiente vez, etc.
slattach le permite configurar varios protocolos diferentes con el
argumento -p. En su caso podr� usar tanto SLIP como cSLIP dependiendo
de si quiere o no usar compresi�n. Nota: ambos extremos deben estar de
acuerdo sobre si usar compresi�n o no.
7.6. Servidor SLIP.
Si tiene una m�quina, quiz� conectada a una red, a la que le gustar�a
que otra m�quina pudiese llamar y proporcionar servicios de red,
entonces necesita configurarla como servidor. Si quiere usar SLIP como
protocolo de l�nea serie, entonces tiene tres opciones para configurar
su m�quina Linux como servidor SLIP. Yo preferir�a usar la primera
presentada, sliplogin, ya que parece la m�s sencilla de configurar y
entender, pero presentar� un sumario de cada una, para que pueda tomar
su propia decisi�n.
7.6.1. Servidor slip usando sliplogin .
sliplogin es un programa, que puede asignar a los usuarios de SLIP en
lugar de un �shell� normal, que convierte una l�nea terminal en una
l�nea SLIP. Esto le permite configurar una m�quina Linux tanto como
servidor de direcciones est�ticas, obteniendo los usuarios la misma
direcci�n cada vez que llaman, o como servidor de direcciones
din�micas, donde los usuarios obtienen una direcci�n que no tiene que
ser necesariamente la misma que la �ltima vez que llamaron.
El que llama se registrar� igual que en un proceso est�ndar de login,
introduciendo su nombre de usuario y contrase�a, pero en lugar de
presentarle un int�rprete de �rdenes normal tras el registro, se
ejecuta sliplogin, el cual busca en su fichero de configuraci�n
(/etc/slip.hosts) una entrada con el nombre de usuario que corresponda
a la persona que llam�. Si lo encuentra, entonces configura la l�nea
como �clean� y de 8 bit, y hace una llamada ioctl para convertir la
disciplina de la l�nea a SLIP. Cuando se completa este proceso, toma
lugar la �ltima parte de la configuraci�n, en la cual sliplogin invoca
un gui�n de int�rprete de �rdenes que configura la interfaz SLIP con
la direcci�n ip y m�scara de red relevantes, y asigna las rutas
apropiadas. Este gui�n suele llamarse /etc/slip.login pero, de forma
parecida a getty, si ciertos usuarios requieren una iniciaci�n
especial, entonces puede crear guiones de configuraci�n llamados
/etc/slip.login.nombreusuario que ser�n ejecutados espec�ficamente
para ellos en lugar del que hay por defecto.
Tambi�n hay tres o cuatro ficheros que necesitar� configurar para
tener sliplogin en funcionamiento. Detallar� c�mo y d�nde obtener los
programas y c�mo se configura cada uno. Los ficheros son:
� /etc/passwd, para las cuentas de los usuarios que llaman.
� /etc/slip.hosts, para almacenar la informaci�n �nica a cada usuario
que llama.
� /etc/slip.login, que lleva la configuraci�n del encaminamiento que
necesite hacerse para el usuario.
� /etc/slip.tty, que ser� necesario s�lo si est� configurando el
servidor para asignar direcciones din�micas y contiene una tabla de
direcciones a asignar.
� /etc/slip.logout, que contiene las �rdenes necesarias para dejar
las cosas a punto una vez el usuario cuelgue o cierre la conexi�n.
7.6.1.1. D�nde obtener sliplogin
Puede que ya tenga el paquete sliplogin instalado como parte de su
distribuci�n; si no es as� entonces podr� obtenerlo de:
ftp://metalab.unc.edu/pub/linux/system/Network/serial/sliplogin-2.1.1.tar.gz.
El fichero tar contiene tanto las fuentes, como los programas ya
compilados y una p�gina man.
para asegurar que s�lo son capaces de ejecutar sliplogin los usuarios
autorizados, deber�a a�adir una entrada al fichero /etc/group similar
a la siguiente:
..
slip::13:radio,fred
..
Cuando instale el paquete sliplogin, el Makefile cambiar� el grupo al
que pertenece el programa sliplogin por slip, y esto significa que
s�lo los usuarios que pertenezcan a ese grupo ser�n capaces de
ejecutarlo. El ejemplo anterior autorizar� ejecutar sliplogin s�lo a
los usuarios radio y fred.
Para instalar los ejecutables en el directorio /sbin y la p�gina de
man en la secci�n 8, haga lo siguiente:
# cd /usr/src
# gzip -dc .../sliplogin-2.1.1.tar.gz | tar xvf -
# cd sliplogin-2.1.1
# <..edite el Makefile si no usa shadow password..>
# make install
Si quiere recompilar los ejecutables tras la instalaci�n, a�ada un
make clean antes de make install. Si quiere instalar los ejecutables
en cualquier otro lado, necesitar� editar la regla install en el
Makefile.
Por favor, lea los ficheros README que vienen con el paquete si quiere
obtener m�s informaci�n.
7.6.1.2. Configuraci�n de /etc/passwd para m�quinas que usan Slip.
Lo normal es que cree algunos login especiales en el fichero
/etc/passwd para la gente que llama con Slip. Una convenci�n
com�nmente aceptada es usar el nombre de la m�quina que llaman
prefij�ndole una letra �S� may�scula. Por tanto, por ejemplo, si la
m�quina que llama se denomina radio, entonces podr�as crear una
entrada en /etc/passwd que se pareciese a:
Sradio:FvKurok73:1427:1:radio SLIP login:/tmp:/sbin/sliplogin
Realmente no importa c�mo se llame la cuenta, siempre y cuando tenga
alg�n significado para usted.
Nota: el que llama no necesita ning�n directorio personal, ya que no
se le presentar� ning�n int�rprete de �rdenes, por tanto /tmp es una
buena elecci�n. Observe tambi�n que se usa sliplogin en lugar de un
int�rprete de �rdenes normal.
7.6.1.3. Configuraci�n de /etc/slip.hosts
El fichero /etc/slip.hosts es el fichero en el que sliplogin busca las
entradas que se correspondan al nombre de login que de las que obtiene
los detalles de configuraci�n para esa persona. Es aqu� donde se
especifica la direcci�n ip y la m�scara de red que se le asignar� al
que llama y que ser�n configuradas para su uso. Las entradas para dos
m�quinas, una con configuraci�n est�tica para radio y otra, con
configuraci�n din�mica, para la m�quina albert, deber�an parecerse a
lo siguiente:
#
Sradio 44.136.8.99 44.136.8.100 255.255.255.0 normal -1
Salbert 44.136.8.99 DYNAMIC 255.255.255.0 compressed 60
#
Las entradas del fichero /etc/slip.hosts son
1. el nombre de login del que llama.
2. la direcci�n ip de la m�quina servidor, osea esta m�quina.
3. la direcci�n IP que se asignar� al que llama. Si este campo se
rellena con DYNAMIC entonces se asignar� una direcci�n ip basada en
la informaci�n contenida en el fichero /etc/slip.tty del que se
habl� antes. Nota: deber� usar al menos la versi�n 1.3 de
sliplogin para que esto funcione.
4. la m�scara de red asignada a la m�quina que llama en notaci�n
decimal punteada, por ejemplo 255.255.255.0 para una m�scara de red
para una clase C.
5. las opciones del modo slip, que le permiten activar o desactivar la
compresi�n y otras caracter�sticas de slip. Los valores permitidos
aqu� son normal y compressed.
6. un par�metro de timeout que especifica cu�nto tiempo puede estar
ociosa la l�nea (sin recibir datagramas) antes de que se desconecte
la l�nea. Un valor negativo desactivar� esta caracter�stica.
7. argumentos opcionales.
Nota: Para los campos 2 y 3 puede usar tanto el nombre de la m�quina
como su direcci�n IP en notaci�n decimal. Si usted usa nombres
entonces tendr�n que ser resueltos, esto es, su m�quina deber� ser
capaz de localizar la direcci�n ip de esos nombres o en caso contrario
el gui�n fallar� cuando sea ejecutado. Puede probarlo intentando hacer
telnet hacia esos nombres, y si obtiene el mensaje Trying
nnn.nnn.nnn... entonces es que su m�quina ha sido capaz de encontrar
una direcci�n ip para ese nombre. Si obtiene el mensaje Unknown host,
entonces no lo consigui�. En este caso, use una direcci�n ip en
notaci�n decimal o ponga a punto la configuraci�n de su resolutor de
nombres. (Ver secci�n ``Resoluci�n de Nombres'').
Los modos slip m�s comunes son:
normal
para habilitar el SLIP normal sin compresi�n.
compressed
para habilitar la compresi�n de cabeceras de van Jacobsen
(cSLIP)
Por supuesto, son mutuamente exclusivos. Puede usar uno o el otro,
pero no ambos. Para obtener m�s informaci�n sobre las otras opciones
disponibles, ve a las p�ginas de man.
7.6.1.4. Configuraci�n del fichero /etc/slip.login .
Despu�s de que sliplogin haya examinado el /etc/slip.hosts y
encontrado una entrada que concuerde, intentar� ejecutar el fichero
/etc/slip.login para configurar la interfaz SLIP con su direcci�n ip y
su m�scara.
El fichero de ejemplo /etc/slip.login proporcionado con el paquete
sliplogin se parece a esto:
#!/bin/sh -
#
# @(#)slip.login 5.1 (Berkeley) 7/1/90
#
# fichero de login gen�rico para una l�nea SLIP. sliplogin
# lo invoca con los par�metros:
# $1 $2 $3 $4, $5, $6 ...
# unidadSLIP veloctty pid los argumentos de la entrada en slip.host
#
/sbin/ifconfig $1 $5 pointopoint $6 mtu 1500 -trailers up
/sbin/route add $6
arp -s $6 <hw_addr> pub
exit 0
#
Podr� comprobar que este gui�n se limita a usar las �rdenes ifconfig y
route para configurar el dispositivo SLIP con su direcci�n ip,
direcci�n ip remota y m�scara de red y crea una ruta hasta la
direcci�n remota a trav�s del dispositivo SLIP. Exactamente lo mismo
que har�a si estuviera usando la orden slattach.
Advierta tambi�n el uso de Proxy ARP para asegurar que otras m�quinas
en la misma Ethernet que la m�quina servidora sabr�n c�mo llegar a la
m�quina que llama. El campo <hw_addr> (direcci�n hardware) deber�a ser
la direcci�n hardware de la tarjeta Ethernet de la m�quina. Si su
m�quina servidora no est� en una red Ethernet, entonces puede eliminar
completamente esa l�nea.
7.6.1.5. Configuraci�n del fichero /etc/slip.logout .
Cuando la llamada se corta, querr� asegurarse de que se restaura el
estado normal del dispositivo serie para que otras personas sean
capaces m�s adelante de registrarse correctamente. Esto se lleva a
cabo mediante el uso del fichero /etc/slip.logout. Es de formato
bastante sencillo y se le llama con los mismos argumentos que al
fichero /etc/slip.login.
#!/bin/sh -
#
# slip.logout
#
/sbin/ifconfig $1 down
arp -d $6
exit 0
#
Todo lo que hace es desactivar (down) la interfaz, lo que borrar� la
ruta que se cre� anteriormente. Tambi�n usa la orden arp para borrar
cualquier proxy que se estableciese. De nuevo, no necesita la orden
arp en el gui�n si su m�quina servidora no tiene un puerto ethernet.
7.6.1.6. Configuraci�n del fichero /etc/slip.tty.
Si est� usando asignaci�n din�mica de direcciones ip (tiene
configurada cualquier m�quina con la palabra clave DYNAMIC en el
fichero /etc/slip.hosts, entonces deber� configurar el fichero
etc/slip.tty para que tenga una lista de las direcciones que se
asignar�n a qu� puerto. S�lo necesita este fichero si desea que su
servidor asigne de manera din�mica las direcciones a los usuarios.
El fichero es una tabla que lista los dispositivos tty que dar�n
soporte a las conexiones SLIP y las direcciones ip que deber�an
asignarse a los usuarios que llaman a ese puerto.
Su formato es como sigue:
# slip.tty tty -> correspondencias IP para SLIP din�mico
# formato: /dev/tty?? xxx.xxx.xxx.xxx
#
/dev/ttyS0 192.168.0.100
/dev/ttyS1 192.168.0.101
#
Lo que dice esta tabla es que a la gente que llame al puerto
/dev/ttyS0 y que tengan la palabra DYNAMIC en su campo de direcci�n
remota en el fichero /etc/slip.hosts les ser� asignada una direcci�n
de 192.168.0.100.
De esta manera s�lo necesita asignar una direcci�n por puerto para
todos los usuarios que no requieran una direcci�n dedicada para ellos.
Esto le ayuda a mantener bajo m�nimos los n�meros de direcci�n para
evitar su escasez.
7.6.2. Servidor Slip usando dip .
D�jeme empezar diciendo que parte de la informaci�n que sigue viene de
las p�ginas de manual de dip, donde se documenta brevemente la manera
de usar Linux como servidor SLIP. por favor, preste atenci�n, puesto
que lo siguiente est� basado en el paquete dip337o-uri.tgz y
probablemente no ses aplicable a otrs versiones de dip.
dip tiene un modo de operaci�n de entrada, en el cual asigna
autom�ticamente una entrada para el usuario que lo invoque y configura
la l�nea serie como enlace SLIP de acuerdo con la informaci�n que
encuentre en el fichero /etc/dipshosts. Este modo de operaci�n de
entrada se activa invocando a dip como diplogin. Es as� por tanto la
manera de usar dip como servidor SLIP, creando cuentas especiales
donde se usa diplogin como login shell.
Lo primero que necesita hacer es un enlace simb�lico como sigue:
# ln -sf /usr/sbin/dip /usr/sbin/diplogin
Despu�s necesitar� a�adir entradas tanto al fichero /etc/passwd como
al /etc/diphosts. Las entradas que necesita hacer tienen el formato
que sigue:
Para configurar Linux como servidor SLIP con dip, se necesita crear
algunas cuentas SLIP especiales para los usuarios, en las que se usa
dip (en modo entrada) como login shell. Se sugiere la convenci�n de
comenzar los nombres de las cuentas SLIP con una S may�scula, como por
ejemplo Sfredm.
Una entrada en /etc/passwd para un usuario SLIP se parece a:
Sfredm:ij/SMxiTlGVCo:1004:10:Fred:/tmp:/usr/sbin/diplogin
^^ ^^ ^^ ^^ ^^ ^^ ^^
| | | | | | \__ diplogin como login shell
| | | | | \_______ Directorio `home'
| | | | \____________ Nombre completo del usuario
| | | \_________________ ID de grupo del usuario
| | \_____________________ ID del usuario
| \_______________________________ Contrase�a cifrada
\__________________________________________ Nombre de Login del Usuario SLIP
Despu�s de que el usuario se registre, el programa login, si encuentra
y autentica al usuario, ejecutar� la orden diplogin. dip, cuando es
invocado como diplogin, sabe que debe asumir autom�ticamente que va a
ser usado como int�rprete de �rdenes de login. Cuando comienza como
diplogin, la primera cosa que hace es usar la funci�n getuid() para
tomar el userid de quien fuera que lo invoc�. Entonces busca en el
fichero /etc/diphosts la primera entrada que se corresponda bien con
el userid, bien con el dispositivo tty por el que entr� la llamada y
se configura apropiadamente. Por razones de sentido com�n, para que se
pueda dar a un usuario una entrada en el fichero diphosts, o bien para
que se le d� la configuraci�n por defecto, es posible montar el
servidor de tal manera que se pueda tener una mezcla de usuarios a los
que se asigne la direcci�n de forma est�tica o din�mica.
dip a�adir� autom�ticamente una entrada Proxy-ARP si se le invoca en
modo entrada, por lo que no tendr� que preocuparse de hacerlo
manualmente.
7.6.2.1. Configuraci�n del fichero /etc/diphosts
/etc/diphosts lo usa dip para buscar configuraciones ya establecidas
para m�quinas remotas. Estas m�quinas remotas pueden ser usuarios que
llaman a la m�quina Linux, o pueden ser m�quinas a las que usted
llamas desde su m�quina.
El formato general para /etc/diphosts es como sigue:
..
Suwalt::145.71.34.1:145.71.34.2:255.255.255.0:SLIP uwalt:CSLIP,1006
ttyS1::145.71.34.3:145.71.34.2:255.255.255.0:Dynamic ttyS1:CSLIP,296
..
Los campos son:
1. nombre de login: el que devuelve getpwuid(getuid()) o el nombre de
la tty.
2. sin uso: para compatibilidad con passwd
3. Direcci�n Remota: direcci�n IP de la m�quina que llama, puede ser
tanto la num�rica como el nombre.
4. Direcci�n Local: direcci�n IP de esta m�quina, en n�mero o por
nombre.
5. M�scara de red: en notaci�n decimal puntuada.
6. Campo de comentario: ponga aqu� lo que quiera.
7. protocolo: Slip, cSLIP, etc.
8. MTU: n�mero decimal.
Un ejemplo de entrada en /etc/net/diphosts para un usuario SLIP remoto
podr�a ser:
Sfredm::145.71.34.1:145.71.34.2:255.255.255.0:SLIP uwalt:SLIP,296
lo que especifica un enlace SLIP con direcci�n remota 145.71.34.1 y
MTU de 296, o:
Sfredm::145.71.34.1:145.71.34.2:255.255.255.0:SLIP uwalt:CSLIP,1006
que especifica un enlace capaz de usar cSLIP con direcci�n remota
145.71.34.1 y MTU de 1006.
Por tanto, todos los usuarios que desee que tengan asignado un acceso
de llamada con IP est�tica deber�an tener una entrada en
/etc/diphosts. Si quiere que los usuarios que llaman a un puerto en
particular y, que los detalles sean asignados din�micamente, deber�
tener entonces una entrada para el dispositivo tty y no una basada en
el usuario. Deber�a configurar al menos una entrada para cada
dispositivo tty que usen los usuarios para asegurar que hay disponible
para ellos una configuraci�n adecuada independientemente al m�dem al
que llamen.
Cuando un usuario se registra recibir� las preguntas normales sobre su
cuenta y contrase�a en las que deber�a introducir su userid o
contrase�a de SLIP-login. Si se verifican, entonces el usuario no ver�
mensajes especiales y s�lo tendr� que cambiar el modo SLIP en su
extremo. El usuario deber�a ser capaz de conectar y quedar configurado
con los par�metros relevantes del fichero diphosts.
7.6.3. Servidor SLIP usando el paquete dSLIP .
Matt Dillon,
[email protected] ha escrito un paquete que no
s�lo hace llamadas SLIP entrantes sino tambi�n llamadas salientes. El
paquete de Matt es una combinaci�n de peque�os programas y guiones que
coordinan las conexiones por usted. Necesitar� tener instalado tcsh ya
que al menos uno de los guiones lo necesita. Matt proporciona una
copia ejecutable de la utilidad expect ya que la necesita otro de los
guiones. Adem�s necesitar� tener algo de experiencia con expect para
hacer que este paquete funcione a su gusto, pero no deje que eso le
desanime.
Matt ha escrito unas instrucciones de instalaci�n muy buenas en el
fichero README, por lo que no pienso repetirlas.
Puede obtener el paquete dSLIP de su sitio de origen:
ftp://apollo.west.oic.com/pub/linux/dillon_src/dSLIP203.tgz
o desde:
ftp://metalab.unc.edu/pub/Linux/system/Network/serial/dSLIP203.tgz
L�ase el fichero README y cree las entradas en /etc/passwd y
/etc/group antes de hacer make install.
8. Otras tecnolog�as de red
Las siguientes subsecciones son espec�ficas a ciertas tecnolog�as de
red. La informaci�n que contienen no son v�lidas necesariamente para
cualquier otro tipo de tecnolog�a. Los conceptos est�n ordenados
alfab�ticamente.
8.1. ARCNet
Los nombres de dispositivo ARCNet son arc0e, arc1e, arc2e etc. o
arc0s, arc1s, arc2s etc. A la primera tarjeta detectada por el n�cleo
se le asigna arc0e o arc0s y el resto es asignado secuencialmente en
el orden en que se detecte. La letra del final identifica si ha
seleccionado el formato de paquete de encapsulaci�n Ethernet o el
formato de paquete especificado en el RFC 1051.
Opciones de Compilaci�n del N�cleo:
Network device support --->
[*] Network device support
<*> ARCnet support
[ ] Enable arc0e (ARCnet "Ether-Encap" packet format)
[ ] Enable arc0s (ARCnet RFC1051 packet format)
Una vez que haya compilado el n�cleo apropiadamente para admitir su
tarjeta Ethernet, la configuraci�n de la tarjeta es sencilla.
Normalmente se usa algo como:
# ifconfig arc0e 192.168.0.1 netmask 255.255.255.0 up
# route add -net 192.168.0.0 netmask 255.255.255.0 arc0e
Lea, por favor, los ficheros
/usr/src/linux/Documentation/networking/arcnet.txt y
/usr/src/linux/Documentation/networking/arcnet-hardware.txt si desea
obtener m�s informaci�n.
La implementaci�n de ARCNet fue desarrollada por Avery Pennarun,
[email protected].
8.2. Appletalk ( AF_APPLETALK )
La implementaci�n de Appletalk no utiliza nombres especiales para sus
dispositivos ya que usa otros ya existentes.
Opciones de Compilaci�n del N�cleo:
Networking options --->
<*> Appletalk DDP
Trabajar con Appletalk permite a una m�quina Linux interconectar con
redes Apple. Una utilidad importante que se saca de esto es poder
compartir recursos tales como impresoras y discos entre una m�quina
Linux y ordenadores Apple. Se necesita un programa adicional, que se
llama netatalk. Wesley Craig
[email protected] representa a un equipo
llamado el Research Systems Unix Group, de la Universidad de Michigan
y han creado el paquete netatalk, que proporciona programas que
implementan la pila del protocolo Appletalk y algunas utilidades. El
paquete netatalk viene en su distribuci�n de Linux, y si no, lo puede
encontrar en su servidor de origen, en la Universidad de Michigan
ftp://terminator.rs.itd.umich.edu/unix/netatalk/.
Para compilar e instalar el paquete haga algo como esto:
user% tar xvfz .../netatalk-1.4b2.tar.Z
user% make
root# make install
Puede que quiera editar el Makefile antes de ejecutar make.
Principalmente para cambiar la variable DESTDIR, que define el lugar
donde ser�n instalados los ficheros. El directorio por defecto
/usr/local/atalk suele ser una buena elecci�n.
8.2.1. Configuraci�n del software Appletalk.
La primera cosa que tiene que hacer para que todo funcione es
asegurarse de que est�n presentes las entradas apropiadas en el
fichero /etc/services. La entradas que necesita son:
rtmp 1/ddp # Routing Table Maintenance Protocol
nbp 2/ddp # Name Binding Protocol
echo 4/ddp # AppleTalk Echo Protocol
zip 6/ddp # Zone Information Protocol
El siguiente paso es crear los ficheros de configuraci�n de Appletalk
en el directorio /usr/local/atalk/etc (o donde haya instalado el
paquete).
El primer fichero a crear es el /usr/local/atalk/etc/atalkd.conf. En
principio, este fichero s�lo necesita una l�nea que da el nombre del
dispositivo a trav�s del cual se accede a la red donde est�n tus
m�quinas Apple.
eth0
El demonio Appletalk a�adir� m�s detalles despu�s de ejecutarse.
8.2.2. Exportaci�n de un sistema de ficheros Linux v�a Appletalk.
Existe la posibilidad de exportar sistemas de ficheros desde una
m�quina Linux a la red para que las m�quinas Apple en la red puedan
compartirlos.
Para hacerlo tiene que configurar el fichero
/usr/local/atalk/etc/AppleVolumes.system. Hay otro fichero de
configuraci�n llamado /usr/local/atalk/etc/AppleVolumes.default, que
tiene exactamente el mismo formato y describe qu� sistemas de archivos
recibir�n los usuarios que conecten con privilegios de invitado.
Puede encontrar todos los detalles de configuraci�n de estos ficheros
y qu� significa cada opci�n en la p�gina de manual del afpd.
Un ejemplo sencillo podr�a parecerse a esto:
/tmp Scratch
/home/ftp/pub "Espacio P�blico"
Que exportar�a su sistema de ficheros /tmp como el Volumen AppleShare
Scratch y el directorio p�blico de FTP como el Volumen AppleShare
Espacio P�blico. Los nombres de volumen no son obligatorios, el
demonio elegir� un nombre por defecto, pero no le va a morder si lo
especifica.
8.2.3. Compartir la impresora Linux a trav�s de Appletalk.
Puede compartir una impresora linux con m�quinas Apple de manera
bastante sencilla. Necesita ejecutar el programa papd que es el
Printer Access Protocol Daemon de Appletalk. Cuando ejecute este
programa, aceptar� peticiones de las m�quinas Apple y meter� la tarea
de impresi�n en la cola del demonio de la impresora local para ser
impreso. Debe editar el fichero /usr/local/atalk/etc/papd.conf para
configurar el demonio. La sintaxis de este fichero es la misma que la
del fichero /etc/printcap. El nombre que le d� a la definici�n se
registrado con el protocolo de nombres de Appletalk, NBP.
Un ejemplo de configuraci�n podr�a ser como �ste:
TricWriter:\
:pr=lp:op=cg:
Que pondr�a a disposici�n de la red Appletalk la impresora TricWriter
y todos los trabajos aceptados ser�an impresos en la impresora linux
lp (definida en el fichero /etc/printcap) usando lpd. La entrada op=cg
dice que el usuario de Linux cg es el operador de la impresora.
8.2.4. Ejecuci�n de AppleTalk.
Muy bien, ahora deber�a estar preparado para probar esta configuraci�n
b�sica. Hay un fichero rc.atalk proporcionado con el paquete netatalk
que deber�a funcionar bien, por lo que todo lo que tiene que hacer es:
root# /usr/local/atalk/etc/rc.atalk
y todo deber�a comenzar y ejecutarse bien. No deber�a ver mensajes de
error y el software enviar� mensajes a la consola indicando cada etapa
seg�n comienza.
8.2.5. Comprobaci�n de AppleTalk.
Para comprobar que el software est� funcionando adecuadamente, vaya a
una de las m�quinas Apple, abra el men� Apple, seleccione el Chooser,
pulse sobre AppleShare, y deber�a aparecer la m�quina Linux.
8.2.6. Problemas con AppleTalk.
� Puede que necesite ejecutar el software Appletalk antes de
configurar la red IP. Si tiene problemas ejecutando los programas
Appletalk, o si despu�s de ejecutarlo tiene problemas con la red
IP, entonces intente ejecutar los programas Appletalk antes de
ejecutar el fichero rc correspondiente.
� El afpd (Apple Filing Protocol Daemon) desordena mucho el disco
duro. Bajo el punto de montaje crea un par de directorios llamados
.AppleDesktop y Network Trash Folder. Adem�s, por cada directorio
al que acceda crear� un .AppleDouble bajo �l de manera que pueda
almacenar resource forks, etc. Por tanto, pi�nselo dos veces antes
de exportar /, o se pasar� un rato borrando despu�s.
� El programa afpd espera que las claves que vengan de los Mac est�n
sin cifrar. Esto podr�a ser un problema de seguridad; por tanto,
sea cuidadoso cuando ejecute este demonio en una m�quina conectada
a Internet, o sufrir� las consecuencias si alg�n indeseable decide
hacerle alguna maldad.
� Las herramientas de diagn�stico existentes como netstat e ifconfig
no soportan Appletalk. La informaci�n �en bruto� est� disponible en
el directorio /proc/net si tuviese necesidad de ella.
8.2.7. Si necesitase m�s informaci�n...
Eche un vistazo a la p�gina del Linux Netatalk-Howto de Anders
Brownworth si quiere una descripci�n m�s detallada de c�mo configurar
Appletalk para Linux en
http://thehamptons.com/anders/netatalk.
8.3. ATM
Werner Almesberger,
[email protected] est� dirigiendo
un proyecto para proporcionar una implementaci�n del Asynchronous
Transfer Mode en Linux. Puede obtener informaci�n actualizada sobre
el estado del proyecto en:
http://lrcwww.epfl.ch/linux-atm.
8.4. AX25 ( AF_AX25 )
Los nombres de los dispositivos AX.25 son sl0, sl1, etc. en los
n�cleos 2.0.* y ax0, ax1, etc. a partir de los n�cleos 2.1.*.
Opciones de Compilaci�n del N�cleo:
Networking options --->
[*] Amateur Radio AX.25 Level 2
Los protocolos AX25, Netrom y Rose est�n cubiertos por el AX25 Howto.
Estos protocolos son usados por los Operadores de Amateur Radio de
todo el mundo para experimentar con packet radio.
La mayor�a del trabajo de implementaci�n de estos protocolos lo ha
hecho Jonathon Naylor,
[email protected].
8.5. DECNet
Actualmente se est� trabajando en la implementaci�n de DECNet. Deber�a
aparecer en alg�n n�cleo 2.1.* tard�o.
8.6. FDDI
Los nombres de dispositivo FDDI son fddi0, fddi1, fddi2, etc. A la
primera tarjeta detectada por el n�cleo se le asigna fddi0 y al resto
se le asigna secuencialmente en el orden en que son detectadas.
Lawrence V. Stefani,
[email protected], ha desarrollado
un controlador para las tarjetas FDDI EISA y PCI de Digital Equipment
Corporation.
Opciones de Compilaci�n del N�cleo:
Network device support --->
[*] FDDI driver support
[*] Digital DEFEA and DEFPA adapter support
Cuando tenga el n�cleo compilado para trabajar con el controlador FDDI
e instalado, la configuraci�n de la interfaz FDDI es casi id�ntica al
de una interfaz Ethernet. Simplemente ha de especificar la interfaz
FDDI apropiada en las �rdenes ifconfig y route.
8.7. Retransmisi�n de Tramas ( Frame Relay )
Los nombres de dispositivo Frame Relay son dlci00, dlci01, etc para
los dispositivos de encapsulaci�n DLCI y sdla0, sdla1, etc para los
FRAD.
El Frame Relay (Retransmisi�n de tramas) es una tecnolog�a de red
dise�ada para ajustarse al tr�fico de comunicaci�n de datos que es de
naturaleza �explosiva� o intermitente. La conexi�n a una red Frame
Relay se realiza usando un Frame Relay Access Device (FRAD). El Linux
Frame Relay implementa IP sobre Frame Relay seg�n se describe en el
RFC-1490.
Opciones de Compilaci�n del N�cleo:
Network device support --->
<*> Frame relay DLCI support (EXPERIMENTAL)
(24) Max open DLCI
(8) Max DLCI per device
<*> SDLA (Sangoma S502/S508) support
Mike McLagan,
[email protected], desarroll� el soporte de Frame
Relay y las herramientas de configuraci�n.
Actualmente los �nicos FRAD soportados son los S502A, S502E y S508 de
Sangoma Technologies
http://www.sangoma.com Para configurar los
dispositivos FRAD y DLCI despu�s de haber recompilado el n�cleo
necesitar� las herramientas de configuraci�n Frame Relay. Est�n
disponibles en
ftp://ftp.invlogic.com/pub/linux/fr/frad-0.15.tgz.
Compilar e instalar las herramientas es algo muy sencillo, pero la
carencia de un fichero Makefile para todo lo convierte en un proceso
b�sicamente manual:
user% tar xvfz .../frad-0.15.tgz
user% cd frad-0.15
user% for i in common dlci frad; make -C $i clean; make -C $i; done
root# mkdir /etc/frad
root# install -m 644 -o root -g root bin/*.sfm /etc/frad
root# install -m 700 -o root -g root frad/fradcfg /sbin
root# install -m 700 -o root -g root dlci/dlcicfg /sbin
Tenga en cuenta que estas �rdenes usan sintaxis de sh. Si utiliza un
int�rprete de �rdenes tipo csh (como tcsh), el bucle for ser�
diferente.
Despu�s de instalar las herramientas necesitar� crear un fichero
/etc/frad/router.conf. Puede usar esta plantilla, que es una versi�n
modificada de uno de los ficheros de ejemplo:
# /etc/frad/router.conf
# Esta es una plantilla de configuraci�n para retransmisi�n de tramas.
# Se incluyen todas las etiquetas. Los valores por defecto est�n basados
# en el c�digo proporcionado con los controladores DOS para la tarjeta
# Sangoma S502A.
#
# Un '#' en cualquier parte de una l�nea constituye un comentario
# Los espacios en blanco son ignorados (puede indentar con tabuladores
# tambi�n)
# Las entradas [] y claves desconocidas son ignoradas
#
[Devices]
Count=1 # N�mero de dispositivos a configurar
Dev_1=sdla0 # el nombre del dispositivo
#Dev_2=sdla1 # el nombre del dispositivo
# Lo especificado aqu� es aplicado a todos los dispositivos y puede ser
# cambiado para cada tarjeta en particular.
#
Access=CPE
Clock=Internal
KBaud=64
Flags=TX
#
# MTU=1500 # M�xima longitud del IFrame, por defecto 4096
# T391=10 # valor T391 5 - 30, por defecto 10
# T392=15 # valor T392 5 - 30, por defecto 15
# N391=6 # valor N391 1 - 255, por defecto 6
# N392=3 # valor N392 1 - 10, por defecto 3
# N393=4 # valor N393 1 - 10, por defecto 4
# Lo especificado aqu� da los valores por defecto para todas las tarjetas
# CIRfwd=16 # CIR forward 1 - 64
# Bc_fwd=16 # Bc forward 1 - 512
# Be_fwd=0 # Be forward 0 - 511
# CIRbak=16 # CIR backward 1 - 64
# Bc_bak=16 # Bc backward 1 - 512
# Be_bak=0 # Be backward 0 - 511
#
#
# Configuraci�n espec�fica para el dispositivo
#
#
#
# El primer dispositivo es un Sangoma S502E
#
[sdla0]
Type=Sangoma # Tipo del dispositivo a configurar, actualmente
# s�lo se reconoce SANGOMA
#
# Estas claves son espec�ficas al tipo "Sangoma"
#
# El tipo de tarjeta Sangoma - S502A, S502E, S508
Board=S502E
#
# El nombre del firmware de prueba para la tarjeta Sangoma
# Testware=/usr/src/frad-0.10/bin/sdla_tst.502
#
# El nombre del firmware FR
# Firmware=/usr/src/frad-0.10/bin/frm_rel.502
#
Port=360 # Puerto de esta tarjeta
Mem=C8 # Direcci�n de la memoria, A0-EE, depende
IRQ=5 # N�mero de la IRQ, no especificar para la S502A
DLCIs=1 # N�mero de DLCI asociados al dispositivo
DLCI_1=16 # N�mero del DLCI n� 1, 16 - 991
# DLCI_2=17
# DLCI_3=18
# DLCI_4=19
# DLCI_5=20
#
# Lo especificado aqu� se aplica a este dispositivo nada m�s y
# prevalece sobre los valores por defecto
#
# Access=CPE # CPE o NODE, por defecto CPE
# Flags=TXIgnore,RXIgnore,BufferFrames,DropAborted,Stats,MCI,AutoDLCI
# Clock=Internal # External o Internal, por defecto Internal
# Baud=128 # Tasa en baudios del CSU/DSU asociado
# MTU=2048 # Longitud m�xima del IFrame, por defecto 4096
# T391=10 # valor T391 5 - 30, por defecto 10
# T392=15 # valor T392 5 - 30, por defecto 15
# N391=6 # valor N391 1 - 255, por defecto 6
# N392=3 # valor N392 1 - 10, por defecto 3
# N393=4 # valor N393 1 - 10, por defecto 4
#
# El segundo dispositivo es otra tarjeta
#
# [sdla1]
# Type=FancyCard # Type of the device to configure.
# Board= # Type of Sangoma board
# Key=Value # values specific to this type of device
#
# DLCI Default configuration parameters
# These may be overridden in the DLCI specific configurations
#
CIRfwd=64 # CIR forward 1 - 64
# Bc_fwd=16 # Bc forward 1 - 512
# Be_fwd=0 # Be forward 0 - 511
# CIRbak=16 # CIR backward 1 - 64
# Bc_bak=16 # Bc backward 1 - 512
# Be_bak=0 # Be backward 0 - 511
#
# DLCI Configuration
# These are all optional. The naming convention is
# [DLCI_D<devicenum>_<DLCI_Num>]
#
[DLCI_D1_16]
# IP=
# Net=
# Mask=
# Flags defined by Sangoma: TXIgnore,RXIgnore,BufferFrames
# DLCIFlags=TXIgnore,RXIgnore,BufferFrames
# CIRfwd=64
# Bc_fwd=512
# Be_fwd=0
# CIRbak=64
# Bc_bak=512
# Be_bak=0
[DLCI_D2_16]
# IP=
# Net=
# Mask=
# Flags defined by Sangoma: TXIgnore,RXIgnore,BufferFrames
# DLCIFlags=TXIgnore,RXIgnore,BufferFrames
# CIRfwd=16
# Bc_fwd=16
# Be_fwd=0
# CIRbak=16
# Bc_bak=16
# Be_bak=0
Cuando haya terminado el fichero /etc/frad/router.conf, el �nico paso
que queda es configurar el dispositivo en s�. Esto es s�lo un poco m�s
complejo que la configuraci�n de un dispositivo de red normal. Debe
recordar activar el dispositivo FRAD antes que los dispositivos de
encapsulaci�n DLCI. Es mejor que ponga estas �rdenes en un gui�n, ya
que son muchos:
#!/bin/sh
# Configurar los par�metros del frad y los DLCI
/sbin/fradcfg /etc/frad/router.conf || exit 1
/sbin/dlcicfg file /etc/frad/router.conf
#
# Activar el dispositivo FRAD
ifconfig sdla0 up
#
# Configurar los dispositivos de encapsulaci�n DLCI
ifconfig dlci00 192.168.10.1 pointopoint 192.168.10.2 up
route add -net 192.168.10.0 netmask 255.255.255.0 dlci00
#
ifconfig dlci01 192.168.11.1 pointopoint 192.168.11.2 up
route add -net 192.168.11.0 netmask 255.255.255.0 dlci00
#
route add default dev dlci00
#
8.8. IPX ( AF_IPX )
El protocolo IPX se usa com�nmente en entornos de redes de �rea local
Novell Netware(tm). Linux incluye una implementaci�n de este protocolo
y puede ser configurado para actuar como punto final en una red, o
como encaminador de IPX.
Opciones de Compilaci�n del N�cleo:
Networking options --->
[*] The IPX protocol
[ ] Full internal IPX network
Los protocolos IPX y el NCPFS est�n cubiertos en gran profundidad en
el IPX Howto.
8.9. NetRom ( AF_NETROM )
Los nombres de los dispositivos NetRom son nr0, nr1, etc.
Opciones de Compilaci�n del N�cleo:
Networking options --->
[*] Amateur Radio AX.25 Level 2
[*] Amateur Radio NET/ROM
Los protocolos AX25, Netrom y Rose est�n cubiertos en el AX25 Howto.
Estos protocolos los usan Operadores de Amateur Radio de todo el mundo
en la experimentaci�n de packet radio.
La mayor�a del trabajo de la implementaci�n de estos protocolos lo ha
Jonathon Naylor,
[email protected].
8.10. Protocolo Rose ( AF_ROSE )
Los nombres de los dispositivos Rose son rs0, rs1, etc, en los n�cleos
2.1.*. Rose est� disponible a partir de los n�cleos 2.1.*.
Opciones de Compilaci�n del N�cleo:
Networking options --->
[*] Amateur Radio AX.25 Level 2
<*> Amateur Radio X.25 PLP (Rose)
Los protocolos AX25, Netrom y Rose est�n cubiertos por el AX25 Howto.
Estos protocolos los usan Operadores de Amateur Radio de todo el mundo
en la experimentaci�n de packet radio.
La mayor�a del trabajo de la implementaci�n de estos protocolos lo ha
hecho Jonathon Naylor,
[email protected].
8.11. Soporte SAMBA - NetBEUI, NetBios.
SAMBA es una implementaci�n del protocolo Session Management Block.
Samba permite que los sistemas de Microsoft (y otros) monten y usen
sus discos e impresoras.
SAMBA y su configuraci�n vienen cubiertos en detalle en el
http://www.insflug.org/documentos/Samba-Como/.
8.12. Soporte de STRIP ( Starmode Radio IP )
Los nombres de los dispositivos STRIP son st0, st1, etc.
Opciones de Compilaci�n del N�cleo:
Network device support --->
[*] Network device support
....
[*] Radio network interfaces
< > STRIP (Metricom starmode radio IP)
STRIP es un protocolo dise�ado espec�ficamente para un rango de radio-
m�dems Metricon para un proyecto de investigaci�n conducido por la
Universidad de Stanford llamado MosquitoNet Project
http://mosquitonet.Stanford.EDU/mosquitonet.html. Es muy interesante
leerse esto, incluso si no est� interesado directamente en el
proyecto.
Las radios Metricon se conectan a un puerto serie, emplean tecnolog�a
de espectro amplio y suelen ser capaces de alcanzar los 100kbps. Hay
informaci�n disponible acerca de las radios Metricon en el servidor
Web de Metricon
http://www.metricom.com.
En estos momentos las herramientas y utilidades est�ndar de red no
implementan el controlador STRIP, por lo que deber� obtener algunas
herramientas preparadas desde el servidor WWW de MosquitoNet. Los
detalles sobre los programas que necesitar� est�n disponibles en la
p�gina de MosquitoNet sobre STRIP
http://mosquitonet.Stanford.EDU/strip.html.
En resumen de la configuraci�n, use un programa slattach modificado
para establecer STRIP como la disciplina de l�nea de un dispositivo
serie tty y entonces configurar el dispositivo st[0-9] resultante
igual que har�a con uno Ethernet con una excepci�n importante: por
razones t�cnicas, STRIP no soporta el protocolo ARP, por lo que deber�
configurar manualmente las entradas ARP de cada una de las m�quinas en
la subred. Esto no deber�a ser demasiado oneroso.
8.13. Anillo con testigo ( Token Ring )
Los nombres de los dispositivos de anillo con testigo son tr0, tr1,
etc. El anillo con testigo es un protocolo de red LAN est�ndar de IBM
que evita colisiones proporcionando un mecanismo que permite que s�lo
una de las estaciones en la red tenga en un momento determinado
derecho a transmitir. Una estaci�n mantiene un �testigo� (token)
durante un tiempo determinado y �sa es la �nica con permiso para
transmitir. Cuando ha transmitido los datos le pasa el testigo a la
siguiente estaci�n. El testigo traza un bucle entre todas las
estaciones activas, de ah� el nombre de �Anillo con Testigo�.
Opciones de Compilaci�n del N�cleo:
Network device support --->
[*] Network device support
....
[*] Token Ring driver support
< > IBM Tropic chipset based adaptor support
La configuraci�n de un anillo con testigo es id�ntica a la de una
Ethernet con la excepci�n del nombre de los dispositivos a configurar.
8.14. X.25
El X.25 es un protocolo de circuitos basados en conmutaci�n de
paquetes definido por el C.C.I.T.T. (una organizaci�n de est�ndares
reconocida por compa��as de Telecomunicaciones en la mayor parte del
mundo). En estos momentos est� en funcionamiento una implementaci�n de
X.25 y LAPB y los n�cleos 2.1.* m�s recientes incluyen el trabajo que
est� en progreso.
Jonathon Naylor
[email protected] est� liderando el desarrollo y se ha
establecido una lista de correo para discutir materias relativas al
X.25 en Linux. Para suscribirse, env�e un mensaje a:
[email protected] con el texto subscribe linux-x25 en el
cuerpo del mensaje.
Se pueden obtener las primeras versiones de las herramientas de
configuraci�n desde el sitio de FTP de Jonathon en
ftp://ftp.cs.nott.ac.uk/jsn.
8.15. Tarjeta WaveLan
Los nombres de los dispositivos Wavelan son eth0, eth1, etc.
Opciones de Compilaci�n del N�cleo:
Network device support --->
[*] Network device support
....
[*] Radio network interfaces
....
<*> WaveLAN support
La tarjeta WaveLAN es una tarjeta de red LAN inal�mbrica de amplio
espectro. La tarjeta se parece bastante en la pr�ctica a una tarjeta
Ethernet y se configura de la misma manera.
Puede obtener informaci�n acerca de la tarjeta Wavelan de Wavelan.com
http://www.wavelan.com.
9. Cables y Cableado
Aquellos de ustedes que se manejen con un soldador puede que quieran
construir sus propios cables para interconectar dos m�quinas Linux.
Los siguientes diagramas de cableado deber�an serles de ayuda.
9.1. Cable serie M�dem NULO (NULL Modem)
No todos los cables M�dem NULO son iguales. Muchos cables m�dem nulo
hacen poco m�s que un peque�o truco para que el ordenador crea que
est�n presentes todas las se�ales apropiadas, cruzando los cables de
transmisi�n y recepci�n. Esto vale, pero significa que deber� usar
programas de control de flujo software (XON/XOFF), que es menos
eficiente que el control de flujo hardware. El siguiente cable
proporciona la mejor se�alizaci�n posible entre las m�quinas y permite
usar control de flujo por hardware (RTS/CTS).
Nombre Patilla Patilla Patilla
Datos Tx 2 ----------------------------- 3
Datos Rx 3 ----------------------------- 2
RTS 4 ----------------------------- 5
CTS 5 ----------------------------- 4
Tierra 7 ----------------------------- 7
DTR 20 -\--------------------------- 8
DSR 6 -/
RLSD/DCD 8 ---------------------------/- 20
\- 6
9.2. Cable de puerto paralelo (cable PLIP)
Si pretende usar el protocolo PLIP entre dos m�quinas, entonces este
cable funcionar� independientemente del tipo de puertos paralelos que
tenga instalados.
Nombre Patilla Patilla Patilla
STROBE 1*
D0->ERROR 2 ----------- 15
D1->SLCT 3 ----------- 13
D2->PAPOUT 4 ----------- 12
D3->ACK 5 ----------- 10
D4->BUSY 6 ----------- 11
D5 7*
D6 8*
D7 9*
ACK->D3 10 ----------- 5
BUSY->D4 11 ----------- 6
PAPOUT->D2 12 ----------- 4
SLCT->D1 13 ----------- 3
FEED 14*
ERROR->D0 15 ----------- 2
INIT 16*
SLCTIN 17*
GROUND 25 ----------- 25
Notas:
� No conecte las patillas marcadas con un asterisco, *.
� Las tomas de tierra extra son 18,19,20,21,22,23 y 24.
� Si el cable que est� usando tiene apantallamiento met�lico, deber�a
estar conectado a la carcasa DB-25 en s�lo uno de los extremos.
Cuidado: Un cable PLIP mal hecho puede destruir la tarjeta
controladora. Sea muy cuidadoso y examine dos veces cada conexi�n para
asegurarse de que no va a hacer m�s trabajo ni a llevarse m�s infartos
de lo necesario.
Aunque puede que sea capaz de tener cables PLIP para grandes
distancias, deber�a evitarlo. Las especificaciones del cable permiten
una longitud de alrededor de 1 metro. Por favor, tenga mucho cuidado
cuando tienda cables PLIP largos, ya que las fuentes de campos
electromagn�ticos fuertes, como los rayos, cables de corriente y
emisoras de radio pueden interferir en los controladores, y a veces
da�arlos. Si realmente quiere conectar dos ordenadores a larga
distancia, deber�a intentar obtener un par de tarjetas Ethernet para
thin-net (red de cable fino) y tender cable coaxial.
9.3. Cableado Ethernet 10base2 (coaxial fino)
10base2 es un est�ndar de cableado Ethernet que especifica el uso de
cables coaxiales de 52 ohmios con un di�metro de alrededor de 5
mil�metros. Hay un par de reglas importantes a recordar cuando
conectemos m�quinas con cableado 10base2. La primera es que debe usar
terminadores en ambos extremos del cable. Un terminador es una
resistencia de 52 ohmios que ayuda a asegurar que la se�al es
absorbida y no reflejada cuando alcanza el final del cable. Sin un
terminador a cada extremo del cable, podr�a pasar que la Ethernet sea
ineficiente o que no funcione. Normalmente deber�a usar conectores en
�T� para interconectar las m�quinas por lo que terminar� con algo que
se parezca a:
|==========T=============T=============T==========T==========|
| | | |
| | | |
----- ----- ----- -----
| | | | | | | |
----- ----- ----- -----
Donde el | a cada extremo representa un terminador, el ======
representa cables coaxiales con conectores BNC a cada extremo y las T
representan conectores �en T�. Deber�a hacer que la longitud del cable
entre la T y el PC lo m�s corto posible ya que, idealmente, la �T�
deber�a estar directamente enchufada a la tarjeta Ethernet.
9.4. Cable Ethernet de Par Trenzado
Si tiene s�lo dos tarjetas Ethernet de par trenzado y desea
conectarlas, entonces no necesita un concentrador. Puede cablear las
dos tarjetas directamente una a otra. Hay un diagrama que muestra c�mo
hacerlo incluido en el Ethernet Howto
10. Glosario de T�rminos usados en este documento
La siguiente lista contiene algunos de los t�rminos m�s importantes
usados en este documento.
ARP
Es un acr�nimo para del Protocolo de Resoluci�n de Direcciones
(Address Resolution Protocol) y es la manera en que asocia una
m�quina de red una direcci�n IP con una direcci�n hardware.
ATM
Es un acr�nimo de Modo As�ncrono de Transferencia (Asynchronous
Transfer Mode). Una red ATM empaqueta los datos en bloques de
tama�o est�ndar que puede transportar eficientemente de un punto
a otro. ATM es una tecnolog�a de red basada en circuitos de
paquetes conmutados.
cliente
Suele ser la parte de un programa que se encuentra en el lado
del usuario. Hay ciertas excepciones, por ejemplo, en el sistema
de ventanas X11 es el servidor el que est� con el usuario, y el
cliente puede estar ejecut�ndose en una m�quina remota. El
cliente es el programa o terminal de un sistema que est�
recibiendo el servicio proporcionado por el servidor. En el caso
de sistema de igual a igual (peer to peer), como slip o ppp, se
dice que el cliente es el extremo que inicia la conexi�n y el
extremo remoto, que ha sido llamado, es el servidor.
datagrama
Un datagrama es un paquete discreto de datos y cabeceras que
contiene direcciones, que es la unidad b�sica de transmisi�n a
trav�s de una red IP. Puede que lo haya o�do llamar �paquete�.
Direcci�n hardware
Es un n�mero que identifica de forma un�voca una m�quina en una
red f�sica en la capa de acceso al medio. Algunos ejemplos son
las Direcciones Ethernet y las Direcciones AX.25.
Direcci�n IP
Es un n�mero que identifica un�vocamente una m�quina TCP/IP en
la red. La direcci�n es de 4 bytes de longitud y normalmente se
la representa en notaci�n decimal puntuada, donde cada byte es
representado en decimal con puntos �.� entre ellos.
DLCI
DLCI viene de Data Link Connection Identifier y se usa para
identificar una conexi�n virtual punto a punto en particular a
trav�s de una red de Retransmisi�n de Tramas. Los DLCI los suele
asignar el proveedor de red de Retransmisi�n de Tramas.
ISP
V�ase PSI.
MSS
El Tama�o M�ximo de Segmento (Maximum Segment Size) es la mayor
cantidad de datos que pueden ser transmitidos a la vez. Si
quiere prevenir la fragmentaci�n, el MSS deber�a ser igual al
MTU de la cabecera IP.
MTU
La M�xima Unidad de Transmisi�n (Maximum Transmission Unit) es
un par�metro que determina el mayor datagrama que puede ser
transmitido por una interfaz IP sin necesidad de dividirlo en
unidades m�s peque�as. La MTU deber�a ser m�s grande que el
mayor datagrama que desee transmitir sin fragmentar. F�jese que
esto s�lo previene la fragmentaci�n de manera local, algunos
otros enlaces por el camino pueden tener una MTU m�s peque�a y
el datagrama ser� fragmentado all�. Los valores normales son
1500 bytes para una interfaz Ethernet, o 576 bytes para una
interfaz SLIP.
PSI
Es un acr�nimo de Proveedor de Servicios de Internet (ISP -
Internet Service Provider). Son organizaciones y compa��as que
proporcionan conectividad con Internet.
RDSI
Es un acr�nimo de Red Digital de Servicios Integrados (ISDN en
ingl�s). La RDSI proporciona medios estandarizados por los
cuales las compa��as de Telecomunicaciones pueden llevar
informaci�n tanto de voz como de datos seg�n las premisas de los
abonados. T�cnicamente la RDSI es una red de circuitos de
paquetes conmutados.
Retransmisi�n de tramas
La retransmisi�n de tramas (o Frame Relay) es una tecnolog�a de
red idealmente preparada para transportar tr�fico que es de
naturaleza espor�dica o a r�fagas. Los costes de red se reducen
compartiendo varios abonados a la retransmisi�n de tramas la
misma capacidad de red y dej�ndoles a ellos el deseo de usar la
red en momentos ligeramente diferentes.
ruta
La ruta es el camino que siguen los datagramas a trav�s de la
red para alcanzar su destino.
servidor
Normalmente es la parte del programa o terminal de un sistema
remoto con respecto al usuario. El servidor proporciona alg�n
servicio a uno o varios clientes. Los ejemplos de servidores
incluyen ftp, Network File System o Domain Name Server. En el
caso de sistemas de igual a igual (peer to peer) tales como slip
o ppp. Se dice que es el servidor el extremo del enlace que
recibe la llamada y el otro extremo es el cliente.
ventana
La ventana es la mayor cantidad de datos que el extremo receptor
puede aceptar en un momento dado.
11. �Linux para un PSI?
Si est� interesado en usar Linux para prop�sitos de PSI entonces le
recomiendo que eche un vistazo a la p�gina principal de Linux ISP
http://www.anime.net/linuxisp si quiere obtener una buena lista de
enlaces a la informaci�n que pudiera necesitar.
12. Reconocimientos
Me gustar�a dar las gracias a las siguientes personas por su
contribuci�n a este documento (no est�n por orden): Terry Dawson, Axel
Boldt, Arnt Gulbrandsen, Gary Allpike, Cees de Groot, Alan Cox,
Jonathon Naylor, Claes Ensson, Ron Nessim, John Minack, Jean-Pierre
Cocatrix, Erez Strauss.
El traductor quisiera tambi�n reconocer el trabajo de Fernando Tricas,
por su inestimable ayuda en el proceso de revisi�n del documento.
El mayor de los reconocimientos a la gran labor de Francisco Montilla
[email protected] y el grupo Insflug
http://www.insflug.org para
conseguir aportar documentaci�n de calidad al movimiento LiNUX.
�Animo!
13. Copyright.
Copyright Information
The NET-3-HOWTO, information on how to install and configure
networking support for Linux. Copyright (c) 1997 Terry Dawson, 1998
Alessandro Rubini, 1999 {POET} - LinuxPorts
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or (at
your option) any later version. This program is distributed in the
hope that it will be useful, but WITHOUT ANY WARRANTY; without even
the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE. See the GNU General Public License for more details. You
should have received a copy of the GNU General Public License along
with this program; if not, write to the: Free Software Foundation,
Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
14. Anexo: El INSFLUG
El INSFLUG forma parte del grupo internacional Linux Documentation
Project, encarg�ndose de las traducciones al castellano de los Howtos,
as� como de la producci�n de documentos originales en aquellos casos
en los que no existe an�logo en ingl�s, centr�ndose, preferentemente,
en documentos breves, como los COMOs y PUFs (Preguntas de Uso
Frecuente, las FAQs. :) ), etc.
Dir�jase a la sede del Insflug para m�s informaci�n al respecto.
En ella encontrar� siempre las �ltimas versiones de las traducciones
�oficiales�: www.insflug.org. Aseg�rese de comprobar cu�l es la
�ltima versi�n disponible en el Insflug antes de bajar un documento de
un servidor r�plica.
Adem�s, cuenta con un sistema interactivo de gesti�n de fe de erratas
y sugerencias en l�nea, motor de b�squeda espec�fico, y m�s servicios
en los que estamos trabajando incesantemente.
Ponga su granito de arena; si detecta una errata o incorrecci�n en
este documento, por favor, dir�jase a
http://www.insflug.org/documentos/Redes-En-Linux-Como/ y aporte su
sugerencia o errata en l�nea.
En
http://www.insflug.org/insflug/creditos.php3 cuenta con una
detallada relaci�n de las personas que hacen posible tanto esto como
las traducciones.
�Dir�jase a
http://www.insflug.org/colaboracion/index.php3 si desea
unirse a nosotros!.
�Cartel� Insflug,
[email protected].