ip6tables -restore -h failed

最近安装一个Linux系统,由于安装时没有IPv6环境,短时间内也不使用IPv6,所以安装过程中就没有开启IPv6的支持,防火墙是开启的。重新启动系统发现系统在加载IPv6防火墙规则的时候出错,提示为:

[root@Router ~]# /etc/init.d/ip6tables start 
Applying ip6tables firewall rules: ip6tables-restore v1.3.5: ip6tables-restore: unable to initializetable 'filter'

Error occurred at line: 3
Try `ip6tables-restore -h' or 'ip6tables-restore --help' for more information.
                                                           [FAILED] 
[root@Router ~]#

经过深入分析发现,由于安装程序防止系统支持IPv6,在/etc/modprobe.conf增加了相应的参数禁用IPv6。

alias net-pf-10 off
alias ipv6 off
options ipv6 disable=1

解决办法:不让ip6tables这个服务随开机启动,其实出现这个问题的主要原因是:安装程序禁用系统载入IPv6模块的同时,没有将ip6tables这个服务禁用。

=======================================================
将以上问题引申一下:
1、如何在RH系列的系统上禁用IPv6,以前都是在/etc/sysconfig/network文件中增加:

NETWORKING_IPV6=no

系统启动完毕后,你通过ifconfig仍然可以在接口上看到IPv6地址。
所以要禁用IPv6,在/etc/modprobe.conf中增加:

alias net-pf-10 off
alias ipv6 off
options ipv6 disable=1

2、如果安装时禁用了IPv6,如果让系统支持IPv6。
将/etc/modprobe.conf中的相应选项注释掉即可,如:

#alias net-pf-10 off
#alias ipv6 off
#options ipv6 disable=1

最好在/etc/sysconfig/network文件中增加:

NETWORKING_IPV6=yes

你可能感兴趣的:(-,ip6tables,-restore)