Habilitar la IP-Foringing para IPv4 en Debian GNU/Linux

Habilitar la IP-Foringing para IPv4 en Debian GNU/Linux
Configurar una red de computadoras puede ser complicado a veces. Habilitar el reenvío IPv4 en una máquina Linux es una tarea bastante simple, por suerte.

El término reenvío de IP describe el envío de un paquete de red de una interfaz de red a otra en el mismo dispositivo. Debe habilitarse cuando desea que su sistema actúe como un enrutador que transfiere paquetes IP de una red a otra.

En un sistema Linux, el kernel de Linux tiene una variable llamada 'IP_FORWARD' que mantiene este valor. Es accesible utilizando el archivo '/proc/sys/net/ipv4/ip_forward'. El valor predeterminado es 0, lo que significa que no hay reenvío de IP, porque un usuario regular que ejecuta una sola computadora sin componentes adicionales no necesita eso, generalmente. En contraste, para los enrutadores, puertas de enlace y servidores VPN es una característica bastante esencial.

A continuación, le explicaremos cómo habilitar el reenvío de IP temporal y permanentemente.

Reenvío de IP como solución temporal

Para habilitar este parámetro del núcleo en la mosca, tiene dos opciones. La opción 1 simplemente almacena el valor de 1 en la variable de arriba de la siguiente manera:

# echo 1>/proc/sys/net/ipv4/ip_forward

La opción 2 utiliza el comando 'SYSCTL' que le permite ajustar diferentes parámetros del núcleo en tiempo de ejecución, también [2]. Como usuario administrativo, ejecute el siguiente comando:

# sysctl -w net.IPv4.ip_forward = 1

Tenga en cuenta que esta configuración se cambia al instante. Además, el resultado no se conservará después de reiniciar el sistema.

Puede consultar el valor almacenado de la siguiente manera:

# cat/proc/sys/net/ipv4/ip_forward

Este comando devuelve un valor de 0 para no reenviar IP, y un valor de 1 para el reenvío de IP habilitado. Como alternativa, el uso de 'SYSCTL' también le muestra el estado actual:

# net sysctl.IPv4.ip_forward
neto.IPv4.ip_forward = 0
#

Habilitar el reenvío de IP de forma permanente

Para lograr esto, se deben hacer otros pasos. Primero, edite el archivo '/etc/sysctl.conflicto. Busque una línea que contenga la entrada "#net.IPv4.ip_forward = 1 ", y retire el # al comienzo de la línea.

Luego, guarde el archivo y ejecute el comando 'SYSCTL' para habilitar la configuración ajustada:

# sysctl -p /etc /sysctl.confusión

La opción '-p' es corta para '-load' y requiere un nombre para el archivo de configuración a seguir.

A continuación, reinicie el sistema de archivos PROC que proporciona información sobre el estado del kernel de Linux utilizando el siguiente comando:

# /etc /init.D/PROCPS reiniciar

Alrededor de 2015, el nombre del archivo se acortó de 'PROCPS.sh 'a' procps '. Entonces, en los mayores sistemas Debian, el guión que debe invocar se llama 'PROCPS.sh ', en su lugar.

Tratar con Systemd

El siguiente obstáculo llegó con el lanzamiento de Systemd versión 221. El reenvío de IP está deshabilitado de forma predeterminada, y habilitar requiere un archivo adicional para estar allí. Si aún no está allí, solo agrégalo. El nombre del archivo consiste en el nombre de la interfaz de red seguido del sufijo '.red ', por ejemplo' eth0.red 'para la interfaz de red'/dev/eth0 '. Como se indica en la documentación [4], se ignoran otras extensiones.

El siguiente fragmento de código muestra la configuración de la interfaz de red '/dev/tun0'. Contiene de dos secciones: 'Match' y 'Red'. En la sección de coincidencia, defina el nombre de la interfaz de red, y en la sección de red, habilite el reenvío de IP.

# cat/etc/systemd/network/tun0.red
[Fósforo]
Nombre = Tun0
[Red]
Ipforward = ipv4

Conclusión

Activar el reenvío de IP para IPv4 no es un misterio. Solo unos pocos pasos, y estás ahí. Feliz piratería!

Enlaces y referencias

* [1] Configuración de Systemd-Networkd, Debian Wiki
* [2] Juergen Haas: Aprenda el comando Linux SYSCTL
* [3] Systemd News para la versión 221
* [4] Documentación para Systemd