设为首页 收藏本站
查看: 1033|回复: 0

[经验分享] Error:NFS启动无法绑定IPV6地址报错

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2014-12-1 09:20:47 | 显示全部楼层 |阅读模式
在测试NFS的时候,突然发生了从未有过的错误,故障信息如下,为此特地描述一下排错的过程,供同行参考:

info:
[iyunv@node10 ~]# service nfs start
Starting NFS services:                                     [  OK  ]
Starting NFS quotas:                                       [  OK  ]
Starting NFS mountd: rpc.mountd: svc_tli_create: could not open connection for udp6
rpc.mountd: svc_tli_create: could not open connection for tcp6
rpc.mountd: svc_tli_create: could not open connection for udp6
rpc.mountd: svc_tli_create: could not open connection for tcp6
rpc.mountd: svc_tli_create: could not open connection for udp6
rpc.mountd: svc_tli_create: could not open connection for tcp6
                                                           [  OK  ]
Stopping RPC idmapd:                                       [  OK  ]
Starting RPC idmapd:                                       [  OK  ]
Starting NFS daemon: rpc.nfsd: unable to create inet6 TCP socket: errno 97 (Address family not supported by protocol)  
                                                       [  OK  ]
analysis:
    从上面的信息可以看出,nfs在启动的时候报错了。大致的意思是无法设置ipv6的套接字接口,其中这一句话很重要:
Address family not supported by protocol 。地址族不被nfs协议所支持。
    到这里,就很奇怪了,nfs是支持ipv6协议的,而且系统就更不要说了,肯定支持ipv6协议。但是,在linux系统中一切功能都是模块组合而成,只不过可以将模块编译进内核或者编译成外挂式模块动态加载。因此,想到这里就提出一个问题,是不是ipv6的模块没有加载,接着就进行下面的检查:
[iyunv@node10 ~]# ifconfig eth0 | grep inet
          inet addr:172.16.1.20  Bcast:172.16.1.255  Mask:255.255.255.0
[iyunv@node10 ~]#
    从上面的信息反馈可见,没有出现inet6的地址信息,可以初步断定ipv6的模块并没有编译进内核,那就应该是动态加载,而此处没有信息,那就说明可能没有动态加载成功。


[iyunv@node10 ~]# cd /proc/sys/
[iyunv@node10 sys]# ls
abi  crypto  debug  dev  fs  kernel  net  sunrpc  vm
[iyunv@node10 sys]# cd net
[iyunv@node10 net]# ls
core  ipv4  netfilter  unix
[iyunv@node10 net]#
    从上面的的信息可见,在/proc/sys/net/目录中没有出现ipv6的信息,再一次说明ipv6的模块加载确实出现了问题,因为如果成功加载,则在内核的信息中是可以看到有一个ipv6的目录存在


[iyunv@node10 net]# lsmod | grep ipv6
ipv6                  322541  0
    从上面的信息可见,ipv6模块似乎在开机的时候默认是加载的,但是从前面的检查可知并没有生效,这是什么原因呢? 紧接着进行下面的检查:
[iyunv@node10 net]#
[iyunv@node10 net]# cd /etc/modprobe.d/
[iyunv@node10 modprobe.d]# ls
anaconda.conf  blacklist.conf  dist-alsa.conf  dist.conf  dist-oss.conf  ipv6.conf  openfwwf.conf
[iyunv@node10 modprobe.d]# cat ipv6.conf
# Anaconda disabling ipv6
options ipv6 disable=1
   从上面的ipv6.conf中的信息可见ipv6的功能被disable了,到此问题算是找到了。也就是说在启动的时候虽然加载了ipv6的模块,但是给的参数是disable=1,表示关闭ipv6的功能,所以导致了ipv6的功能并没有生效。


问题找到后,就要进行处理了:
[iyunv@node10 modprobe.d]#
[iyunv@node10 modprobe.d]# sed -i 's/1/0/' ipv6.conf
[iyunv@node10 modprobe.d]# cat ipv6.conf
# Anaconda disabling ipv6
options ipv6 disable=0
[iyunv@node10 modprobe.d]#
[iyunv@node10 modprobe.d]# lsmod | grep ipv6
ipv6                  322541  0
[iyunv@node10 modprobe.d]# modprobe -r ipv6
[iyunv@node10 modprobe.d]# lsmod | grep ipv6
[iyunv@node10 modprobe.d]# modprobe ipv6
[iyunv@node10 modprobe.d]# lsmod | grep ipv6
ipv6                  322541  134
[iyunv@node10 modprobe.d]#
    从上面的步骤可知,将disable的改为了0,表示启用。然后卸载模块重新加载一次(也可以重启系统),加载成功后,再次验证此前的判断:

[iyunv@node10 modprobe.d]# ifconfig eth0 | grep inet
          inet addr:172.16.1.20  Bcast:172.16.1.255  Mask:255.255.255.0
          inet6 addr: fe80::20c:29ff:fee9:3560/64 Scope:Link
[iyunv@node10 modprobe.d]#
[iyunv@node10 modprobe.d]# cd /proc/sys/net/
[iyunv@node10 net]# ls
core  ipv4  ipv6  netfilter  unix
[iyunv@node10 net]#
    从上面的信息可见,此前没有出现的预判信息,这里已经出现了,因此表示ipv6功能已经成功启用。接下来再次重启nfs服务:

[iyunv@node10 net]# service nfs restart
Shutting down NFS daemon:                                  [  OK  ]
Shutting down NFS mountd:                                  [  OK  ]
Shutting down NFS quotas:                                  [  OK  ]
Starting NFS services:                                     [  OK  ]
Starting NFS quotas:                                       [  OK  ]
Starting NFS mountd:                                       [  OK  ]
Stopping RPC idmapd:                                       [  OK  ]
Starting RPC idmapd:                                       [  OK  ]
Starting NFS daemon:                                       [  OK  ]
[iyunv@node10 net]#

   ok,到此,不再有nfs的报错信息,问题解决。




运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-34199-1-1.html 上篇帖子: Linux容器虚拟化LXC的使用 下篇帖子: 软件包管理之YUM仓库搭建 Error
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表