En este ejemplo tendremos 2 ordenadores
conectados por 2 tarjetas ne2000 compatibles y PCI cuyos
parámetros serán los siguientes:
Dirección de la red: 192.168.0.0
Máscara de subred: 255.255.255.0
Dirección de broadcast de la red: 192.168.0.255
Máquina 1:
Dirección IP elegida: 192.168.0.1
Nombre: Linux.es,
S.O: Linux.
Máquina 2:
Dirección IP elegida: 192.168.0.2
nombre: Windows.es
S.O: Windows 9x
Configuración del Servidor
Linux
La compilación del kernel
es un paso muy habitual y para compilar el kernel
se deben de tener instalados los fuentes y ficheros
de cabecera del kernel, todo el proceso de compilación
debe hacerse en el directorio /usr/src/linux, y se
basa en una serie de comandos y configuraciones que
se realizan de una forma muy rápida y sencilla. Una
vez configurada la tarjeta de red en el kernel, al
iniciarlo debería aparecer una línea parecida a la
siguiente (en el caso de ser PCI y estar integrada
en el núcleo:
ne2k-pci.c:v0.99L 2/7/98 D. Becker/P. Gortmaker
ne2k-pci.c: PCI NE2000 clone "RealTek RTL-8029" at
I/O 0x6100, IRQ 11.
Si es ISA la mejor opción es instalarla como módulo,
y especificar en el fichero de configuración de módulos
(/etc/conf.modules) la configuración de la tarjeta,
en una línea similar a la siguiente (para distribuciones
Redhat):
alias eth0 ne
options ne io=0x6100 irq=11
Especificación de la dirección IP
Nuestro siguiente paso
es asignar a la tarjeta de red la dirección IP correcta.
En el caso del servidor Linux esta IP era 192.168.0.1,
dirección que habrá que ligar al interface de red
eth0. Para distribuciones Linux Mandrake esto se hace
editando (por ejemplo con el editor joe) el fichero
/etc/sysconfig/network-scripts/ifcfg-eth0 y modificando
los diferentes parámetros que contiene para especificar
los de nuestra red:
DEVICE="eth0"
IPADDR="192.168.0.1"
NETMASK="255.255.255.0"
NETWORK="192.168.0.0"
BROADCAST=192.168.0.255
ONBOOT="yes"
BOOTPROTO="none"
USERCTL=no
IPXNETNUM_802_2=""
IPXPRIMARY_802_2="no"
(+ otros parámetros para IPX no necesarios).
Para forzar la lectura de este fichero y por tanto
la lectura de los nuevos parámetros para el interface
eth0 ejecutamos una de las 2 órdenes siguientes (según
donde esté el script ifup):
./ifup eth0
ifup eth0
La primera de las órdenes se debe ejecutar si el script
ifup está en el directorio actual, mientras que la
segunda es para el caso en que éste esté en otro path.
El siguiente paso es comprobar
si la tarjeta de red se ha instalado y configurado
correctamente, realizando un ping a la dirección IP
asociada a eth0, y esperando que ésta nos lo responda
correctamente:
[carlitos] [/dos/d/info/monkiki/redes]$ ping 192.168.0.1
PING 192.168.0.1 (192.168.0.1): 56 data bytes
64 bytes from 192.168.0.1: icmp_seq=0 ttl=64 time=0.2
ms
64 bytes from 192.168.0.1: icmp_seq=1 ttl=64 time=0.2
ms
64 bytes from 192.168.0.1: icmp_seq=2 ttl=64 time=0.2
ms
(Ctrl+C)
--- 192.168.0.1 ping statistics ---
3 packets transmitted, 3 packets received, 0% packet
loss
round-trip min/avg/max = 0.2/0.2/0.2 ms
Configuración del Hostname
Para hacer accesibles
las máquinas por su nombre (no sólo por su dirección
IP), es necesario modificar algunos ficheros de configuración
de Linux, entre ellos el fichero /etc/hosts, una base
de datos de direcciones IP y nombres asociados, que
además permite incluir alias o nombres cortos para
las máquinas. Un ejemplo de /etc/hosts para nuestros
propósitos (incluyendo ya la dirección IP de la otra
máquina) sería el siguiente:
# Ejemplo de /etc/hosts (líneas # son comentarios)
# Las separaciones entre cadenas son tabuladores.
# Direccion IP Alias Nombre y dominio
127.0.0.1 localhost localhost.localdomain
192.168.0.1 Linux Linux.es
192.168.0.2 Windows Windows.es
Para distribuciones RedHat deberemos modificar además
el fichero /etc/sysconfig/network con parámetros como
los que siguen (de acuerdo a nuestra red):
NETWORKING=yes
FORWARD_IPV4=no
HOSTNAME="Linux.es"
DOMAINNAME=es
GATEWAY=
GATEWAYDEV=
NISDOMAIN=""
El fichero /etc/host.conf debe contener las siguientes
líneas para configuración del servidor DNS (el encargado
de transformar nombres en las direcciones IP correctas):
order hosts, bind
multi on
Si también hemos configurado el cliente Windows también
deberíamos poder pingear hacia su IP o hostname. Por
otra parte,
si en lugar de (o además de) un cliente Windows quisiéramos
configurar otro cliente Linux, la configuración se
realizaría con los
mismo parámetros que la máquina servidora Linux.
Configuración del cliente Windows
La configuración del cliente Windows suele ser la
más problemática de ambas: si éste no detecta su tarjeta
de red (aunque sea Plug&Play es muy habitual)
y no se dispone de los discos de drivers del fabricante
tendrá que sacar la tarjeta de red de su slot, arrancar,
apagar, y volver a conectar la tarjeta (para que Windows
detecte el cambio e instale el nuevo hardware). Tras
esto deberemos comprobar que la dirección del puerto
E/S y la IRQ asignadas con Linux coinciden con las
de la tarjeta (que se suelen cambiar mediante una
utilidad incluida en los diskettes de drivers de la
misma). Para esto miramos en el Panel de control,
Red, Propiedades, y examinamos los valores asignados,
cambiándolos si no son correctos.
Tras esto debemos asignar
a este nodo de la red la dirección IP que decidimos
en un principio: la 192.168.0.2; esto se realiza desde
el Panel de control, Red, Propiedades TCP/IP (de la
tarjeta de red, no las genéricas), aquí debemos especificar
los siguientes datos:
Dirección IP -> Especificar dirección IP ->
192.168.0.2
Máscara de subred -> 255.255.255.0
Identificación -> Nombre del PC -> WINDOWS
Grupo de trabajo -> GRUPO
Descripción del PC -> Es indiferente.
Después debemos crear la base de datos de nombres
y direcciones IP, situada en el fichero c:windowshosts,
donde el formato es IP+Nombre+Apodo, y los espacios
entre campos son tabuladores:
127.0.0.1 localhost
192.168.0.1 Linux.es Linux
192.168.0.2 Windows.es Windows
Si posteriormente pensamos instalar Samba (un servicio
de Linux para compartir impresoras y archivos con
clientes Linux o Windows), podemos compartir cualquiera
de estas dos cosas en Configuración, Compartir impresoras
y archivos, y utilizando el botón derecho del ratón
sobre las carpetas, para que aparezca una nueva opción
llamada Compartir. En principio si no vamos a utilizar
Samba esto no es necesario. Como suele ser habitual,
después de los cambios habrá que reiniciar el equipo
para que estos tengan efecto, tras lo cual deberemos
comprobar si la tarjeta de red está funcionando haciendo
ping a la dirección de red o al equipo Linux.
Probando la Red
La mejor manera de probar la red es, desde cualquiera
de los clientes, hacer un ping, telnet o ftp al servidor
Linux. En el caso de que éste tenga los puertos correspondientes
abiertos (configurable en el fichero /etc/inetd.conf),
podremos entrar en el servidor Linux si disponemos
de cuenta en él, e incluso desde el telnet de Windows
podremos trabajar con Linux o con X Window (utilizando
un cliente de X Window como Mi/X o VNC). No olvide
que lo contrario (hacer un telnet de un equipo Linux
a un Windows) no es posible porque Windows 95 no tiene
capacidades de servidor.
También será posible instalar
diferentes servicios en la máquina servidora Linux,
como por ejemplo Apache (servidor http free). Si el
daemon está corriendo (es decir, durante el arranque
aparece un mensaje de starting httpd...), tecleando
en cualquier navegador de las máquinas clientes la
dirección http://linux.es/ nos estaría apareciendo
en dicho navegador el fichero /home/httpd/index.html.
Es decir, la jerarquía de ficheros y directorios que
aparece en /home/httpd será la que aparecerá en http://linux.es/.
Esto nos permite la creación de Webs o incluso un
rápido sistema de testeo de CGIs y Webs sin tener
que subirlas a Internet (ideal para los desarrolladores
de Webs). Si no tenemos activado el servidor de http
basta con instalar Apache (el .rpm instala automáticamente
el servicio) o ejecutar el comando "/etc/rc.d/init.rd/httpd
start". También puede montarse en Linux un ftp anónimo
o un servidor de Irc. Las posibilidades son infinitas
con Linux...
Documento
original de Santiago Romero (http://www.ctv.es/USERS/sromero/)