我有一台运行CentOS 5.8的机器。 通过使用以下内容创build/etc/modprobe.d/disable-ipv6文件来禁用IPv6:
options ipv6 disable=1
删除文件并重新启动机器应该重新启用IPv6。 有没有办法启用IPv6而无需重新启动?
附加信息:
我find了一些echo 0 > /proc/sys/net/ipv6/conf/interface/disable_ipv6 ,但是/proc/sys/net/ipv6在这台机器上不存在。
sysctl没有显示IPv6:
# sysctl -a | grep -i ipv6 | wc -l 0
ipv6内核模块被加载:
#lsmod | grep ipv6 ipv6 437857 1 cnic
试图删除它会引发错误:
# modprobe -vnr ipv6 FATAL: Module ipv6 is in use. # modprobe --show-depends ipv6 insmod /lib/modules/2.6.18-308.13.1.el5/kernel/crypto/crypto_api.ko insmod /lib/modules/2.6.18-308.13.1.el5/kernel/net/xfrm/xfrm_nalgo.ko insmod /lib/modules/2.6.18-308.13.1.el5/kernel/net/ipv6/ipv6.ko
crypto_api说crypto_api依赖于ipv6模块。 卸载和加载运行的Web服务器听起来不是最好的主意。
我尝试了@Zoredachebuild议的rmmod:
# rmmod -v ipv6 ERROR: Module ipv6 is in use by cnic
可以在不重启的情况下重新加载ipv6驱动程序
$ /sbin/lsmod |grep ipv ipv6 438625 3 rdma_cm,ib_addr,cnic # loop through all the dependent modules, and unload them $ rmmod cnic ... $ rmmod rdma_cm $ modprobe ipv6 disable=0
您可能需要closuresn / w,但这应该避免重新启动。
看起来不可能。 我结束了重新启动机器启用IPv6。 我喜欢有人certificate我错了,因为我有一些其他机器configuration相同的方式。