Estou executando o AlmaLinux 9 e na inicialização vejo um aviso
Warning: Deprecated Driver is detected: nft_compat will not be maintained in a future major release and may be disabled
mas o que está carregando esse driver? Eu tenho o serviço firewalld desativado. Quero eliminar este aviso (corretamente).
Informação adicional:
[root@server ~]# lsmod | grep nft_compat
nft_compat 20480 14
nf_tables 278528 98 nft_compat,nft_counter,nft_chain_nat
nfnetlink 20480 2 nft_compat,nf_tables
[root@server ~]# iptables -L -n
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain FORWARD (policy ACCEPT)
target prot opt source destination
NETAVARK_FORWARD all -- 0.0.0.0/0 0.0.0.0/0 /* netavark firewall plugin rules */
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
Chain NETAVARK_FORWARD (1 references)
target prot opt source destination
ACCEPT all -- 0.0.0.0/0 10.88.0.0/16 ctstate RELATED,ESTABLISHED
ACCEPT all -- 10.88.0.0/16 0.0.0.0/0
Chain NETAVARK_ISOLATION_2 (1 references)
target prot opt source destination
Chain NETAVARK_ISOLATION_3 (0 references)
target prot opt source destination
DROP all -- 0.0.0.0/0 0.0.0.0/0
NETAVARK_ISOLATION_2 all -- 0.0.0.0/0 0.0.0.0/0
Sobre a mensagem em si: não é uma mensagem upstream do kernel, é uma mensagem específica adicionada no AlmaLinux 9 (e provavelmente herdada do RHEL 9).
O
nft_compat
módulo é a camada de compatibilidade que permite executar iptables sobre nftables e ainda usar módulos não-nftables.Qualquer módulo xtables usado em
iptables-nft
vez deiptables-nft
traduzir a regra iptables em uma regra nftables somente nativa precisaránft_compat
funcionar.Começando com uma VM limpa que não executa nada relacionado à rede e, portanto, não está
nft_compat
carregada, quase tudo que não está vazio irá carregá-la.Isso não:
Como é traduzido puramente em código nftables :
Quase tudo o mais irá (até que o espaço do usuário e a versão do kernel permitam traduzi-lo em nativo nftables , então isso possivelmente depende da versão do iptables e da versão do kernel para uma determinada regra).
Qualquer entrada exibida por
nft --debug=netlink ...
isso incluitarget name
(paraiptables-nft .. -j
target ) oumatch name
(paraiptables-nft ... -m
module ) significa que está usando ox_tables
módulo do kernel correspondente por meio donft_compat
módulo de compatibilidade.Para se livrar dele, não use
iptables-nft
nenhuma ferramenta que use suas bibliotecas (libip4tc2, ...). É claro que reverter paraiptables-legacy
(se for fornecido?) Seria pior: este destina-se a se tornar obsoleto no upstream e a camada de compatibilidade deve ser mantida por um longo tempo para substituí-lo.Isso provavelmente significa: não use Docker, não use podman, não use...
Conclusão: não vejo como você pode se livrar desta mensagem.