Unable to bind IPv6 address when NFS service starts
In the Test of NFS, suddenly there has never been a mistake, fault information as follows, for this purpose to describe the process of troubleshooting, for peer reference:
Info:
[[Email protected] ~]# 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 (Address family not supported by protocol)
[OK]
Analysis :
As you can see from the above information, NFS has an error when it starts. The general meaning is that you cannot set the socket interface for IPv6, which is important:
Address family not supported by protocol. Address families are not supported by the NFS protocol.
It's strange to be here, NFS is supporting the IPv6 protocol, and the system is not even going to say that it certainly supports the IPv6 protocol. However, in the Linux system all functions are composed of modules, but can be compiled into the kernel or compiled into a plug-in module dynamic loading. Therefore, the idea here is to ask a question, is not the IPv6 module is not loaded, and then the following checks:
[Email protected] ~]# ifconfig eth0 | grep inet
inet addr:172.16.1.20 bcast:172.16.1.255 mask:255.255.255.0
[Email protected] ~]#
From the above feedback can be seen, there is no INET6 address information, it is possible to initially conclude that the IPv6 module is not compiled into the kernel, it should be dynamic loading, and there is no information, it is possible that there is no dynamic loading success.
[Email protected] ~]# cd/proc/sys/
[[email protected] sys]# ls
Abi Crypto debug Dev FS kernel net Sunrpc VM
[[Email protected] sys]# CD net
[[email protected] net]# ls
Core IPv4 NetFilter Unix
[Email protected] net]#
From the above information can be seen, in the/proc/sys/net/directory does not appear IPv6 information, once again that IPv6 module loading does have a problem, because if the load successfully, then in the kernel information is to see that there is a IPv6 directory exists
[Email protected] net]# Lsmod | grep IPv6
IPv6 322541 0
From the above information can be seen, the IPv6 module appears to be loaded by default when the boot, but from the previous check is not effective, what is the reason? The following checks are followed:
[Email protected] net]#
[Email protected] net]# cd/etc/modprobe.d/
[[email protected] modprobe.d]# ls
anaconda.conf blacklist.conf dist-alsa.conf dist.conf dist-oss.conf ipv6.conf openfwwf.conf
[email protected] modprobe.d]# cat ipv6.conf
# Anaconda Disabling IPv6
Options IPv6 disable=1
From the information in the above ipv6.conf visible IPv6 function was disable, to this problem is found. In other words, although the IPv6 module is loaded at startup, the parameter given is disable=1, which means that the function of IPv6 is turned off, so the function of IPv6 is not effective.
[[email protected] modprobe.d]#
[[Email protected] modprobe.d]# sed-i ' s/1/0/' ipv6.conf
[[email protected] modprobe.d]# cat ipv6.conf
# Anac Onda Disabling IPv6
Options ipv6 disable=0
[[email protected] modprobe.d]#
[[email protected] modprobe.d]# Lsmod | grep IPv6
ipv6 322541 0
[[email protected] modprobe.d]# modprobe-r ipv6
[[email protected] modprobe.d]# Lsmod | grep IPv6
[[email protected] modprobe.d]# modprobe ipv6
[[email protected] modprobe.d]# lsmod | grep IPv6
ipv6 322541 134
[[email protected] modprobe.d]#
from the above steps, change the disable to 0, which means enable. Then unload the module and reload it once (or reboot the system), then verify the previous judgment again after the load is successful:
[Email protected] 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
[Email protected] modprobe.d]#
[Email protected] modprobe.d]# cd/proc/sys/net/
[[email protected] net]# ls
Core IPv4 IPv6 netfilter Unix
[Email protected] net]#
From the above information can be seen, there is no prior to the pre-judgment information, here has appeared, so that the IPv6 feature has been successfully enabled. Then restart the NFS service again:
[[Email protected] 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]
[Email protected] net]#
OK, to this, there is no more NFS error messages, problem solving.
This article from the "Life and death as the Dream Mo Sentimental" blog, please be sure to keep this source http://mingyang.blog.51cto.com/2807508/1584675
Error:nfs start Unable to bind IPV6 address error