Configurar una conexión de red (Ethernet) en Debian GNU/Linux

Cómo configurar “a mano”, es decir, sin DHCP, los parámetros más importantes de una tarjeta de red en GNU/Linux. Hay otras posibilidades (como etherconf) pero la finalidad de esta receta es utilizar los comandos básicos disponibles en los sistemas GNU/Linux

Preinstalación

Antes de comenzar debemos pedirle al administrador de la red que nos proporciones los siguientes datos:

  • Dirección IP que le asignaremos a nuestro equipo (en los ejemplos será 161.67.28.216).
  • Máscara de subred asignada.
  • Dirección de broadcast.
  • Dirección IP del router de la subred (en los ejemplos, 161.67.28.1).
  • Dirección IP de el/los DNS (en nuestro ejemplo:161.67.28.4 y 161.67.26.34).

Configuración

Veamos la configuración de la tarjeta:

  ~# ifconfig
  eth0      Link encap:Ethernet  HWaddr 00:E0:4C:00:4C:79  
            inet addr:161.67.28.216  Bcast:161.67.28.255  Mask:255.255.255.0
            UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
            RX packets:30360 errors:0 dropped:0 overruns:0 frame:0
            TX packets:9987 errors:0 dropped:0 overruns:0 carrier:0
            collisions:1590 txqueuelen:100
            RX bytes:7352067 (7.0 MiB)  TX bytes:1209496 (1.1 MiB)
            Interrupt:11 Base address:0xd000 

lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 UP LOOPBACK RUNNING MTU:16436 Metric:1 RX packets:722 errors:0 dropped:0 overruns:0 frame:0 TX packets:722 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:98985 (96.6 KiB) TX bytes:98985 (96.6 KiB)

Si la configuración que nos muestra para el dispositivo en cuestión es correcta, pasamos al enrutado. En caso contrario, lo primero que debes hacer el desactivar la interfaz:

# ifconfig eth0 down

Para levantar el interfaz de red con los nuevos parámetros se utilizará la instrucción ifconfig. Quedaría algo así:

~# ifconfig eth0 up netmask 255.255.255.0 broadcast 161.67.27.0 161.67.28.216

Para comprobar que se ha añadido bien, utilizaremos de nuevo ifconfig

~# ifconfig

Enrutado

Para ver la tabla de enrutamiento actual, escribe

~# route

Por defecto, el sistema añade la entrada de enrutamiento correspondiente a la red local. Debería ser algo así:

  ~# route
  Kernel IP routing table
  Destination Gateway Genmask         Flags Metric Ref  Use Iface
  localnet    *       255.255.255.0   U     0      0      0 eth0 

Quizá, en lugar de localnet aparezca una dirección IP del tipo: 161.67.28.0

En este momento, debes poder hacer ping a cualquier máquina de la red local.

  ~$ ping 161.67.28.150
  PING 161.67.28.150 (161.67.28.150): 56 data bytes
  64 bytes from 161.67.28.150: icmp_seq=0 ttl=255 time=2.0 ms
  64 bytes from 161.67.28.150: icmp_seq=1 ttl=255 time=0.3 ms
  64 bytes from 161.67.28.150: icmp_seq=2 ttl=255 time=0.3 ms

—- 161.67.28.150 ping statistics —- 5 packets transmitted, 5 packets received, 0% packet loss round-trip min/avg/max = 0.3/0.6/2.0 ms

Por tanto, queda indicar quién es el router que te permita comunicarte con la red exterior, es lo que se llama el enrutador “por defecto” o “pasarela de enlace”:

~# route add default gw 161.67.28.1

Siendo la dirección IP indicada la del router para nuestra red local. Si miramos ahora la tabla de enrutamiento, aparecerá una nueva entrada:

  ~# route 
  Kernel IP routing table
  Destination   Gateway       Genmask         Flags  Metric  Ref Use Iface 
  161.67.28.0   *             255.255.255.0   U      0       0   0   eth0
  default       161.67.28.1   0.0.0.0         UG     0       0   0   eth0

Ya puedes hacer un ping a un host conectado fuera de la red local (indicando su IP, ya que aún no puedes resolver nombres)

El fichero /etc/network/interfaces

Todo lo anterior se puede dejar escrito en el fichero de configuración /etc/network/interfaces, para que al reiniciar se mantengan esos valores. El contenido de dicho fichero para la configuración equivalente a la anterior sería:

auto lo
iface lo inet loopback
 
auto eth0
iface eth0 inet static
             address 161.67.28.216
             netmask 255.255.255.0
             gateway 161.67.28.1

Configuración del DNS

Modifica el archivo /etc/resolv.conf o lo crearemos, si no existe, con la siguiente información:

  ### Comentarios varios
  domain inf-cr.uclm.es  
  nameserver 161.67.26.34
  nameserver 161.67.27.4 

Si queremos acceder a una máquina por medio de un nombre que no está en el DNS, podemos editar el archivo /etc/hosts e incluir en él una línea del tipo:

  161.67.27.132 arco.inf-cr.uclm.es arco

Ya se puede hacer acceder a cualquier máquina indicando su nombre, por ejemplo:

~# ping www.thelordoftherings.com

Enlaces

Comments

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

/etc/hosts

Muy buena la explicacion, pero tengo una duda, si mi equipo estuviera en una red con varios ordenadores tendria que meter a mano todas las ip/nombre de cada equipo con el fichero /etc/hosts o hay alguna manera de que se añadan automaticamente?

CONFIGURANDO RED DHCP MANUALMENTE

Para hacerlo en otras maquinas es sin ingresar los datos a mano, se puede hacer un script que contenga todos los datos de la maquina, lo unico que cambiaría sería la IP de cada computadora conectada a la red.