No se pudo encontrar el módulo nf_nat_proto_gre

No se pudo encontrar el módulo nf_nat_proto_gre

Al iniciar Xubuntu 19.04, obtenga esto en boot.log:

[[0;1;31mFAILED[0m] Failed to start [0;1;39mLoad Kernel Modules[0m.
See 'systemctl status systemd-modules-load.service' for details.

Ejecuto systemctl status systemd-modules-load.service que produce:

Failed to find module 'nf_nat_proto_gre'

Con sudo modprobe nf_nat_proto_greobtengo:

modprobe: FATAL: Module nf_nat_proto_gre not found in directory /lib/modules/5.0.0-16-generic

¿Cuál es el problema y cómo debo solucionarlo?

Respuesta1

Primero: la pregunta obvia debería ser: ¿es necesario este módulo? Esto es para admitir el uso de túneles GRE (probablemente múltiples en lugar de uno) detrás de NAT. Si no se utiliza ningún túnel GRE, la cuestión se vuelve discutible.

¿Ahora lo que ocurrió? Parece que Ubuntu 19.04 está usando el kernel 5.0 y se iniciaron algunas reelaboraciones de Netfilter a partir de este kernel para factorizar algunos módulos de Netfilter separados de nuevo al núcleo (es decir, no como un módulo) para obtener una ganancia general de tamaño o ayudar a funciones adicionales de Netfilter. Este módulo fue "eliminado" como parte de esta revisión.

https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/log/net/ipv4/netfilter/nf_nat_proto_gre.c?h=v5.0

path: root/net/ipv4/netfilter/nf_nat_proto_gre.c
Age   Commit message (Expand) Author  Files   Lines
2018-12-17    netfilter: nat: remove nf_nat_l4proto struct    Florian Westphal    1   -61/+0
2018-12-17    netfilter: nat: remove l4proto->manip_pkt   Florian Westphal    1   -41/+0
2018-12-17    netfilter: nat: remove l4proto->nlattr_to_range Florian Westphal    1   -3/+0
2018-12-17    netfilter: nat: remove l4proto->in_range    Florian Westphal    1   -1/+0
2018-12-17    netfilter: nat: remove l4proto->unique_tuple

Por supuesto, la funcionalidad sigue ahí. Último comentario de confirmación, el énfasis es mío:

netfilter: nat: eliminar la estructura nf_nat_l4proto

Esto elimina la estructura nf_nat_l4proto (ahora vacía), todas sus instancias
y toda la funcionalidad de (des)registro en tiempo de ejecución que ya no es necesaria.

nf_nat_need_gre() también se puede eliminar: el módulo que lo llama (para
cargar el módulo nat_gre que ya no existe) también llama a otras
funciones principales de nat.GRE nat ahora siempre está disponible si el kernel está construido con él.

[...]

Entonces, si Ubuntu tenía alguna lista codificada de módulos auxiliares para cargar, la lista no se actualizó para eliminar este y algunos otros en el mismo caso. Debe ignorar el error con seguridad o informar el error menor.

información relacionada