Eu quero compartilhar minha internet da eth0 para o wlan0. Então eu segui este tutorial: link
minha versão do Kernel é 4.1.15
Os módulos que eu já carreguei são:
nft_chain_nat_ipv4, nft_nat, nft_masq, nf_tables_ipv4
Eu configurei / proc / sys / net / ipv4 / ip_forward como 1 também.
Então:
nft add table ip nat
nft add chain ip nat prerouting { type nat hook prerouting priority 0 \; }
nft add chain ip nat postrouting { type nat hook postrouting priority 100 \; }
funcionou bem. nft list table nat também mostra a tabela NAT.
Então:
nft add rule nat postrouting oifname eth0 masquerade
mostra
<cmdline>:1:1-49 Error: could not process rule: No such file or directory
Parece que tenho que carregar outro módulo? Ou o que eu fiz de errado?
update: resolvi o problema sozinho. Parece que o modprobe é muito inteligente e todas as dependências devem ser carregadas automaticamente.
Meu problema era: o nome da pasta do módulo em / lib / modules é xxx-yyy. Mas o meu uname -r no meu pc mostra xxx. Então eu mudei o nome da pasta de xxx-yyy para xxx. Tudo funciona bem agora.
Tags kernel-modules nat nftables linux