找不到模組 nf_nat_proto_gre

找不到模組 nf_nat_proto_gre

啟動 Xubuntu 19.04 時,在 boot.log 中取得以下內容:

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

我執行 systemctl status systemd-modules-load.service 會產生:

Failed to find module 'nf_nat_proto_gre'

sudo modprobe nf_nat_proto_gre得到:

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

問題是什麼?

答案1

首先:明顯的問題應該是:需要這個模組嗎?這是為了支援在 NAT 後面使用(可能是多個而不是一個)GRE 隧道。如果不使用 GRE 隧道,這個問題就沒有意義了。

現在發生了什麼事? Ubuntu 19.04 似乎正在使用核心 5.0,並且從該核心開始進行了一些 netfilter 重新設計,以將一些單獨的 netfilter 模組分解回核心(即:不作為模組),以整體增加大小或幫助進一步實現 netfilter 功能。作為此次返工的一部分,該模組被「砍掉」。

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

當然功能還是有的。最後提交評論,強調我的:

netfilter: nat: 刪除 nf_nat_l4proto 結構

這將刪除(現在為空)nf_nat_l4proto 結構、其所有實例
以及所有不再需要的運行時(取消)註冊功能。

nf_nat_need_gre() 也可以被砍掉:呼叫它的模組(以
載入不再存在的 nat_gre 模組)也會呼叫其他 nat 核心
函式。如果使用 GRE nat 建立內核,GRE nat 現在總是可用

[...]

因此,如果 Ubuntu 有一些要載入的硬編碼的幫助程式模組列表,則該列表不會更新以在相同情況下刪除此模組和其他一些模組。您應該安全地忽略該錯誤,或報告小錯誤。

相關內容