guia de admin is trac ion de redes en linux

Upload: ludwing-rodriguez

Post on 09-Jul-2015

324 views

Category:

Documents


0 download

TRANSCRIPT

Gu de Administracin de Redes con Linux a oCopyright c 1992-1994 Olaf Kirch (Traduccin Proyecto LuCAS) o

Versin nal 1.0, 1 de Junio de 1999. o Fecha de montaje: 30 de mayo de 1999

Para Britta

Legal NoticeUNIX is a trademark of Univel. Linux is not a trademark, and has no connection to UNIXTM or Univel. Copyright c 1994 Olaf Kirch Kattreinstr. 38, 64295 Darmstadt, Germany [email protected] The Linux Network Administrators Guide may be reproduced and distributed in whole or in part, subject to the following conditions: 0. The copyright notice above and this permission notice must be preserved complete on all complete or partial copies. 1. Any translation or derivative work of The Linux Network Administrators Guide must be approved by the author in writing before distribution. 2. If you distribute The Linux Network Administrators Guide in part, instructions for obtaining the complete version of The Linux Network Administrators Guide must be included, and a means for obtaining a complete version provided. 3. Small portions may be reproduced as illustrations for reviews or quotes in other works without this permission notice if proper citation is given. 4. If you print and distribute The Linux Network Administrators Guide, you may not refer to it as the Ocial Printed Version. 5. The GNU General Public License referenced below may be reproduced under the conditions given within it. 6. Several sections of this document are held under separate copyright. When these sections are covered by a dierent copyright, the seperate copyright is noted. If you distribute The Linux Network Administrators Guide in part, and that part is, in whole, covered under a seperate, noted copyright, the conditions of that copyright apply. Exceptions to these rules may be granted for academic purposes: Write to Olaf Kirch at the above address, or email [email protected], and ask. These restrictions are here to protect us as authors, not to restrict you as educators and learners. All source code in The Linux Network Administrators Guide is placed under the GNU General Public License. See appendix C for a copy of the GNU GPL. The author is not liable for any damages, direct or indirect, resulting from the use of information provided in this document.

Nota LegalUNIX es una marca registrada de Univel. Linux no es una marca registrada, y no tiene relacin con UNIXTM o Univel. o Copyright c 1994 Olaf Kirch Kattreinstr. 38, 64295 Darmstadt, Alemania [email protected] La Gu de Administracin de redes con Linux puede ser total o parcialmente reprodua o cida y distribuida, bajo las siguientes condiciones: 0. La nota de copyright anterior y esta nota de permiso debe preservarse en toda reproduccin total o parcial. o 1. Cualquier traduccin o trabajo derivado de la Gu de Administracin de redes o a o con Linux debe ser aprobado por el autor antes de su distribucin. o 2. Si Vd. distribuye la Gu de Administracin de redes con Linux en parte, deber a o a incluir instrucciones para obtener la versin completa. o 3. Pueden reproducirse pequeas partes como ilustraciones o citas, en otros trabajos n y sin permiso expreso, siempre que se cite la procedencia. 4. Si imprime o distribuye la Gu de Administracin de redes con Linux, no podr a o a referirse a ella como la Versin Ocial Impresa. o 5. La Licencia Pblica General de GNU citada puede reproducirse bajo sus propias u condiciones. 6. Algunas partes de este libro estn sujetas a diferentes copyrights. Cuando esto a suceda, el copyright espec co se incluir. Si distribuye una parte de la Gu a a de Administracin de redes con Linux que est cubierta por un copyright o e espec co, se aplicarn a dicha copia las condiciones de dicho copyright. a Se admiten excepciones en el cumplimiento de estas reglas con propsitos o acadmicos: escr e base a Olaf Kirch a la direccin anterior o por correo electrnico o o ([email protected]), y pregntese. Estas restricciones estn para protegernos como u a autores, no para limitarles como educadores o estudiantes. Todo el cdigo fuente inclu en la Gu de Administracin de redes con Linux se rige o do a o bajo la Licencia Pblica General GNU (GNU General Public License). El apndice C u e contiene una copia de dicha licencia. El autor no se hace responsable de cualquier dao, directo o indirecto, que pueda producirse n por el uso de la informacin proporcionada en este libro. o

Indice GeneralPrlogo a la Edicin en Castellano o o Nota Acerca de Esta Traduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . o Prefacio Documentacin de Linux o . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . vi vii viii ix x xi xii xii xiii xv xvi xvi

Sobre Este Libro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . La Versin Impresa Ocial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . o Ms Informacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . a o Sobre los autores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Agradecimientos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Convenciones Tipogrcas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . a El Proyecto de Documentacin de Linux . . . . . . . . . . . . . . . . . . . . . . . o El Proyecto LinUx en CAStellano (LuCAS) . . . . . . . . . . . . . . . . . .

Estndares de Sistema de Ficheros . . . . . . . . . . . . . . . . . . . . . . . . . . xviii a 1 Introduccin a las Redes o 1.1 1.2 Historia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Redes UUCP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2.1 1.3 Cmo usar UUCP . . . . . . . . . . . . . . . . . . . . . . . . . . . . o 1 1 2 3 4 5 7 8 9 11

Redes TCP/IP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.3.1 1.3.2 1.3.3 1.3.4 1.3.5 Introduccin a las Redes TCP/IP o . . . . . . . . . . . . . . . . . . .

Ethernets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Otros tipos de Hardware . . . . . . . . . . . . . . . . . . . . . . . . . El Protocolo IP (Internet Protocol) . . . . . . . . . . . . . . . . . . . IP en L neas Serie, SLIP . . . . . . . . . . . . . . . . . . . . . . . . .

iv

INDICE GENERAL

v

1.3.6 1.3.7 1.3.8 1.3.9 1.4

El Protocolo de Control de Transmisin, TCP . . . . . . . . . . . . . o El Protocolo de Datagramas de Usuario, UDP . . . . . . . . . . . . Ms sobre Puertos . . . . . . . . . . . . . . . . . . . . . . . . . . . . a La Librer de Sockets . . . . . . . . . . . . . . . . . . . . . . . . . . a

11 12 13 13 14 15 15 16 17 18 20 20 21 22 24 24 24 25 26 28 29 29 29 30 33 33 34 36 39 39 42

Redes con Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.4.1 1.4.2 Diferentes Etapas de Desarrollo . . . . . . . . . . . . . . . . . . . . . Donde Conseguir el Cdigo . . . . . . . . . . . . . . . . . . . . . . . o

1.5

Mantenimiento del Sistema . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.5.1 Seguridad del Sistema . . . . . . . . . . . . . . . . . . . . . . . . . .

1.6

Vistazo a los Siguientes Cap tulos . . . . . . . . . . . . . . . . . . . . . . . .

2 Cuestiones sobre redes TCP/IP 2.1 2.2 2.3 2.4 Interfaces de Red . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Direcciones IP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Resolucin de direcciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . o Encaminamiento IP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.4.1 2.4.2 2.4.3 2.4.4 2.4.5 Redes IP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Subredes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Pasarelas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Tablas de Encaminamiento . . . . . . . . . . . . . . . . . . . . . . . Mtricas de Encaminamiento . . . . . . . . . . . . . . . . . . . . . . e

2.5 2.6

Protocolo de Mensajes de Control de Internet (ICMP) . . . . . . . . . . . . El sistema de nombres DNS . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.6.1 2.6.2 2.6.3 2.6.4 2.6.5 2.6.6 Resolucin de nombres . . . . . . . . . . . . . . . . . . . . . . . . . . o Introduccin al DNS . . . . . . . . . . . . . . . . . . . . . . . . . . . o B squedas de nombres con DNS . . . . . . . . . . . . . . . . . . . . u Servidores de Nombres . . . . . . . . . . . . . . . . . . . . . . . . . . La Base de Datos DNS . . . . . . . . . . . . . . . . . . . . . . . . .

Resolucin inversa . . . . . . . . . . . . . . . . . . . . . . . . . . . . o

3 Conguracin del Hardware de Red o 3.1 3.2 Dispositivos, Controladores, y todo lo dems . . . . . . . . . . . . . . . . . a Conguracin del n cleo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . o u

INDICE GENERAL

vi

3.2.1 3.2.2 3.3 3.4

Opciones del n cleo de Linux 1.0 o Versiones Posteriores . . . . . . . u Opciones del n cleo de Linux 1.1.14 y Versiones Posteriores . . . . . u

42 44 46 47 47 48 49 51 52 53 53 54 55 56 59 60 60 61 61 62 64 65 66 68 71 72 72 73 73 74 77

Una Visita a los Dispositivos de Red de Linux . . . . . . . . . . . . . . . . . Instalacin Ethernet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . o 3.4.1 3.4.2 3.4.3 Cableado de Ethernet . . . . . . . . . . . . . . . . . . . . . . . . . . Tarjetas Compatibles . . . . . . . . . . . . . . . . . . . . . . . . . .

Autovericacin de red Ethernet . . . . . . . . . . . . . . . . . . . . o

3.5 3.6

El controlador PLIP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Los controladores SLIP y PPP . . . . . . . . . . . . . . . . . . . . . . . . .

4 Conguracin del Software Serie o 4.1 4.2 4.3 4.4 Software de Comunicaciones con Mdem . . . . . . . . . . . . . . . . . . . . o Introduccin a los Dispositivos Serie . . . . . . . . . . . . . . . . . . . . . . o Acceso a los Dispositivos Serie . . . . . . . . . . . . . . . . . . . . . . . . . Hardware Serie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

5 Conguracin del Protocolo TCP/IP o 5.1 5.2 5.3 5.4 5.5 5.6 5.7 Conguracin del Sistema de Ficheros proc . . . . . . . . . . . . . . . . . . o Instalacin de los Ejecutables . . . . . . . . . . . . . . . . . . . . . . . . . . o Otro Ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Establecimiento del Nombre de la Mquina . . . . . . . . . . . . . . . . . . a Asignacin de una direccin IP . . . . . . . . . . . . . . . . . . . . . . . . . o o Preparacin de los cheros hosts y networks . . . . . . . . . . . . . . . . . . o Conguracin de la Interface para IP . . . . . . . . . . . . . . . . . . . . . . o 5.7.1 5.7.2 5.7.3 5.7.4 5.7.5 5.7.6 5.7.7 5.8 5.9 La Interface de Bucle o Loopback . . . . . . . . . . . . . . . . . . . . Interfaces Ethernet . . . . . . . . . . . . . . . . . . . . . . . . . . . . Encaminamiento a travs de una Pasarela . . . . . . . . . . . . . . . e Conguracin de una Pasarela . . . . . . . . . . . . . . . . . . . . . o La Interface PLIP . . . . . . . . . . . . . . . . . . . . . . . . . . . . Las Interfaces SLIP y PPP . . . . . . . . . . . . . . . . . . . . . . . La Interface Comod . . . . . . . . . . . . . . . . . . . . . . . . . . n

Todo sobre ifcong . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Comprobacin mediante netstat . . . . . . . . . . . . . . . . . . . . . . . . . o

INDICE GENERAL

vii

5.9.1 5.9.2 5.9.3

Consulta de la Tabla de Encaminamiento . . . . . . . . . . . . . . . Consulta de las Estad sticas de una Interface . . . . . . . . . . . . . Mostrar Conexiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

77 78 79 80 82 84 85 85 86 87 88 88 89 91 95 98 100 102 102 103 105 105 107 111 113 113 114 115 116 117 120

5.10 Comprobacin de las Tablas ARP o

5.11 El Futuro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 Servicio de nombres. Conguracin o 6.1 La biblioteca de resolucin . . . . . . . . . . . . . . . . . . . . . . . . . . . . o 6.1.1 6.1.2 6.1.3 6.1.4 6.2 El chero host.conf . . . . . . . . . . . . . . . . . . . . . . . . . . .

Variables de entorno . . . . . . . . . . . . . . . . . . . . . . . . . . . Conguracin del chero resolv.conf . . . . . . . . . . . . . . . . . . o Robustez del sistema de resolucin . . . . . . . . . . . . . . . . . . . o . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Ejecucin de named o 6.2.1 6.2.2 6.2.3 6.2.4 6.2.5

El chero named.boot

Ficheros de base de datos DNS . . . . . . . . . . . . . . . . . . . . . Escribiendo los cheros . . . . . . . . . . . . . . . . . . . . . . . . . Comprobacin del funcionamiento del servidor de nombres o Otras utilidades interesantes . . . . .

. . . . . . . . . . . . . . . . . . . . . .

7 SLIP: IP por l nea serie 7.1 7.2 7.3 Requisitos generales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Utilizacin de SLIP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . o Utilizacin de dip . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . o 7.3.1 7.3.2 7.4 Un script de ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . Gu de Referencia de dip . . . . . . . . . . . . . . . . . . . . . . . . a

Funcionamiento en Modo Servidor . . . . . . . . . . . . . . . . . . . . . . .

8 El Protocolo Punto a Punto (PPP) 8.1 8.2 8.3 8.4 8.5 8.6 Desenredando las Pes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

PPP en Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Conexiones con pppd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Los Ficheros de Opciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . Realizacin de la Llamada con chat . . . . . . . . . . . . . . . . . . . . . . . o Depuracin de la Conguracin PPP . . . . . . . . . . . . . . . . . . . . . . o o

INDICE GENERAL

viii

8.7

Opciones de Conguracin IP . . . . . . . . . . . . . . . . . . . . . . . . . . o 8.7.1 8.7.2 Eleccin de las Direcciones IP . . . . . . . . . . . . . . . . . . . . . . o Encaminamiento a travs de una Conexin PPP . . . . . . . . . . . e o

120 120 121 123 125 125 125 127 128 130 131 131 133 136 138 140 143 144 147 148 148 150 151 153 155 156 157 159 159 161 162

8.8 8.9

Opciones de Control de Enlace . . . . . . . . . . . . . . . . . . . . . . . . . Consideraciones Generales sobre Seguridad . . . . . . . . . . . . . . . . . .

8.10 Autenticacin con PPP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . o 8.10.1 CHAP frente a PAP . . . . . . . . . . . . . . . . . . . . . . . . . . . 8.10.2 El chero de claves CHAP . . . . . . . . . . . . . . . . . . . . . . . . 8.10.3 El Fichero de Claves PAP . . . . . . . . . . . . . . . . . . . . . . . . 8.11 Conguracin de un Servidor PPP . . . . . . . . . . . . . . . . . . . . . . . o 9 Algunas Aplicaciones de Red 9.1 9.2 9.3 9.4 9.5 El Super-Servidor inetd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . La herramienta de control de acceso tcpd . . . . . . . . . . . . . . . . . . .

Los cheros services y protocols . . . . . . . . . . . . . . . . . . . . . . . . . Llamada a Procedimientos Remotos . . . . . . . . . . . . . . . . . . . . . . Congurar los Comandos r . . . . . . . . . . . . . . . . . . . . . . . . . . .

10 El Sistema de Informacin de Red (NIS) o 10.1 Familiarizacin con NIS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . o 10.2 NIS frente a NIS+ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10.3 El lado cliente de NIS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10.4 Ejecucin de un servidor NIS . . . . . . . . . . . . . . . . . . . . . . . . . . o 10.5 Congurar un Cliente NIS con NYS . . . . . . . . . . . . . . . . . . . . . . 10.6 Eleccin de los Mapas Correctos . . . . . . . . . . . . . . . . . . . . . . . . o 10.7 Uso de los mapas passwd y group . . . . . . . . . . . . . . . . . . . . . . . . 10.8 Uso de NIS con Soporte Shadow . . . . . . . . . . . . . . . . . . . . . . . .

10.9 Uso del Cdigo NIS Tradicional . . . . . . . . . . . . . . . . . . . . . . . . . o 11 El Sistema Ficheros en Red (NFS) 11.1 Preparacin de NFS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . o 11.2 Montaje de un volumen NFS . . . . . . . . . . . . . . . . . . . . . . . . . . 11.3 Demonios de NFS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

11.4 El chero exports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

INDICE GENERAL

ix

11.5 El sistema de automontado en Linux . . . . . . . . . . . . . . . . . . . . . . 12 Administracin de Taylor UUCP o 12.1 Historia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12.1.1 Ms Informacin Sobre UUCP . . . . . . . . . . . . . . . . . . . . . a o 12.2 Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . o 12.2.1 Disposicin de Transferecias de UUCP y Ejecucin Remota . . . . . o o 12.2.2 El Funcionamiento Interno de uucico . . . . . . . . . . . . . . . . . . 12.2.3 Opciones de la l nea de comandos de uucico . . . . . . . . . . . . . . 12.3 Ficheros de conguracin de UUCP o . . . . . . . . . . . . . . . . . . . . . .

164 166 166 168 168 168 169 171 171 172 175 176 177 178 178 183 185 186 187 187 187 188 189 190 190 191 192 193 194 195 195 197

12.3.1 Una Ligera Introduccin a Taylor UUCP . . . . . . . . . . . . . . . o 12.3.2 Lo que UUCP necesita saber . . . . . . . . . . . . . . . . . . . . . . 12.3.3 Nomenclatura de nodos . . . . . . . . . . . . . . . . . . . . . . . . . 12.3.4 Ficheros de conguracin Taylor . . . . . . . . . . . . . . . . . . . . o 12.3.5 Opciones Generales de Conguracin el Fichero cong . . . . . . . o 12.3.6 Cmo informar a UUCP sobre otros sistemas el chero sys . . . . o 12.3.7 Qu dispositivos hay el chero port . . . . . . . . . . . . . . . . . . e 12.3.8 Cmo marcar un n mero el chero dial . . . . . . . . . . . . . . . o u 12.3.9 UUCP sobre TCP . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12.3.10 Uso de una conexin directa . . . . . . . . . . . . . . . . . . . . . . . o 12.4 Los s y noes de UUCP Ajuste de Permisos . . . . . . . . . . . . . . . . es 12.4.1 Ejecucin de comandos . . . . . . . . . . . . . . . . . . . . . . . . . o 12.4.2 Transferencias de Ficheros . . . . . . . . . . . . . . . . . . . . . . . . 12.4.3 Reenv . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . o 12.5 Conguracin de su sistema para ser llamado. . . . . . . . . . . . . . . . . . o 12.5.1 Conguracin de getty . . . . . . . . . . . . . . . . . . . . . . . . . . o 12.5.2 Proveer Cuentas de UUCP . . . . . . . . . . . . . . . . . . . . . . . 12.5.3 Proteccin contra estafadores . . . . . . . . . . . . . . . . . . . . . . o 12.5.4 Vulvase Loco Comprobacin de Secuencia de Llamadas . . . . . . e o 12.5.5 UUCP Annimo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . o 12.6 Protocolos de bajo nivel de UUCP . . . . . . . . . . . . . . . . . . . . . . . 12.6.1 Resumen del protocolo . . . . . . . . . . . . . . . . . . . . . . . . . . 12.6.2 Ajuste del protocolo de transmisin . . . . . . . . . . . . . . . . . . o

INDICE GENERAL

x

12.6.3 Seleccin de protocolos espec o cos . . . . . . . . . . . . . . . . . . . 12.7 Solucin de problemas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . o 12.8 Archivos de registro histrico (Log Files) . . . . . . . . . . . . . . . . . . . . o 13 Correo Electrnico o 13.1 Qu es un mensaje de correo? . . . . . . . . . . . . . . . . . . . . . . . . . e 13.2 Cmo se reparte el correo? . . . . . . . . . . . . . . . . . . . . . . . . . . . o 13.3 Direcciones de correo electrnico . . . . . . . . . . . . . . . . . . . . . . . . o 13.4 Cmo funciona el encaminado del correo? . . . . . . . . . . . . . . . . . . . o 13.4.1 Encaminado de correo en la Internet . . . . . . . . . . . . . . . . . . 13.4.2 Encaminado de correo en el mundo UUCP . . . . . . . . . . . . . .

197 198 200 202 203 206 207 209 209 210 211 213 215 216 216 219 220 222 223 224 225 226 227 228 229 230 232 232 233 234 234

13.4.3 Mezcla de UUCP y RFC 822 . . . . . . . . . . . . . . . . . . . . . . 13.5 Formatos de Fichero Mapa y Alias de Ruta . . . . . . . . . . . . . . . . . . 13.6 Conguracin de elm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . o 13.6.1 Opciones Globales de elm . . . . . . . . . . . . . . . . . . . . . . . . 13.6.2 Conjuntos de Caracteres Nacionales . . . . . . . . . . . . . . . . . . 14 Cmo congurar y poner en marcha smail o 14.1 Conguracin de UUCP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . o 14.2 Conguracin para una red local . . . . . . . . . . . . . . . . . . . . . . . . o 14.2.1 Cmo escribir los archivos de conguracin . . . . . . . . . . . . . . o o 14.2.2 Cmo ejecutar smail . . . . . . . . . . . . . . . . . . . . . . . . . . . o 14.3 Si no logra pasar. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

14.3.1 Cmo compilar smail o

14.4 Modos de entrega de correo . . . . . . . . . . . . . . . . . . . . . . . . . . . 14.5 Otras opciones del chero cong . . . . . . . . . . . . . . . . . . . . . . . . 14.6 Encaminamiento de mensajes y entrega . . . . . . . . . . . . . . . . . . . . 14.7 Mensajes de encaminamiento . . . . . . . . . . . . . . . . . . . . . . . . . . 14.7.1 La base de datos de trayectorias paths . . . . . . . . . . . . . . . . . 14.8 Cmo entregar mensajes a las direcciones locales . . . . . . . . . . . . . . . o 14.8.1 Usuarios locales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14.8.2 Reenv . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . o 14.8.3 Archivos de alias . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

INDICE GENERAL

xi

14.8.4 Listas de correo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14.9 Transportes basados en UUCP . . . . . . . . . . . . . . . . . . . . . . . . . 14.10Transportes basados en SMTP . . . . . . . . . . . . . . . . . . . . . . . . . 14.11Calicacin de nombre de antrin . . . . . . . . . . . . . . . . . . . . . . . o o 15 Sendmail+IDA 15.1 Acerca del autor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15.2 Reconocimientos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15.3 Introduccin a Sendmail+IDA o . . . . . . . . . . . . . . . . . . . . . . . . .

236 236 237 237 239 239 239 239 240 241 242 242 248 248 250 251 252 252 253 254 255 255 256 259 261 261 262 263 263 264 264

15.4 Archivos de conguracin Preliminares . . . . . . . . . . . . . . . . . . . o 15.5 El archivo sendmail.cf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15.5.1 Un ejemplo del archivo sendmail.m4 . . . . . . . . . . . . . . . . . . 15.5.2 Parmetros de uso com n en sendmail.m4 . . . . . . . . . . . . . . . a u 15.6 Un viaje por las tablas de Sendmail+IDA . . . . . . . . . . . . . . . . . . . 15.6.1 mailertable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15.6.2 uucpxtable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15.6.3 pathtable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

15.6.4 domaintable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15.6.5 alias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15.6.6 Tablas utilizadas en raras ocasiones . . . . . . . . . . . . . . . . . .

15.7 Instalacin de sendmail . . . . . . . . . . . . . . . . . . . . . . . . . . . . . o 15.7.1 Desempaquetado de la distribucin ejecutable . . . . . . . . . . . . . o 15.7.2 Elaboracin del chero sendmail.cf . . . . . . . . . . . . . . . . . . . o 15.7.3 Comprobando el chero sendmail.cf . . . . . . . . . . . . . . . . . . 15.7.4 Integracin global - Prueba de integracin del chero sendmail.cf y o o las tablas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15.8 Trucos y trivialidades sobre administracin de correo . . . . . . . . . . . . . o 15.8.1 Reenv de correo a un sistema inteligente . . . . . . . . . . . . . . . o 15.8.2 Env de correo a Sistemas Remotos mal congurados . . . . . . . . o 15.8.3 Env Forzado de correo a travs de UUCP . . . . . . . . . . . . . . o e 15.8.4 Prevencin de que el correo sea enviado v UUCP . . . . . . . . . . o a 15.8.5 Procesado de la cola de correo a voluntad . . . . . . . . . . . . . . . 15.8.6 Informe sobre las estad sticas de correo . . . . . . . . . . . . . . . .

INDICE GENERAL

xii

15.9 Integracin y puesta a punto de Distribuciones Ejecutables . . . . . . . . . o 15.10Dnde obtener ms informacin . . . . . . . . . . . . . . . . . . . . . . . . . o a o 16 Netnews 16.1 Historia de Usenet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16.2 Qu es, en denitiva, Usenet? . . . . . . . . . . . . . . . . . . . . . . . . . e 16.3 Cmo maneja Usenet las noticias? . . . . . . . . . . . . . . . . . . . . . . . o 17 C-News 17.1 Entrega de Noticias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17.2 Instalacin o . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

265 266 267 267 268 270 272 272 274 276 280 281 284 287 289 289 289 290 291 292 292 295 295 297 298 299 300 301 302 303

17.3 El chero sys . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17.4 El chero active . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

17.5 Procesado de art culos por lotes . . . . . . . . . . . . . . . . . . . . . . . . . 17.6 Noticias caducadas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17.7 Ficheros diversos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17.8 Mensajes de Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17.8.1 El Mensaje cancel . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17.8.2 newgroup y rmgroup . . . . . . . . . . . . . . . . . . . . . . . . . . . 17.8.3 El Mensaje checkgroups . . . . . . . . . . . . . . . . . . . . . . . . . 17.8.4 sendsys, version, y senduuname . . . . . . . . . . . . . . . . . . . . . 17.9 C-News en un Entorno NFS . . . . . . . . . . . . . . . . . . . . . . . . . . . 17.10Herramientas y Tareas de Mantenimiento . . . . . . . . . . . . . . . . . . . 18 Una descripcin de NNTP o 18.1 Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . o 18.2 Instalacin del servidor NNTP . . . . . . . . . . . . . . . . . . . . . . . . . o 18.3 Restricciones de acceso NNTP . . . . . . . . . . . . . . . . . . . . . . . . .

18.4 Autorizacin NNTP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . o 18.5 Interaccin de nntpd con Cnews . . . . . . . . . . . . . . . . . . . . . . . . . o 19 Conguracin del lector de noticias o 19.1 Conguracin de tin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . o 19.2 Conguracin de trn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . o

INDICE GENERAL

xiii

19.3 Conguracin de nn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . o A Un Cable de Impresora para PLIP B Ejemplos de Archivos de Conguracin para smail o C The GNU General Public License C.1 Preamble . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C.2 Terms and Conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C.3 How to Apply These Terms . . . . . . . . . . . . . . . . . . . . . . . . . . . Glosario Bibliograf Comentada a Libros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Libros sobre Internet en general . . . . . . . . . . . . . . . . . . . . . . . . . Temas de Administracin . . . . . . . . . . . . . . . . . . . . . . . . . . . . o Conocimientos Bsicos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . a HOWTOs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Cules son los HOWTOs de Linux? . . . . . . . . . . . . . . . . . . . . . . a Dnde se consiguen los HOWTOs de Linux? . . . . . . . . . . . . . . . . . o Indice de HOWTOs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Asuntos varios y cuestiones legales . . . . . . . . . . . . . . . . . . . . . . . Los HOWTOs en Castellano . . . . . . . . . . . . . . . . . . . . . . . . . . . RFCs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

304 306 307 316 316 317 321 323 330 330 330 330 332 333 333 333 334 335 335 336

Indice de Figuras1.1 2.1 2.2 2.3 2.4 2.5 2.6 2.7 3.1 5.1 6.1 6.2 6.3 6.4 6.5 7.1 9.1 9.2 Los tres pasos para enviar un datagrama desde erdos a quark. . . . . . . 10 25 27 31 35 36 37 38 40 63 90 95 96 97 97 106 134 139 153 174

Divisin de una red clase B en subredes . . . . . . . . . . . . . . . . . . . . o Vista parcial de la topolog de la red de la UGM. . . . . . . . . . . . . . . a Parte del espacio de dominios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Extracto del chero named.hosts del departamento de F sicas.

Extracto del chero named.hosts de la UGM. . . . . . . . . . . . . . . . . . Extracto del chero named.rev de la subred 12. Extracto del chero named.rev de la red 149.76. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Relacin entre controladores, interfaces, y hardware. . . . . . . . . . . . . . o Cervecera Virtual y Vinatera Virtual las dos subredes. El chero named.boot para vlager. Fichero named.ca. . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Fichero named.hosts.

Fichero named.local. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Fichero named.rev. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Un script de ejemplo para dip

Un ejemplo de chero /etc/inetd.conf. . . . . . . . . . . . . . . . . . . . . . Un ejemplo de chero /etc/rpc. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

10.1 Fichero nsswitch.conf de ejemplo.

12.1 Interacciones de los Ficheros de Conguracin de Taylor UUCP. o

xiv

INDICE DE FIGURAS

xv

15.1 Archivos de apoyo de sendmail.

. . . . . . . . . . . . . . . . . . . . . . . .

241 243 269 274

15.2 Un archivo muestra de sendmail.m4 para vstout. . . . . . . . . . . . . . . 16.1 Flujo de noticias a travs de la Universidad Groucho Marx e 17.1 Flujo de noticias mediante relaynews. . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . .

Prlogo a la Edicin en Castellano o o

Los ultimos a os de la dcada de los 90 son, claramente, los de la explosin denitiva de la n e o Informtica Personal. Es la poca en la que ordenadores de mediana potencia pueblan las a e casas particulares. Tambin es el momento en el que Internet se hace popular. Y como ya e no es dif que en un hogar haya ms de un PC, tal vez interesar tenerlos conectados en cil a a red local: al n y al cabo una tarjeta Ethernet puede costar menos de 5000 pesetas. Este libro trata sobre Linux y su capacidad de red, capacidad que no tiene nada que envidiar a la que pueda tener cualquier otro sistema un x. Otros sistemas operativos quieren tener ahora, a toda prisa, capacidades de acceso a la Red, pero recordemos que la tecnolog de Internet naci en Unix. Por esto, esos sistemas seguirn estando, durante a o a mucho tiempo, a a os luz de lo que Unix puede ofrecer. n Por lo tanto, le doy mi enhorabuena si ha elegido Linux u otro Unix para acceder a la Red y para trabajar. Lo que aqu explicamos intentar echarle una mano en las tareas de a administracin de red. Le ser especialmente util si su sistema Linux o Unix es servidor de o a una peque a red local o de Internet. Nuestro intento como traductores ha sido acercar las n ventajas de Unix en red al usuario hispanohablante, ya que creemos que es un asunto aun no cubierto por la bibliograf existente en nuestro idioma. a Hemos intentado hacer una traduccin homognea, pese a haber colaborado en ella gran o e cantidad de gente. Gracias a la propia Internet, hemos podido tener un canal de comunicacin uido para discutir cualquier duda que pudiera surgir entre los traductores, adoptando o nalmente un glosario com n de trminos informticos. Esperamos que el resultado merezca u e a la pena. Ahora es el momento de dar las gracias a todos aquellos que han colaborado en la tra duccin o en las posteriores revisiones. Estas personas son Corsino Alvarez, I aki Arenaza, o n xvi

Nota Acerca de Esta Traduccin o

xvii

Csar Ballardini, Alfonso Belloso, Javier Bravo, Santiago Crespo, David Escorial, Mxie a mo Escobar, Manuel Jes s Garrido, Luis F. Gonzlez, Eduardo Hernndez, Jes s Jimnez, u a a u e Jos Andrs Jimnez, Urko Lusa, Carlos Mart e e e nez Txakartegi, Max de Mendizbal, Frana cisco J. Montilla, Jos Manuel Puerta, Angel Luis Pinazo, Pedro Soria Rodr e guez y Enrique Zanardi. Por ultimo, debo agradecer el nacimiento y desarrollo de la idea de documentar Linux en nuestro idioma, a Ramn Gutirrez y de nuevo a Alfonso Belloso y Francisco J. Montilla. o e Juan Jos Amor e Mayo de 1997 revisado en Abril de 1999

Nota Acerca de Esta Traduccin oEsta gu es traduccin de la versin 1.0 del libro Linux Network Administration Guide, a o o escrito por Olaf Kirch entre 1992 y 1994. Es un trabajo ms del proyecto LuCAS, el a LDP espa ol; y ha sido coordinado por Juan Jos Amor, quien desea recibir cualquier n e tipo de comentario acerca de erratas o sugerencias en su direccin de correo electrnico: o o [email protected].

Prefacio

Las redes de ordenadores parecen estar acercndose a la situacin de los televisores y los a o hornos microondas, debido a la publicidad que Internet est teniendo, y el hecho de que la a gente de opinin ms respetada en el mundo de la Informtica, est todo el tiempo hablando o a a e de las virtudes de la red. Es decir, Internet est teniendo una cobertura informativa inusual, a y las autoridades en ciencia social estn integrndose en los grupos de noticias de Usenet a a para dirigir las investigaciones sobre la Cultura Internet. Las compa suministradoras nas trabajan en la introduccin de nuevas tcnicas de transmisin como ATM, que ofrecen un o e o ancho de banda varias veces superior al que ofrecen las redes utilizadas actualmente. En realidad, las redes han estado presentes durante bastante tiempo. La conexin de o ordenadores para formar redes de area local ha sido prctica com n incluso en instalacioa u nes peque as, as como lo han sido los enlaces a larga distancia usando l n neas telefnicas o p blicas. Un rpido crecimiento del conglomerado de redes a nivel mundial ha hecho, sin u a embargo, que integrarse en la aldea global sea una opcin viable incluso para peque as o n organizaciones sin benecio de usuarios de ordenadores privados. Instalar un nodo de Internet con capacidad de correo y noticias ofreciendo acceso telefnico ha pasado a ser algo o accesible, y con la RDSI acelerar sin duda esta introduccin. a o Hablar de redes de ordenadores a menudo signica hablar de UNIX. Por supuesto, UNIX no es el unico sistema operativo con capacidades de red, ni seguir siendo la puerta a de entrada, pero s ha estado en el negocio de las redes por mucho tiempo y seguramente continuar haciendolo al menos durante bastante tiempo. a Lo que lo hace particularmente interesante para los usuarios privados es que ha habido gran actividad para conseguir sistemas operativos tipo UNIX gratuitos para PC, como 386BSD, FreeBSD y Linux. Sin embargo, Linux no es UNIX. Eso es una marca comercial xviii

Documentacin de Linux o

xix

registrada de quien actualmente tenga los derechos sobre ella (Univel, en el momento de escribir este libro). Linux, en cambio, es un sistema operativo que lucha por ofrecer toda la funcionalidad que requieren los estndares POSIX para sistemas operativos tipo UNIX, a aunque es una reimplementacin completa, desde cero. o El n cleo de Linux fue escrito enteramente por Linus Torvalds, quien lo comenz como u o un proyecto para conseguir conocer el Intel i386, y para hacer un MINIX mejor. MINIX era entonces otro sistema operativo popular para PC que ofrec los ingredientes vitales de a la funcionalidad un x, y fue escrito por el Profesor Andrew S. Tanenbaum. Linux est cubierto por la Licencia P blica General (GPL) GNU, que permite la libre a u distribucin del cdigo (lase, por favor, la GPL en el apndice C para tener una denicin o o e e o de lo que es software libre (free software)). Superando sus males de joven, y atraido por una siempre creciente base de programas de aplicacin gratuitos, se est convirtiendo o a rpidamente en el sistema operativo de eleccin de muchos usuarios de PC. Tanto el n cleo a o u como la librer C han llegado a ser tan buenos que la mayor del software estndar se puede a a a compilar sin esfuerzo mayor que el que se requiere en cualquier otro sistema tipo un x, y una amplia variedad de distribuciones empaquetadas de Linux le permiten prcticamente a volcarlo en su disco duro y comenzar a manejarlo.

Documentacin de Linux oUna de las quejas que se recogen frecuentemente en torno a Linux (y al software gratuito en general) es sobre el lamentable estado de la documentacin o su completa carencia. En o los primeros d lo usual era que un paquete viniese con unas utiles notas de instalacin as o y README s (LEAME s). Estos daban a los magos de un x, moderadamente experimentados, suciente informacin para instalarlo y ejecutarlo con xito, pero dejaban al t o e pico novato fuera de juego. All por nales de 1992, Lars Wirzenius y Michael K. Johnson sugirieron la formacin a o del Linux Documentation Project (Proyecto de Documentacin de Linux), o LDP, con el o n de proporcionar un conjunto coherente de manuales. Lejos de contestar preguntas tipo Cmo?, o Por qu?, o Cual es el signicado de la vida, el universo y todo lo o e dems?, estos manuales intentan cubrir la mayor de aspectos del uso y funcionamiento a a de un sistema Linux sin necesidad de graduarse previamente en un x. Entre los logros del LDP estn el Installation and Getting Started Guide 1 , escrita por a Matt Welsh, el Kernel Hackers Guide 2 de Michael K. Johnson, y el proyecto de pginas de a manual coordinado por Rik Faith, que hasta ahora ha producido un conjunto de unas 450 pginas de manual para la mayor de las llamadas al sistema y librer de C. La System a a asN. del T.: Y traducida, como este manual, por el Proyecto LuCAS, y cuyo t tulo en castellano es Linux: Instalacin y Primeros Pasos o 2 N. del T.: Gu sobre el Ncleo a u1

Sobre Este Libro

xx

Administrators Guide 3 , escrita por Lars Wirzenius, est aun en estado alpha. Tambin se a e est preparando una Gu de Usuario. a a Este libro, la Gua de Administracin de Redes con Linux, es tambin parte de la serie o e LDP. Como tal, puede ser copiado y distribuido libremente bajo la licencia de copia del LDP que se reproduce en la segunda pgina. a Sin embargo, los libros del LDP no son la unica fuente de informacin en Linux. En este o momento hay ms de una docena de HOWTOs (COMOs) que se publican regularmente en a comp.os.linux.announce y es posible encontrarlos en m ltiples servidores de FTP. Los u HOWTOs son documentos cortos de unas pocas pginas que dan una breve introduccin a o a materias como el soporte de Ethernet bajo Linux, o la conguracin del software de o noticias Usenet, y responde a las preguntas ms frecuentes. Generalmente proporcionan la a informacin ms precisa y actualizada disponible sobre la materia. Podr encontrar una o a a lista de los HOWTOs disponibles en la Bibliograf hacia el nal de este libro. a

Sobre Este LibroCuando me un al Linux Documentation Project en 1992, escrib dos peque os cap n tulos sobre UUCP y smail, con los que quise contribuir a la System Administrators Guide. El desarrollo del TCP/IP acababa de comenzar, y cuando esos peque os cap n tulos comenzaron a crecer, me pregunt si no estar bien tener una Gu de Red. Fantstico, dijo e a a a todo el mundo, Yo dir a por ello!. De modo que fui, y escrib una primera versin de a, o la Gu de Red, que di a conocer en Septiembre de 1993. a La nueva Gu de Red que est Ud. leyendo ahora es una reescritura completa que a a contiene varias aplicaciones nuevas que ya estn disponibles para los usuarios de Linux a desde la primera versin. o El libro est organizado estrictamente en la secuencia de pasos que debe de seguir para a congurar su sistema para redes. Comienza discutiendo los conceptos bsicos de redes, y, a en particular, las redes basadas en TCP/IP. Entonces, poco a poco caminamos desde la conguracin de TCP/IP a nivel de dispositivos hasta la puesta en marcha de aplicaciones o comunes como rlogin y parecidas, el Sistema de Ficheros de Red (NFS), y el Sistema de Informacin de Red (NIS). A esto le sigue un cap o tulo sobre cmo hacer de su mquina o a un nodo UUCP. El resto del libro est dedicado a dos grandes aplicaciones que corren por a encima de TCP/IP y UUCP: el correo elecrnico y las noticias. o La parte de correo electrnico (e-mail) conforma una introduccin a las partes ms o o a ntimas del transporte y encaminado del correo, y los miles de esquemas de direccionamiento con los que se puede encontrar. Describe la conguracin y gestin de smail, un agente de o o transporte de correo muy usado en peque os nodos de correo, y sendmail, que es para gente n3

N. del T.: Gu del Administrador de Sistemas a

La Versin Impresa Ocial o

xxi

que tiene que hacer encaminamientos ms complicados, o tiene que manejar gran volumen a de correo. El cap tulo sendmail ha sido escrito y aportado por Vince Skahan. La parte de noticias intenta ofrecerle una visin de cmo funcionan las noticias de Usenet, o o abarca a C-News, el software de transporte de noticias ms usado de momento, y el uso de a NNTP para proporcionar acceso a la lectura de noticias a una red local. El libro cierra con un cap tulo corto sobre cmo usar los lectores de noticias ms populares de Linux. o a

La Versin Impresa Ocial oEn el oto o de 1993, Andy Oram, quien ha estado en la lista de correo de LDP desde n casi el principio de todo, me pidi publicar mi libro en OReilly and Associates. Me puse o nervioso; jams hab imaginado que mi libro tuviese tanto xito. Finalmente acordamos a a e que OReilly produjese una Versin Impresa Ocial mejorada de la Gu de Red, mientras yo o a conservaba el copyright original de forma que las fuentes del libro pudieran ser distribuidas libremente.4 Esto signica que Ud. puede elegir libremente: puede conseguir las fuentes A L TEX distribuidas en la red (o las versiones preformateadas en DVI o PostScript, para cada caso), e imprimirlas. O puede comprar la versin impresa ocial de OReilly, que ya o est disponible. a Entonces, por qu querr Ud. pagar dinero por algo que puede conseguir gratis? e a Est loco Tim OReilly por publicar algo que todos pueden imprimir e incluso vender por a s mismos?5 O hay alguna diferencia entre estas versiones? Las respuestas son depende, no, denitivamente no y s y no. OReilly and Associates asume un riesgo al publicar la Gu de Red, pero espero que nalmente merezca a la pena. Si es as creo que este proyecto puede servir como ejemplo de cmo el mundo del , o software libre y las compa pueden cooperar para producir algo que benecia a los dos. nas Desde mi punto de vista, el gran servicio que est dando a la comunidad Linux (aparte del a libro que tiene disponible en su librer es que puede ayudar a que Linux sea reconocido a) como algo que puede ser tomado en serio: una alternativa util y viable a los sistemas operativos UNIX de PC comerciales. Entonces, qu hay de las diferencias entre la versin impresa y la versin en l e o o nea? Andy Oram se ha esforzado enormemente en transformar mis primeros pasos en algo que merezca la pena imprimirse (l tambin ha estado revisando los otros libros salidos del Proyecto e e de Documentacin de Linux, intentando contribuir con sus habilidades profesionales a la o comunidad Linux). Desde que Andy empez a revisar la Gu de Red y a editar las copias que yo le mandaba, o a el libro ha mejorado enormemente frente a lo que era hace medio a o. No estar tan cerca n aEl aviso de copyright se reproduce en la pgina inmediantemente posterior a la del t a tulo. Observe que mientras usted puede imprimir la versin en l o nea, Ud. no puede fotocopiar el libro de OReilly, y mucho menos vender ninguna de esas (hipotticas) copias. e5 4

Ms Informacin a o

xxii

de lo que es ahora sin su contribucin. Todas estas ediciones han recalado en la versin o o en l nea, como lo ser cualquier cambio que se haga a la Gu de Red durante la fase de a a edicin en OReilly. De modo que no habr diferencia en contenido. Aun as la versin de o a , o OReilly ser diferente: Por un lado, la gente de OReilly ha trabajado mucho en el aspecto a A y forma, dando lugar a un dise o mucho ms agradable que jams se lograr con el L TEX n a a a estndar. Por otro lado, contar con un par de avances como un a a ndice mejorado, y ms y a mejores guras.

Ms Informacin a oSi sigue las instrucciones de este libro y algo no funciona, por favor, sea paciente. Algunos de sus problemas pueden deberse a fallos est pidos por mi parte, pero tambin pueden u e ser causados por cambios en el software de red. Adems, probablemente deber preguntar a a primero en comp.os.linux.help. Hay muchas posibilidades de que usted no sea el unico con esos problemas, y probablemente ya se conozca una solucin o al menos se est trabajando o e en ello. Si tiene oportunidad, deber intentar conseguir el ultimo n cleo y versin de red a u o de alguno de los servidores de FTP de Linux, o de una BBS prxima a usted. Muchos o problemas vienen de usar software en distintas fases de desarrollo, que fallan al intentar funcionar juntos. Despus de todo Linux es un trabajo en progreso. e Otro buen lugar donde informarse del estado actual de desarrollo es el Networking HOWTO6 . Lo mantiene Terry Dawson7 . Se incluye en comp.os.linux.announce una vez al mes, y contiene la informacin ms actualizada. La versin actual puede obtenerse de o a o (entre otros) tsx-11.mit.edu, en /pub/linux/doc. Para problemas que no puede resolver de ninguna forma, tambin puede contactar con el autor de este libro en la direccin que se e o facilita en el prefacio. Sin embargo, por favor, abstngase de pedir ayuda a los desarrollae dores. Ellos ya estn dedicando la mayor parte de su tiempo libre a Linux, y a veces incluso a viven ms alla de la red :-). a

Sobre los autoresOlaf ha sido un usuario de UNIX y administrador a tiempo parcial por un par de a os n mientras estudiaba matemticas. Actualmente, trabaja como programador de UNIX y a est escribiendo un libro. Uno de sus deportes favoritos es hacer cosas con sed que otra a gente hace con su intrprete perl. El se divierte tanto con esto como con ir al monte con e una mochila y una tienda de campa a. n Vince Skahan ha estado administrando gran n mero de sistemas UNIX desde 1987 y u actualmente ejecuta sendmail+IDA en aproximadamente 300 estaciones UNIX para unos6 7

N. del T.: El HOWTO sobre redes A Terry Dawson se le puede localizar en [email protected].

Agradecimientos

xxiii

2000 usuarios. Admite haber perdido un considerable n mero de horas de sue o editando u n unos pocos cheros sendmail.cf a pelo antes de descubrir sendmail+IDA en 1990. Tambin admite haber esperado ansiosamente el env de la primera versin de sendmail basada e o o 8. . . en perl incluso para sus diversiones ms oscuras a A Olaf se le puede encontrar en la siguiente direccin: o Olaf Kirch Kattreinstr. 38 64295 Darmstadt Germany [email protected] A Vince se le puede encontrar en: Vince Skahan [email protected] Estamos abiertos a sus preguntas, comentarios, postales, etc. Sin embargo, le pedir amos que no nos telefonee a no ser que sea realmente importante.

AgradecimientosOlaf dice: Este libro debe gran parte de su contenido a gente que dedic tiempo a revisarlo o y ayud a depurar muchos fallos, tanto tcnicos como gramticos (jams supe que existiera o e a a 9 ). El ms riguroso de ellos fue Andy Oram de OReilly algo como un participio oscilante a and Associates. Estoy muy en deuda con Andres Sep lveda, Wolfgang Michaelis, Michael K. Johnson, u y todos los desarrolladores que dedicaron su tiempo a comprobar la informacin de la Gu o a de Red. Tambin quiero agradecer a todos los que leyeron la primera versin de la Gu de e o a Red y me enviaron sus correcciones y sugerencias. Espero que puedan encontrar una lista completa de los que han contribuido en el chero Thanks de la distribucin en l o nea. Por n, este libro no hubiese sido posible sin el apoyo de Holger Grothe, quien me facilit lo o crucial, la conexin a Internet. o Tambin quisiera agradecer a los siguientes grupos y compa que imprimieron la e nas primera versin de la Gu de Red y han donado dinero incluso para m o para el Proyecto o a , de Documentacin de Linux en su conjunto. o8 9

No crees que lo podr amos hacer con sed, Vince? N. del T.: Realmente no s si en ingls existe algo as o es simplemente una broma del autor e e ,

Agradecimientos

xxiv

Linux Support Team, Erlangen, Germany S.u.S.E. GmbH, Fuerth, Germany Linux System Labs, Inc., United States Vince dice: Mis agradecimientos van para Neil Rickert y Paul Pomes por su gran ayuda estos a os concerniente al cuidado y mantenimiento de sendmail+IDA y a Rich Braun por n portar inicialmente el sendmail+IDA a Linux. El mayor agradecimiento va para mi esposa Susan por todo su apoyo en este y otros proyectos.

Convenciones Tipogrcas a

xxv

Convenciones Tipogrcas aAl escribir este libro se han usado ciertas convenciones tipogrcas para marcar comandos a de shell, argumentos variables, etc. Se detallan a continuacin. o Fuente Negrita Se usa para marcar nombres de mquinas y direcciones de correo, as como a nuevos conceptos y avisos. Fuente Itlica a Se usa para marcar nombres de chero, comandos UNIX, y palabras clave en cheros de conguracin. Tambin se usa para enfatizar texto. o e Fuente de mquina de escribir a Se usa para representar interaccin con la pantalla, como la interaccin del o o usuario ejecutando un programa. Tambin se usa para ejemplos de cdigo, ya sea un chero de conguracin, e o o un script de shell, o algo as . Fuente de mquina de escribir inclinada a Se usa para marcar meta-variables en el texto, especialmente en representaciones de la l nea de comandos. Por ejemplo, $ ls -l ejemplo donde ejemplo representar un nombre de chero, como, por ejemplo, a /tmp. Tecla Representa una tecla a pulsar. Lo ver a menudo de esta forma: a Pulse return para continuar. 3 Un rombo en el margen, como un rombo negro en una pista de esqu marca , peligro o precaucin. Lea los parrafos marcados as cuidadosamente. o Cuando preceden a un comando de shell a escribir, esto denota el prompt del shell. El s mbolo $ se usa cuando el comando puede ser ejecutado como un usuario normal; # signica que el comando requiere privilegios de superusuario.

$y#

El Proyecto de Documentacin de Linux o

xxvi

El Proyecto de Documentacin de Linux oEl Linux Documentation Project (Proyecto de Documentacin de Linux), o LDP, es un o amplio equipo de escritores, revisores, y editores que estn trabajando juntos para facilitar a documentacin completa para el sistema operativo Linux. El coordinador general de este o proyecto es Matt Welsh, quien est ayudado en gran medida por Lars Wirzenius y Michael K. a Johnson. Este manual est dentro de un grupo de varios que estn siendo distribuidos por el LDP, a a incluyendo una Gu de Usuarios de Linux, otra de Administradores de Sistemas, otra a para Administradores de Red, y la Gu de Desarrolladores del N cleo. Estos manuales a u A estn disponibles en formato fuente L TEX, formato .dvi, y salida postscript por FTP a annimo desde nic.funet.fi, en el directorio /pub/OS/Linux/doc/doc-project, y desde o tsx-11.mit.edu, en el directorio /pub/linux/docs/guides. Animamos a todo aqul con acin a la escritura o a la edicin que se una a nosotros e o o para mejorar la documentacin de Linux. Si tiene acceso a correo Internet, puede unirse al o canal DOC de la lista de correo Linux-Activists enviando un correo [email protected]

con la l neaX-Mn-Admin: join DOC

en la cabecera o como primera l nea del cuerpo del mensaje. Un correo vac sin la l o nea de cabecera adicional har que el servidor de correo devuelva un mensaje de ayuda. Para a abandonar el canal, env un mensaje a la misma direccin, incluyendo la l e o neaX-Mn-Admin: leave DOC

El Proyecto LinUx en CAStellano (LuCAS)La versin en Castellano que tiene en sus manos es un fruto ms del proyecto LuCAS o a (LinUx en CAStellano). Es un proyecto para documentar el Linux en el idioma de Cervantes, coordinado inicialmente por Alfonso Belloso 10 y actualmente por Juan Jos Amor11 e Ismael e 12 . Olea Los manuales que produce el grupo se encuentran disponibles en las pginas de a WWW, http://lucas.hispalinux.es/ as como en el servidor de FTP slug.ctv.es, Alfonso est localizable en [email protected] a Juan Jos est disponible en la direccin [email protected] e a o 12 cuya direccin de correo es [email protected] o11 10

El Proyecto LinUx en CAStellano (LuCAS)

xxvii

directorio pub/LuCAS. Parte del contenido de este servidor se encuentra reejado en sunsite.unc.edu. En particular, este manual se encuentra en el directorio /pub/Linux/docs/linux-doc-project/network-guide/translations/es de esa mquia na. El grupo LuCAS trabaja codo con codo, con el grupo INSFLUG (Impatient & Novatous Spanish Fido Linux Users Group), dedicado a la traduccin de documentos cortos HOWTO o 13 . Sus trabajos pueden encontrarse (COMOs); y coordinados por Francisco Jos Montilla e en el servidor www.insflug.org as como en el propio LuCAS. Si desea unirse al grupo, no dude en escribirnos. Mientras lo piensa, escuche un poco lo que se cuenta en la lista de correo que mantenemos: escriba a [email protected] un mensaje con la orden subscribe.13

La direccin electrnica de Francisco Jos es [email protected] o o e

Estndares de Sistema de Ficheros a

xxviii

Estndares de Sistema de Ficheros aEn el pasado, uno de los problemas que aquejaban las distribuciones de Linux, as como los paquetes separados, era que no hab un unico sistema de cheros aceptado. Esto generaba a incompatibilidades entre paquetes diferentes, y enfrentaba a usuarios y administradores con la tarea de localizar varios programas y cheros. Para mejorar esta situacin, en Agosto de 1993, varias personas formaron el Grupo del o Estndar de Sistema de Ficheros de Linux o Grupo FSSTND para abreviar, coordinado por a Daniel Quinlan. Despus de seis meses de discusin, el grupo present un dise o que muestra e o o n una estructura de sistema de cheros coherente y dene la localizacin de los programas o ms esenciales y cheros de conguracin. a o Este estndar se supone que va a implementarse en la gran mayor de distribuciones a a y paquetes de Linux. A lo largo de este libro, adems, asumiremos que todos los cheros a que se traten residen en el lugar especicado por este estndar; slo donde haya una larga a o tradicin que choque con esta especicacin se mencionarn emplazamientos alternativos. o o a El Estndar de Sistema de Ficheros de Linux puede obtenerse de la mayor de servidores a a FTP de Linux y sus imgenes; por ejemplo, puede encontrarlo en sunsite.unc.edu bajo a /pub/linux/docs. Daniel Quinlan, coordinador del grupo FSSTND puede ser localizado en [email protected].

Cap tulo 1

Introduccin a las Redes o1.1 Historia

La idea de red es probablemente tan vieja como la de las telecomunicaciones. Consideremos a la gente que viv en la edad de piedra, donde los tambores se habr utilizado a an para transmitir mensajes entre individuos. Suponga que el cavern cola A quiere invitar al cavern cola B a un partido de lanzamiento de rocas contra el otro, pero viven demasiado lejos como para que B oiga a A golpear su tambor. Cules son las opciones de A? Podr a a 1) ir a la choza de B, 2) hacerse con un tambor ms grande, o 3) pedirle a C, que vive a a mitad de camino entre los dos, que retransmita el mensaje. La ultima opcin es lo que se o llama una red. Claro, que ya ha pasado un tiempo desde los primeros intentos de nuestros antepasados. Hoy en d tenemos ordenadores que hablan entre s a travs de vastas conexiones de cables, a e bras opticas, microondas, y otros medios parecidos, para quedar para el partido del sabado. A continuacin trataremos sobre las maneras en que esto se realiza, pero olvidndonos de o a los cables, as como de la parte del partido. En esta Gu escribiremos sobre dos tipos de redes : las basadas en UUCP, y las basadas a en TCP/IP. Estos son conjuntos de protocolos y paquetes de software que proporcionan medios para transportar datos entre dos ordenadores. En este cap tulo veremos ambos tipos y discutiremos sus principios fundamentales. Deniremos una red como un conjunto de nodos que son capaces de comunicarse entre s a menudo contando con los servicios de varios nodos especializados que conmutan , datos entre los participantes. Los nodos suelen ser ordenadores, aunque no es necesario; podemos considerar tambin terminales X o impresoras inteligentes como nodos. Peque as e n

1

1.2. Redes UUCP

2

aglomeraciones de nodos tambin se llaman instalaciones. 1 e La comunicacin ser imposible sin alg n tipo de lenguaje o cdigo. En las redes de oro a u o denadores, estos lenguajes son llamados colectivamente protocolos. Sin embargo, no deber a pensar en protocolos escritos, sino ms bien en el cdigo de comportamiento altamente fora o malizado que se observa cuando se encuentran los jefes de estado. De un modo muy similar, los protocolos usados por las redes de ordenadores no son sino normas muy estrictas para el intercambio de mensajes entre dos o mas nodos.

1.2

Redes UUCP

UUCP es una abreviatura de Unix-to-Unix Copy (Copia de Unix a Unix). Comenz siendo o un paquete de programas para transferir cheros sobre l neas serie, programar esas transferencias, e iniciar la ejecucin de programas en el lugar remoto. Ha experimentado grandes o cambios desde su primera implementacin a nales de los setenta, pero aun es bastante o espartano en los servicios que ofrece. Su principal aplicacin es todav en redes de area o a metropolitana (WAN) basadas en enlaces telefnicos. o UUCP comenz a desarrollarse por los Laboratorios Bell en 1977 para la comunicacin o o entre sus laboratorios de desarrollo de Unix. A mediados de 1978, esta red ya conectaba a ms de 80 centros. Se ejecutaban aplicaciones de correo electrnico, as como de impresin a o o remota; sin embargo, el uso principal del sistema era distribuir software nuevo y mejoras.2 Hoy d UUCP ya no est connado en el entorno un x. Hay versiones comerciales a, a disponibles para diversas plataformas, incluyendo AmigaOS, DOS, TOS de Atari, etc. Una de las principales desventajas de las redes UUCP es su bajo ancho de banda. Por un lado, el equipo telefnico establece un l o mite r gido en la tasa mxima de transferencia. a Por otro lado, los enlaces UUCP raramente son conexiones permanentes; en su lugar, los nodos se llaman entre s a intervalos regulares. Es por ello, que la mayor del tiempo que a le lleva a un mensaje viajar por una red UUCP permanece atrapado en el disco de alg n u nodo, esperando al establecimiento de la prxima conexin. o o A pesar de estas limitaciones, a n hay muchas redes UUCP funcionando en todo el u mundo, utilizado principalmente por acionados, ya que ofrecen acceso de red a usuarios privados a precios razonables. La razn fundamental de la popularidad del UUCP es que es o barat simo comparado con tener el ordenador conectado al Gran Cable de Internet. Para hacer de su ordenador un nodo UUCP, todo lo que necesita es un mdem, software UUCP, o y otro nodo UUCP que desee suministrarle correo y noticias.1 2

N. del T.: Del ingls site e No parece que con el tiempo haya cambiado mucho esto. . .

1.2. Redes UUCP

3

1.2.1

Cmo usar UUCP o

La idea que hay detrs de UUCP es bastante simple: como su nombre indica, bsicamente a a copia cheros de un nodo a otro, pero tambin permite realizar ciertas acciones en el nodo e remoto. Suponga que le est permitido que su mquina acceda a un nodo hipottico llamado a a e swim, y le va ha hacer ejecutar el comando de impresin lpr para Ud. Entonces, podr o a 3 escribir lo siguiente en su l nea de comandos para que le imprima este libro en swim:$ uux -r swim!lpr !netguide.dvi

Esto hace que uux, un comando del repertorio UUCP, planique un trabajo para swim. Este trabajo consta del chero de entrada, netguide.dvi, y la peticin de enviar este chero o a lpr. La opcin -r indica a uux que no llame al sistema remoto inmediatamente, sino o que almacene el trabajo hasta que se establezca la prxima conexin. A esto se le llama o o spooling, o almacenamiento en la cola. Otra propiedad de UUCP es que permite reenviar trabajos y cheros a travs de varios e nodos, suponiendo que stos colaboren. Asumiremos que swim, el nodo del ejemplo antee rior, tiene un enlace UUCP con groucho, el cual mantiene un gran n mero de aplicaciones u un x. Para transferir el chero tripwire-1.0.tar.gz hasta su mquina deber indicarlo as a a :$ uucp -mr swim!groucho!~/security/tripwire-1.0.tar.gz trip.tgz

El trabajo creado pedir a swim que traiga el chero desde groucho, y lo env hasta a e su mquina, donde UUCP lo almacenar en trip.tgz y le noticar por correo la llegada a a a del chero. Esto ocurrir en tres pasos. Primero, su mquina env el trabajo a swim. a a a La siguiente vez que swim establezca contacto con groucho, se transferir el chero de a groucho a swim. El ultimo paso es la transferencia del mismo desde swim hasta su mquina. a Los servicios ms importantes que proporcionan las redes UUCP hoy en d son el a a correo electrnico y las noticias. Lo introduciremos brevemente y despus lo veremos en o e ms detalle. a El correo electrnico e-mail4 para abreviar le permite intercambiar mensajes con o usuarios de nodos remotos sin tener realmente que saber cmo acceder a estos nodos. La oSi usa bash, la shell GNU Bourne Again SHell, tendr que quitar los signos de exclamacin, porque los a o usa como su carcter de histrico. a o 4 En el idioma castellano comienzan a aparecer adaptaciones ms o menos afortunadas, como e-milio a3

1.3. Redes TCP/IP

4

tarea de dirigir un mensaje desde su mquina destino la realiza enteramente el sistema de a manejo de correo. En un entorno UUCP, el correo generalmente se transporta ejecutando el comando rmail en el nodo vecino, pasndole la direccin del receptor y el mensaje. rmail a o reenviar entonces el mensaje a otro nodo, y seguir as hasta que alcance el nodo destino. a a , Veremos esto en detalle en el cap tulo 13. La mejor forma de denir el servicio de noticias es considerarlo como un sistema de tabln de anuncios distribuido. Muy a menudo, este trmino se reere a las noticias de o e Usenet, que es, con mucho, la ms conocida red de intercambio de noticias, con un n mero a u 5 . Los or de nodos participantes estimado en 120.000 genes de Usenet se remontan a 1979, cuando, tras la aparicin del UUCP con el nuevo Unix V7, tres estudiantes graduados o tuvieron la idea de un intercambio de informacin general entre la comunidad Unix. Estos o escribieron algunos scripts, creando el primer sistema de noticias en red. En 1980, esta red conectaba duke, unc, y phs, y dos Universidades de Carolina del Norte, de forma aislada. Usenet creci ms todav posteriormente. Aunque su origen fue como una red basada en o a a UUCP, ya no est limitada a un unico tipo de redes. a La unidad bsica de informacin es el artculo, que puede ser enviado a una jerarqu a o a de grupos de noticias dedicadas a temas espec cos. La mayor de los nodos reciben a unicamente una seleccin de todos los grupos de noticias, que transportan una media de o 6 de art 60Mb culos por d a. En el mundo UUCP, las noticias generalmente se env a travs de un enlace UUCP, an e recolectando todos los art culos de los grupos de noticias solicitados, y empaquetandolos en varios lotes 7 . Estos se env al lugar receptor, donde se pasan al comando rnews que los an desempaqueta y procesa posteriormente. Finalmente, UUCP es tambin el medio elegido por muchos servidores de cheros que e ofrecen acceso p blico. Generalmente podr acceder a ellos llamando con UUCP, accediendo u a como usuario invitado, y transferindose los archivos desde un area de cheros p blicamente e u accesible. Estas cuentas de invitado tienen, a menudo, un nombre de acceso y password como UUCP/nuucp o algo similar.

1.3

Redes TCP/IP

Aunque UUCP puede resultar una eleccin razonable para enlaces de red mediante llamada o de bajo coste, hay muchas situaciones en las que su tcnica de almacenamiento y reenv se e o muestra demasiado inexible, por ejemplo en Redes de Area Local (LANs, o RALs). Estas5

Teniendo en cuenta que hace tiempo que se escribi este libro, es seguro que son muchos ms. o a De nuevo son datos no actualizados 7 N. del T.: Del ingls batches e6

1.3. Redes TCP/IP

5

redes estn compuestas generalmente por un peque o n mero de mquinas localizadas en el a n u a mismo edicio, o incluso en la misma planta, que estn interconectadas para proporcionar a un entorno de trabajo homogeneo. Es t pico que se quiera compartir cheros entre estos nodos, o ejecutar aplicaciones distribuidas en diferentes mquinas. a Estas tareas requieren una aproximacin completamente diferente a las redes. En lugar o de reenviar cheros completos con una descripcin del trabajo, todos los datos se fragmentan o en peque as unidades (paquetes), que se env inmediatamente al nodo destino, donde son n an reensamblados. Este tipo de redes son llamadas redes de intercambio de paquetes. Entre otras cosas, esto permite ejecutar aplicaciones interactivas a travs de la red. El coste de e esto supone, por supuesto, una complejidad adicional al software. La solucin que han adoptado los sistemas un x y muchos no-un x es conocida o como TCP/IP. En esta seccin echaremos un vistazo a sus conceptos bsicos. o a

1.3.1

Introduccin a las Redes TCP/IP o

El TCP/IP tiene sus or genes en un proyecto de investigacin fundado en Estados Unidos por o el DARPA (Defense Advanced Research Projects Agency, Agencia de Proyectos Avanzados de Investigacin en Defensa) en 1969. Esta fue una red experimental, la red ARPANET, o que paso a ser operativa en 1975, despus de haber demostrado ser un xito. e e En 1983, fue adoptado como estndar el nuevo conjunto de protocolos TCP/IP, y todos a los nodos de la red pasaron a utilizarlo. Cuando ARPANET por n dio paso a Internet (con la propia ARPANET integrndose en su existencia en 1990), el uso del TCP/IP se a hab extendido a redes ms alla de la propia Internet. Las ms destacables son las redes a a a locales un x, pero con la llegada de los equipos telefnicos digitales rpidos, como la RDSI, o a tambin tiene un futuro prometedor como transporte en redes telefnicas. e o Para ilustrar las explicaciones que demos en las siguientes secciones, tomaremos como ejemplo una red t pica: la de una universidad, concretamente la hipottica Universidad e Groucho Marx (GMU) situada, por ejemplo, en alg n lugar de Libertonia. En esta univeru sidad, la mayor de los departamentos mantienen sus propias redes de area local, mientras a que algunos comparten una, y otros poseen varias. Todos ellos estn interconectados, y a estn enganchados a Internet a travs de un solo enlace de alta velocidad. a e Supongamos una mquina Linux conectada a una LAN de nodos un x en el Departaa mento de Matemticas, y su nombre es erdos. Para acceder a un nodo del Departamento a de F sicas, por ejemplo quark, introducir el siguiente comando: a$ rlogin quark.physics Last login: Mon Feb 2 21:06:19 on tty1

1.3. Redes TCP/IP

6

Linux 2.0.0 #1 Sun Dec 7 19:07:05 MET 1997 (POSIX) [...]

En la l nea de comandos, introducir su nombre de acceso, pongamos que es andres, y a su clave. Entonces dispondr de una shell de quark, sobre la que puede escribir como si a estuviera sentado en la consola del sistema. Tras salir de la shell volver a tener la l a nea de comandos de su propia mquina. Acaba de utilizar una de las aplicaciones de interactividad a instantnea que proporciona TCP/IP: el acceso remoto. a Mientras est conectado a quark, podr tambin desear ejecutar una aplicacin X, e a e o como un programa de dibujo de funciones, o un visor de Postscript. Para indicar a esta aplicacin que desea ver las ventanas en su monitor local, debe modicar la variable de o entorno DISPLAY:$ export DISPLAY=erdos.maths:0.0

Si pone en marcha ahora su aplicacin, esta contactar con su servidor X en lugar del o a de quark, y mostrar todas las ventanas en su monitor. Por supuesto, esto requiere que a est ejecutando X11 en erdos. La clave est en que TCP/IP permite a quark y a erdos e a enviarse paquetes X11 en ambos sentidos para darle a Ud. la impresin de que est en un o a unico sistema. La red es casi transparente en este caso. Otra aplicacin muy importante en redes TCP/IP es NFS, abreviatura de Network File o System (Sistema de Ficheros de Red). Es otra forma de hacer trasparente la red, porque bsicamente permite montar jerarqu de directorios de otras mquinas, de modo que a as a aparezcan como sistemas de cheros locales. Por ejemplo, todos los directorios home, o personales, de los usuarios pueden estar en una mquina servidor central, desde la cual a montan los directorios el resto de mquinas de la LAN. El efecto de esto es que los usuarios a pueden acceder a cualquier mquina, y encontrarse a s mismos en el mismo directorio. a De forma similar, es posible instalar aplicaciones que requieren gran cantidad de espacio en disco (tales como TEX) en una unica mquina, y exportar estos directorios a otras mquinas. a a Volveremos sobre NFS en el cap tulo 11. Por supuesto, esto son slo ejemplos de lo que se puede hacer en un entorno de redes o TCP/IP: las posibilidades son casi ilimitadas. Ahora echaremos una mirada ms de cerca al modo en que trabaja TCP/IP. Esto es a necesario para comprender cmo y por qu tiene que congurar su mquina. Comenzaremos o e a examinando el hardware, y poco a poco recorreremos todo el camino.

1.3. Redes TCP/IP

7

1.3.2

Ethernets

El tipo de hardware ms utilizado en LANs es lo que comunmente conocemos como Ethernet. a Consta de un solo cable con los nodos colgando de l a travs de conectores, clavijas o e e transceptores. Las ethernet simples, son baratas de instalar, lo que unido a un ujo de transferencia neto de 10 Megabits por segundo avala gran parte de su popularidad. Hay tres tipos de Ethernet, en funcin de su cable, llamadas gruesas, nas y de par o trenzado. Tanto el no como el grueso utilizan cable coaxial, diferiendo en el grosor y el modo de conectar este cable a los nodos. El Ethernet no emplea conectores BNC con forma de T, que se pinchan en el cable y se enganchan a los conectores de la parte trasera del ordenador. El Ethernet grueso requiere que realice un peque o agujero en el cable, n y conecte un transceptor utilizando un conector vampiro. Entonces se pueden conectar uno o ms nodos al transceptor. Los cables Ethernet no y grueso pueden alcanzar una a distancia de 200 y 500 metros, respectivamente, y es por ello que se les llama tambin e 10base-2 y 10base-5. El par trenzado usa un cable hecho de dos hilos de cobre como las que se encuentran en las instalaciones telefnicas ordinarias, pero generalmente necesitan o hardware adicional. Tambin se conoce como 10base-T. e A pesar de que a adir un nodo a una Ethernet gruesa es un poco lioso, eso no tirar abajo n a la red; sin embargo, para a adir un nodo en una instalacin de cable no, se debe interrumpir n o el servicio de red al menos por unos minutos ya que se debe cortar el cable para insertar el conector. La mayor de gente preere el Ethernet no porque es barato: las tarjetas de PC pueden a encontrarse por unos 50 dlares americanos (unas 5000 pesetas), o incluso menos, y el cable o est por unos centavos el metro. Sin embargo, para instalaciones de gran escala, es ms a a apropiado el Ethernet grueso. Por ejemplo, la Ethernet del Departamento de Matemticas a de la GMU utiliza Ethernet gruesa, de modo que no se interrumpe el trco cada vez que a se a ade un nodo a la red. n Uno de los inconvenientes de la tecnolog Ethernet es su limitada longitud de cable, a que imposibilita cualquier uso fuera de las LANs. Sin embargo, pueden enlazarse varios segmentos de Ethernet entre s utilizando repetidores, puentes o encaminadores 8 . Los repe tidores simplemente copian las se ales entre dos o ms segmentos, de forma que todos los n a segmentos juntos act an como si fuese una unica Ethernet. Debido a requisitos de tiempos, u no puede haber ms de cuatro repetidores entre cualquier par de nodos de la red. Los a puentes y encaminadores son ms sosticados, analizan los datos de entrada y los reenv a an solo si el nodo receptor no est en la Ethernet local. a Ethernet funciona como un sistema de bus, donde un nodo puede mandar paquetes (o8

N. del T.: Respectivamente, repeaters, bridges y routers

1.3. Redes TCP/IP

8

tramas) de hasta 1500 bytes a otro nodo de la misma Ethernet. Cada nodo se direcciona por una direccin de seis bytes grabada en el rmware de su tarjeta Ethernet. Estas direcciones o se especican generalmente como una secuencia de n meros hexadecimales de dos d u gitos separados por dos puntos, como en aa:bb:cc:dd:ee:. Una trama enviada por una estacin la ven todas las estaciones conectadas, pero slo el o o nodo destinatario la toma y la procesa. Si dos estaciones intentan emitir al mismo tiempo, se produce una colisin, que se resuelve por parte de las dos estaciones abortando el env o o, y reintentandolo al cabo de un rato.

1.3.3

Otros tipos de Hardware

En instalaciones mayores, como la Universidad de Groucho Marx, Ethernet no es el unico tipo de red que puede utilizarse. En la Universidad de Groucho Marx cada LAN de un departamento est enlazada a la troncal del campus, que es un cable de bra optica funcioa nando en FDDI (Fiber Distributed Data Interface). FDDI emplea un enfoque totalmente diferente para transmitir datos, que bsicamente implica el env de un n mero de testigos, a o u de modo que una estacin slo pueda enviar una trama si captura un testigo. La principal o o ventaja de FDDI es una velocidad de hasta 100 Mbps, y una longitud de cable mxima de a hasta 200 km. Para enlaces de red de larga distancia, se utiliza frecuentemente un tipo distinto de equipos, que se basa en el estndar X.25. Muchas de las llamadas Redes P blicas de Datos, a u como Tymnet en Estados Unidos, Datex-P en Alemania, o Iberpac en Espa a, ofrecen este n servicio. X.25 requiere un hardware especial, llamado Ensamblador/Desensamblador de Paquetes o PAD. X.25 dene un conjunto de protocolos de red de derecho propio, pero sin embargo se usa frecuentemente para conectar redes bajo TCP/IP y otros protocolos. Ya que los paquetes IP no se pueden convertir de forma simple en X.25 (y viceversa), stos e deben ser encapsulados en paquetes X.25 y enviados a travs de la red. e Frecuentemente, los radioacionados usan sus propios equipos de radio para conectar sus ordenadores en red; esto se llama packet radio o ham radio. El protocolo utilizado por el packet radio es el llamado AX.25, que deriva del X.25. Otras tcnicas implican el uso de las lentas pero baratas l e neas serie para acceder bajo demanda. Esto requiere aun otros protocolos para la transmisin de paquetes, como SLIP o o PPP, que se describen ms adelante. a

1.3. Redes TCP/IP

9

1.3.4

El Protocolo IP (Internet Protocol)

Por supuesto, Ud. no querr que su red est limitada a una Ethernet. Idealmente, Ud. a e desear poder acceder a la red sin importarle ni el hardware del que dispone ni el n mero a u de subestaciones. Por ejemplo, en instalaciones grandes como la Universidad de Groucho Marx, habr varias Ethernets separadas, que han de conectarse de alguna manera. En la a GMU, el departamento de matemticas tiene dos Ethernets: una red de mquinas rpidas a a a para profesores y graduados, y otra con mquinas ms lentas para estudiantes. Ambas redes a a estn colgadas de la red troncal FDDI del campus. a Esta conexin se gestiona con un nodo dedicado, denominado pasarela, o gateway, que o maneja los paquetes entrantes y salientes copindolos entre las dos Ethernets y el cable de a bra optica. Por ejemplo, si se encuentra en el Departamento de Matemticas, y quiere a acceder a quark situada en la LAN del Departamento de F sicas desde su mquina Linux, a el software de red no puede mandar paquetes a quark directamente, porque no est en a la misma Ethernet. Por tanto, tiene que conar en la pasarela para que act e como reu transmisor. La pasarela (llammosla sophus) reenv entonces estos paquetes a su pasarela e a homloga niels del Departamento de F o sicas, usando la troncal, y por n niels los entrega a la mquina destino. El ujo de datos entre erdos y quark se muestra en la gura 1.1 a (con disculpas a Guy L. Steele). Este esquema de env de datos al nodo remoto se llama encaminamiento, y en este o contexto a los paquetes se les denomina a menudo datagramas. Para facilitar las cosas, el intercambio de datagramas est gobernado por un unico protocolo que es independiente a del hardware utilizado: IP, o Internet Protocol. En el cap tulo 2, trataremos el IP y el encaminamiento en mayor detalle. El principal benecio del IP es que convierte a redes f sicamente distintas en una red aparentemente homognea. A esto se le llama internetworking (interconexin de redes), y e o a la resultante meta-red se la denomina internet. Observe aqu la sutil diferencia entre una internet y La Internet. El ultimo es el nombre ocial de una internet global particular. Claro que el IP tambin necesita un esquema de direccionamiento independiente del e hardware. Esto se consigue asignando a cada nodo un n mero unico de 32 bits, que dene u su direccin IP. Una direccin IP se escribe normalmente como 4 n meros en decimal, uno o o u por cada divisin de 8 bits, y separados por puntos. Por ejemplo, quark podr tener una o a direccin IP 0x954C0C04, que se escribir como 149.76.12.4. A este formato se le llama o a notacin de puntos. o Se dar cuenta de que ahora tenemos tres tipos distintos de direcciones: primero, tea nemos el nombre del nodo, quark, despus tenemos las direcciones IP, y por n estn las e a direcciones hardware, como la direccin Ethernet de 6 bytes. De alguna forma todas ellas o deben relacionarse, de modo que cuando escriba rlogin quark, se le pueda pasar la direc-

1.3. Redes TCP/IP

10

Dorsal del Campus (FDDI)

2niels sophus

Ethernet Fsicas

Ethernet Matemticas a

3

1

quark

erdos

Figura 1.1: Los tres pasos para enviar un datagrama desde erdos a quark.

1.3. Redes TCP/IP

11

cin IP al software de red; y cuando el nivel IP env datos a la Ethernet del Departamento o e de F sicas, de alg n modo tiene que encontrar a qu direccin Ethernet corresponde la u e o direccin IP. Lo cual no resulta trivial. o No entraremos en esto aqu sino que lo dejamos para el cap , tulo 2. De momento, es suciente con indicar que estos pasos para encontrar las direcciones se llaman resolucin o de nombres, para mapear nombres de nodo con direcciones IP, y resolucin de direcciones, o para hacer corresponder estas ultimas con direcciones hardware.

1.3.5

IP en L neas Serie, SLIP

Para l neas serie se usa frecuentemente el estndar de facto conocido como SLIP o Serial a Line IP (IP sobre l nea serie). Una modicacin del SLIP es el CSLIP, o SLIP Comprimido, o que realiza compresin de las cabeceras IP para aprovechar el bajo ancho de banda que o proporcionan los enlaces serie.9 Un protocolo serie distinto es el PPP, o Point-to-Point Protocol (Protocolo Punto a Punto). PPP dispone de muchas ms caracter a sticas que SLIP, incluyendo una fase de negociacin del enlace. Su principal ventaja sobre SLIP es, sin o embargo, que no se limita a transportar datagramas IP, sino que se dise o para permitir la n transmisin de cualquier tipo de datagramas. o

1.3.6

El Protocolo de Control de Transmisin, TCP o

Pero la historia no se acaba con el env de datagramas de un nodo a otro. Si desea acceder o a quark, necesita disponer de una conexin able entre su proceso rlogin en erdos y el o proceso de shell en quark. Para ello, la informacin enviada en uno y otro sentido debe o dividirse en paquetes en el origen, y ser reensamblada en un ujo de caracteres por el receptor. Esto que parece trivial, implica varias tareas complejas. Una cosa importante a saber sobre IP es que, por s solo, no es able. Suponga que diez personas de su Ethernet comienzan a transferirse la ultima versin de XFree86 del servidor o de FTP de GMU. La cantidad de trco generada por esto podr ser excesiva para que a a la maneje la pasarela, porque es demasiado lenta, y anda escasa de memoria. Si en ese momento Ud. env un paquete a quark, sophus podr tener agotado el espacio del buer a a durante un instante y por tanto no ser capaz de reenviarlo. IP resuelve este problema a simplemente descartndolo. El paquete se pierde irrevocablemente. Lo cual traslada la a responsabilidad de comprobar la integridad y exactitud de los datos a los nodos extremos, y su retransmisin en caso de error. oSLIP est descrito en la norma RFC 1055. La compresin de cabeceras CSLIP, basada en l, se describe a o e en la RFC 1144.9

1.3. Redes TCP/IP

12

De esto se encarga otro protocolo, TCP, o Transmission Control Protocol (Protocolo de Control de la Transmisin), que construye un servicio able por encima de IP. La propiedad o esencial de TCP es que usa IP para darle la impresin de una conexin simple entre los o o procesos en su equipo y la mquina remota, de modo que no tiene que preocuparse de cmo a o y sobre qu ruta viajan realmente sus datos. Una conexin TCP funciona bsicamente e o a como una tuber de doble sentido en la que ambos procesos pueden escribir y leer; puede a imaginarla como una conversacin telefnica. o o TCP identica los extremos de tal conexin por las direcciones IP de los dos nodos o implicados, y el n mero de los llamados puertos de cada nodo. Los puertos se pueden u ver como puntos de enganche para conexiones de red. Si vamos a explotar el ejemplo del telfono un poco ms, uno puede comparar las direcciones IP con los prejos de area (los e a n meros representar ciudades), y los n meros de puerto con los cdigos locales (n meros u an u o u que representan telfonos de personas concretas). e En el ejemplo de rlogin, la aplicacin cliente (rlogin) abre un puerto en erdos, y se o conecta al puerto 513 de quark, en el que se sabe que est escuchando el servidor rlogind. a Esto establece una conexin TCP. Usando esta conexin, rlogind realiza el procedimiento o o de autorizacin, y entonces muestra la shell. La entrada y salida estndar de la shell se o a redirigen a la conexin TCP, de modo que cualquier cosa que escriba a rlogin en su mquina o a ser pasado a travs del canal TCP y entregado a la shell como entrada estndar. a e a

1.3.7

El Protocolo de Datagramas de Usuario, UDP

Tambin es cierto que TCP no es el unico protocolo de usuario en redes TCP/IP. Aunque e adecuado para aplicaciones como rlogin, la sobrecarga que impone es prohibitiva para aplicaciones como NFS. Por contra, ste usa un protocolo derivado de TCP llamado UDP, o e User Datagram Protocol (Protocolo de Datagramas de Usuario). De igual modo que TCP, UDP tambin permite que una aplicacin contacte con un servicio en un puerto concreto e o de la mquina remota, pero no establece una conexin para ello. En cambio, puede usarlo a o para enviar paquetes sueltos al servicio destino de ah su nombre. Suponga que ha montado la jerarqu del directorio TEX del servidor de NFS central del a A departamento, galois, y desea ver un documento que describe como usar L TEX. Arranca su editor, y lee el chero completo. Sin embargo, le llevar demasiado tiempo establecer a una conexin TCP con galois, enviar el chero, y liberarla de nuevo. En cambio, se hace o una peticin a galois, que env el chero en un par de paquetes UDP, que es mucho ms o a a rpido. Sin embargo, UDP no se hizo para controlar la prdida o corrupcin de paquetes. a e o Es responsabilidad de la aplicacin en este caso NFS tener en cuenta esto. o

1.3. Redes TCP/IP

13

1.3.8

Ms sobre Puertos a

Los puertos se pueden ver como puntos de anclaje para conexiones de red. Si una aplicacin o quiere ofrecer un cierto servicio, se engancha a un puerto y espera a los clientes (a esto tambin se le llama escuchar en un puerto). Un cliente que quiera usar este servicio consigue e un puerto libre en su nodo local, y se conecta al puerto del servidor en el nodo remoto. Una propiedad importante de los puertos es que una vez que se ha establecido una conexin entre el cliente y el servidor, otra copia del servidor puede engancharse al puero to servidor y esperar a ms clientes. Esto permite, por ejemplo, varios accesos remotos a simultneos al mismo nodo, usando todos ellos el mismo puerto 513. TCP es capaz de a distinguir unas conexiones de otras, ya que todas ellas provienen de diferentes puertos o nodos. Por ejemplo, si accede dos veces a quark desde erdos, entonces el primer cliente rlogin usar el puerto local 1023, y el segundo usar el puerto n mero 1022; sin embargo, a a u ambos se conectarn al mismo puerto 513 de quark. a Este ejemplo muestra el uso de puertos como puntos de encuentro, donde un cliente contacta con un puerto espec co para obtener un servicio espec co. Para que un cliente sepa el n mero de puerto adecuado, se ha tenido que llegar a un acuerdo entre los admiu nistradores de los dos sistemas para asignar estos n meros. Para servicios ampliamente u usados, como rlogin, estos numeros tienen que administrarse centralmente. Esto lo realiza el IETF (o Internet Engineering Task Force), que regularmente publica un RFC (Request For Comment) denominado Assigned Numbers (N meros Asignados). Describe, entre otras u cosas, los n meros de puerto asignados a servicios reconocidos. Linux utiliza un chero que u mapea nombres con n meros, llamado /etc/services. Se describe en la seccin 9.3. u o Merece la pena indicar que aunque las conexiones TCP y UDP se basan en puertos, estos n meros no entran en conicto. Esto signica que el puerto TCP 513, por ejemplo, es u diferente del puerto UDP 513. De hecho, estos puertos sirven como puntos de acceso para dos servicios diferentes, como rlogin (TCP) y rwho (UDP).

1.3.9

La Librer de Sockets a

En sistemas operativos un x, el software que realiza todas las tareas y protocolos descritos anteriormente es generalmente parte del kernel, y por tanto tambin del de Linux. El e interface de programacin ms com n en el mundo un x es la Librer de Socket de Bero a u a keley, Berkeley Socket Library. Su nombre proviene de una analog popular que ve los a puertos como enchufes, y conectarse a un puerto como enchufarse. Proporciona la llamada bind(2) para especicar un nodo remoto, un protocolo de transporte, y un servicio al que un programa pueda conectarse o escuchar (usando connect(2), listen(2), y accept(2)). La librer de sockets, sin embargo, es algo ms general, ya que proporciona no solo una clase a a

1.4. Redes con Linux

14

de sockets basados en TCP/IP (los sockets AF INET ), sino tambin una clase que maneja e conexiones locales a la mquina (la clase AF UNIX ). Algunas implementaciones pueden a manejar tambin otras clases, como el protocolo XNS ((Xerox Networking System), o X.25. e En Linux, la librer de sockets es parte de la librer C estndar libc. Actualmente a a a slo soporta los sockets AF INET y AF UNIX, pero se hacen esfuerzos para incorporar el o soporte de los protocolos de red de Novell, de modo que se a adir eventualmente una o n an ms clases de sockets. a

1.4

Redes con Linux

Siendo el resultado del esfuerzo concentrado de programadores de todo el mundo, Linux no habr sido posible sin la red global. As que no sorprende que ya en los primeros pasos del a desarrollo, varias personas comenzaran a trabajar para dotarlo de capacidades de red. Casi desde el principio exist ya una implementacin de UUCP para Linux; y fue en el oto o a o n de 1992 cuando se comenz a desarrollar el soporte de TCP/IP, cuando Ross Biro y otros o crearon lo que ahora se conoce como Net-1. Despus de que Ross dejara el desarrollo activo en Mayo de 1993, Fred van Kempen e comenz a trabajar en una nueva implementacin, reescribiendo gran parte del cdigo. o o o Este esfuerzo continuado se conoce como Net-2. En el verano de 1992 sali la primera o versin p blica de Net-2d (como parte del kernel 0.99.10), y ha sido mantenida y a