Configuracion de red en clientes linux

De WikiEtl
Saltar a: navegación, buscar

A la hora de configurar la red de un cliente linux de las aulas debemos tocar dos ficheros principales:

-/etc/hostname--> donde ponemos el nombre de la maquina.

Ejemplo:dit156

-/etc/network/ADDRESS--> donde ponemos el ultimo numero de la direccion IP.

Ejemplo: si la ip es 163.117.168.156 escribiriamos 156.

A partir de estos dos ficheros se configuran los interfaces de red de un equipo, a continuacion veremos los ficheros y scripts que intervienen en dicha configuracion:

-/etc/network/cliente.sh: Se trata de un script que devuelve en funcion del nombre de la maquina que aparece en /etc/hostname el tipo de equipo , estos pueden ser: jbit, monitor, dit o default en el caso de los doc, lm o it. Ejemplo del dit156:

   ->bash-3.1$ /etc/network/client.sh
   ->dit

-/etc/network/interfaces: Se trata del fichero principal de configuracion de cada interfaz, lo que hace es ejecutar el script de cliente.sh, en funcion de su resultado configura por el eth0 y el eth1 de esa maquina, asignandole el gateway de dicha red, configurando el resto de parametros de red mediante el script /etc/network/if-config pasandole como parametros el nombre del interfaz a configurar (eth0 o eth1) y el tipo de equipo obtenido al ejecutar el client.sh.

-/etc/network/config-tipoEquipo: Fichero de configuracion que asigna valor a unas variables en funcion del tipo de equipo en el que nos encontremos. Ejemplo dit156:

  IPADDR=163.117.168.156
  NETMASK=255.255.255.0
  BROADCAST=163.117.168.255
  GATEWAY=163.117.168.2

-/etc/network/if-config @nombre_interfaz @tipo_de_equipo: Se trata del fichero de configuracion da valor a los parametros de red de cada equipo. En primer obtiene el varlor del ultimo numero de la ip a partir del /etc/network/ADDRESS, luego invoca el script /etc/network/config-@tipo_de_equipo, donde se almacenan los valores de los parametros de red en variables, a partir de las cuales a continuacion configura el interfaz @nombre_interfaz y lo levanta. Ejemplo dit156:

-bash-3.1$ sudo sh -x /etc/network/if-config eth0 dit
++ cat /etc/network/ADDRESS   //Obtiene el el ultimo numero de la ip
++ tr -d '[:blank:][\n][\t]'
+ SUFIX=156
+ test 156 -ge 1
+ test 156 -le 255
+ . /etc/network/config-dit  //Configura los parametros de red
++ IPADDR=163.117.168.156
++ NETMASK=255.255.255.0
++ BROADCAST=163.117.168.255
++ GATEWAY=163.117.168.2
+ ip link set eth0 up    //Levanta el interfaz
+ echo 1
1
+ ip addr add 163.117.168.156/24 brd 163.117.168.255 dev eth0  //Configura el interfaz con los parametros
RTNETLINK answers: File exists
+ echo 2
2 
+ '[' -n 163.117.168.2 ']'
+ echo 3
3
+ ip route add default via 163.117.168.2 dev eth0           //Configura la tabla de rutas
RTNETLINK answers: File exists
+ echo 4
4

Dependiendo de los equipos tenemos diferentes tarjetas de red y estás ejecutan un módulo distinto.

Doc ->       Módulo: via_rhine   Tarjeta: VIA Technologies, Inc. VT6102 [Rhine-II]
Dit ->       Módulo: e1000e      Tarjeta: Intel Corporation 82567V-2 Gigabit Network Connection
Jbit ->      Módulo: r8169       Tarjeta: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 06)
it(1-10) ->  Módulo: sky2        Tarjeta: VIA Technologies, Inc. VT6102 [Rhine-II]
it(10-20) -> Módulo: sky2        Tarjeta: Intel Corporation 82573V Gigabit Ethernet Controller (Copper)
lm ->        Módulo: sky2        Tarjeta: Marvell Technology Group Ltd. 88E8053 PCI-E Gigabit Ethernet Controller (rev 19)
Nuevos ->    Módulo: alx         Tarjeta: Ethernet controller: Atheros Communications Inc. AR8161 Gigabit Ethernet (rev 10)
PCI ->       Módulo: 8139too     Tarjeta: Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 10) o  3c59x  Tarjeta: 3Com Corporation 3c905C-TX/TX-M [Tornado]

En principio el módulo viene incluido en el kernel, pero para el kernel 3.9.4 hay que instalarlo para que funcione la tarjeta de red, ya que parecen haberlo suprimido en esta versión, para ello debemos seguir los siguientes pasos para compilarlo.

wget https://www.kernel.org/pub/linux/kernel/projects/backports/2013/03/28/compat-drivers-2013-03-28-5-u.tar.bz2
cd compat-drivers-2013-03-28-5-u
./scripts/driver-select alx 
make
sudo make install

Una vez compilado todo el paquete compat, solo necesitamos 3 archivos de los que se compilan. El módulo alx, y estos otros dos, ya que el módulo alx depende de ellos

alx                    47465  0 
compat                  1629  1 alx
mdio                    3507  1 alx

Y copiarlos en esta carpeta.

/lib/modules/3.9.4/updates/drivers/net/ethernet/atheros/alx/alx.ko

Después, hay que ejecutar

depmod

Para que se cargue el módulo, ya que si no el kernel no lo reconocerá en el siguiente arranque.


--Ines 12:02 17 oct 2007 (CEST)

--Alex 10 sep 2013