我正在尝试构建客户Linux内核(我稍微修改了源代码)。版本是3.13.11,我使用的是Ubuntu 14.04。但是,在执行make modules_install
时,我发现只编译和安装了几个模块,这使得模块ip_tables
无法正常工作:
$ modprobe iptable_nat
modprobe: FATAL: Module iptable_nat not found.
我可以在原始内核仓库中找到这个模块:
/lib/modules/3.13.0-24-generic/kernel/net/ipv4/netfilter$ ls
arptable_filter.ko ipt_CLUSTERIP.ko nf_nat_ipv4.ko
arp_tables.ko ipt_ECN.ko nf_nat_pptp.ko
arpt_mangle.ko ipt_MASQUERADE.ko nf_nat_proto_gre.ko
iptable_filter.ko ipt_REJECT.ko nf_nat_snmp_basic.ko
iptable_mangle.ko ipt_rpfilter.ko nf_tables_arp.ko
iptable_nat.ko ipt_SYNPROXY.ko nf_tables_ipv4.ko
iptable_raw.ko ipt_ULOG.ko nft_chain_nat_ipv4.ko
iptable_security.ko nf_conntrack_ipv4.ko nft_chain_route_ipv4.ko
ip_tables.ko nf_defrag_ipv4.ko nft_reject_ipv4.ko
ipt_ah.ko nf_nat_h323.ko
但在我的内核回购中,我无法找到它们:
/lib/modules/3.13.11/kernel/net$ ls
bluetooth
我尝试使用make menuconfig
启用此后的条目:http://blog.serverbuddies.com/enable-iptables-support-in-linux-kernel/。但我还是iptables v1.4.21: can't initialize iptables table 'nat': Table does not exist (do you need to insmod?)
。如果我理解正确,这是由未安装模块iptable_nat
引起的。
有任何解决此问题的想法吗?
提前感谢!