Detectando el cable de red


Pequeño manual que nos permite lanzar el cliente de DHCP únicamente cuando haya un cable de red conectado al equipo. Ideal para gente con portátil

Detección Automática
del Cable de Red

Como usuario de ordenador
portátil más de una vez me he encontrado con el problema
de tener que perder mas de 60s en el proceso de asignacion de direccion
IP a traves de DHCP al no estar conectado a ninguna red, puesto que el
cliente de DHCP permanecera activo hasta que determine que ha pasado un
tiempo prudencial. Bien, con este artículo pretendo explicar
como hacer un script que lance el cliente de DHCP sólo cuando
haya un cable de red conectado y por lo tanto no perderemos tanto
tiempo al arrancar la máquina.

Estos scripts se han reaizado para Debian Woody, pero no os resultara
nada dificil adaptarlos para cualquier otra distribución.

Paquetes necesarios: net-tools

primer paso:

apt-get install net-tools

Segundo paso:

nos dirigiremos a /etc/network/interfaces y desconectaremos de auto
todas las interficies DHCP. Por ejemplo, supongamos que tenemos el
siguiente archivo interfaces:

#
/etc/network/interfaces — configuration file for ifup(8), ifdown(8)

# The loopback interface
auto lo
iface lo inet loopback

auto eth0
iface eth0 inet dhcp


auto eth1

iface eth1 inet dhcp


Deberemos quitar las entradas auto eth0 y auto eth1  (si lo
que tenemos es un auto común : auto
lo eth0 eth1 lo dejaremos como auto
lo).

Una vez realizados los cambios en /etc/network/interfaces crearemos un
script de detección del cable de red, en este caso lo llamaremos
autonet y lo grabaremos en /usr/sbin, no hemos de olvidarnos de
asignarle permisos de ejecución.

#!/bin/bash
# /usr/sbin/autonet  —
script de autodetección del cable de red
INICIAL=1
FINAL=$#

while [ $INICIAL -le $FINAL ]
do

if [ “$(/sbin/mii-tool | grep $1)” != “$1: no link” ]
then
ifup $1
fi
shift 1
INICIAL=$(expr $INICIAL + 1)
done

Ahora realizaremos unos cambios en /etc/init.d/networking:

Nos dirigiremos a la seccion start) y buscaremos la linea ifup -a,
justo debajo pondremos lo siguiente:

start)

       
#/usr/local/bin/bootanim start net.mng

       
doopt spoofprotect yes

       
doopt syncookies no

       
doopt ip_forward no



       
echo -n “Configuring network interfaces: “

       
ifup -a
      
/usr/sbin/autonet eth0 eth1

       
echo “done.”

       
#/usr/local/bin/bootanim stop

       
;;

Si nos fijamos ahora entre ifup
-a y echo “done” aparece /usr/sbin/autonet
eth0 eth1 que hace una llamada al script que hemos hecho antes,
es decir, teneis que introducir la linea que aparece en negrita.



Pues con esto y un bizcocho …..

Ya tenemos listo nuestro script. Con un poco de imaginación y unos pocos while y sleep podreis incluso hacer que la red se active y se desactive al insertar o retirar el cable de red.

Este post ha sido traido de forma automatica desde https://web.archive.org/web/20140625063149/http:/bulma.net/body.phtml?nIdNoticia=1982 por un robot nigromante, si crees que puede mejorarse, por favor, contactanos.


Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.