En el anterior tutorial hemos visto como dejar nuestra RPi funcional y actualizada.
En ésta segunda parte, veremos como asignar una dirección IP estática a nuestro servidor: Si bien es posible hacer lo mismo modificando la tabla ARP de nuestro router y modificando algunos valores, me he decidido realizar todo el trabajo posible en el servidor y dejar ajeno al router, en la medida de lo posible.

Realizaremos toda la configuración a través de lineas de comandos, por lo que no nos será necesario teclado, ratón ni pantalla.

Paso 1:

Iniciaremos sesión en nuestra RPi mediante SSH.

Una vez hayamos iniciado sesión, necesitas obtener una lista de las interfaces de red disponibles:

cat /etc/network/interfaces

Interfaz de red

El siguiente dato iface eth0 inet manual (ó dhcp) nos informa que en éstos momentos estamos obteniendo nuestra dirección IP a través del servidor DHCP. Éste parámetro es el que queremos cambiar.

Paso 2:

Primero que todo, debemos obtener cierta información sobre nuestro router y servidor para poder trabajar correctamente y sin problemas. Para ello, hay un comando que nos será de particular utilidad:

ifconfig

Ésto nos revela la información pertinente a nuestro router, la parte que nos interesa es la que se encuentra después de eth0 (la conexión ethernet)…

terminal_ifconfig_rpi

Apuntamos los siguientes parámetros para futura consulta:

inet addr – 192.168.1.12 (Actual dirección IP de nuestra RPi)
Bcast – 192.168.1.255 (El rango IP de Broadcast)
Mask – 255.255.255.0 (Dirección de máscara de subnet)

Necesitaremos algunos parámetros más antes de proceder, para ello utilizaremos el siguiente comando:

netstat -nr

(También podremos utilizar el comando route -n , nos devolverá la misma información.)

terminal_netstat

De aquí, apuntaremos los siguientes parámetros para futura consulta:

Gateway Address – 192.168.1.1 (La dirección IP de nuestro router)
Destination Address – 192.168.1.0 (La dirección IP de destino)

Paso 3:

Ahora, con la información recopilada, necesitamos colocar la misma en el fichero de configuración de nuestra RPi utilizando un editor de texto.
Siempre utilizo el editor de texto nano, pero si está en la interfaz GUI puedes utilizar leaf sin problemas.

sudo nano /etc/network/interfaces

Simplemente debemos de cambiar la línea:

iface eth0 inet dhcp
ó
iface eth0 inet manual

por

iface eth0 inet static

Acto seguido, directamente debajo de ésta línea, debemos de colocar los siguientes parámetros (NOTA: Deberás de completar los datos con tus propios datos, los mismos que has ido tomando nota anteriormente):

address 192.168.1.81
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.1

Para entender mejor que significa cada parte:

address – La dirección IP que quieres dar a tu RPi, puede ser cualquiera de tu rango de red, pero es recomendable dar una dirección alta, antes que baja, o podrías acabar con varios dispositivos con la misma dirección IP! He seleccionado la 192.168.1.81, pero puedes elegir cualquiera entre el rango 192.168.1.2 a 192.168.1.255
netmask – La máscara subnet.
network – La dirección IP del router, ésta es la dirección de destino.
broadcast – La dirección de broadcast.
gateway – La dirección de la puerta de enlace.

terminal_nano_final

Por lo que, debería de quedarnos un fichero similar a la imagen anterior, pero recuerda, con tus valores! Salvaremos los datos antes de salir, para ello, debes de presionar CTRL+X (exit), Y, e intro para sobrescribir el fichero que acabamos de editar.

Paso 4:

Ahora, corroboraremos que la RPi toma la dirección IP correspondiente, para ellos eliminaremos cualquier temporal que haya quedado:

sudo rm /var/lib/dhcp/*

Luego, reiniciaremos nuestro servidor RPi:

sudo reboot

Esperaremos unos minutos a que inicie y volveremos a conectarnos por SSH y colocaremos el siguiente comando:

ifconfig

Si todo ha resultado correcto, obtendremos nuestros nuevos ajustes:

terminal_ifconfig_done

Para corroborar nuevamente si todo funciona como debería, realizaremos un ping a nuestra puerta de enlace:

ping 192.168.1.1 -c 10

(el comando -c 10 simplemente informa que quieres realizar el ping 10 veces, si olvidas añadir éste parámetro, el ping continuará indefinidamente. Para pararlo, presionaremos CTRL+C)

ping_error

Probablemente, os saldrá el mensaje de que la operación no está permitida, para solucionar éste ultimo contratiempo haremos lo siguiente:

Corroboraremos que el binario ping está configurado correctamente a root:

ls -l `which ping`

Ésto nos debería devolver:

-rwsr-xr-x 1 root root 30856 2007-07-06 02:40 /bin/ping

Si no es así (cosa mas que probable) lo solucionaremos de la siguiente manera:

sudo chmod u+s `which ping`

Y volvemos a intentarlo:

ping 192.168.1.1 -c 10

ping_fixed

Ahora, veremos como nos informa correctamente de que todos los paquetes enviados han sido recibidos. Si algo no ha salido bien, revisa nuevamente que todas las direcciones sean correctas y estés utilizando las tuyas, y que esté haciendo ping a tu puerta de enlace.
Recuerda que siempre puedes revertir los cambios deshaciendo los pasos que has hecho.

Espero que te haya  sido de utilidad, en el próximo post procederemos con la parte 3 del tutorial, Instalar y configurar un servidor LAMP en Raspberry Pi.