5

I'm using the kernel command line parameter ipv6.disable=1 in my boot loader (systemd boot) to disable IPv6. However, with that option, I now get these errors in the journal after booting up.

Jul 09 02:38:48 arch rpcbind[645]: cannot create socket for udp6 Jul 09 02:38:48 arch rpcbind[645]: cannot create socket for tcp6 Jul 09 02:38:48 arch rpc.statd[649]: Failed to create listener xprt (statd, 1, udp6) Jul 09 02:38:48 arch rpc.mountd[642]: Could not make a socket: (97) Address family not supported by protocol 

This is Arch Linux 4.14.53-1-lts #1 SMP Tue Jul 3 16:27:18 CEST 2018 x86_64 GNU/Linux

What are the consequences of these errors and how do I resolve this while keeping IPv6 disabled?

More info: rpcinfo -p

program vers proto port service 100000 4 tcp 111 portmapper 100000 3 tcp 111 portmapper 100000 2 tcp 111 portmapper 100000 4 udp 111 portmapper 100000 3 udp 111 portmapper 100000 2 udp 111 portmapper 100005 1 udp 20048 mountd 100005 1 tcp 20048 mountd 100005 2 udp 20048 mountd 100024 1 udp 48386 status 100005 2 tcp 20048 mountd 100024 1 tcp 47193 status 100005 3 udp 20048 mountd 100005 3 tcp 20048 mountd 100003 3 tcp 2049 nfs 100003 4 tcp 2049 nfs 100227 3 tcp 2049 nfs_acl 100021 1 udp 54818 nlockmgr 100021 3 udp 54818 nlockmgr 100021 4 udp 54818 nlockmgr 100021 1 tcp 42833 nlockmgr 100021 3 tcp 42833 nlockmgr 100021 4 tcp 42833 nlockmgr 

2 Answers 2

3

Here is a solution that worked for me.

This message is causing people to be confused that the problem is caused by rpcbind when the problem is something else.

For the benefit of google users, to disable this message, edit the file /etc/netconfig, and disable these two lines (add a '#' character at the beginning), such that they now read as thus:

#udp6 tpi_clts v inet6 udp - - #tcp6 tpi_cots_ord v inet6 tcp - - 

Save the file, reboot the computer and you should no longer see the "rpcbind: cannot create socket for udp6" messages.

As stated, it works and it seems to be the most correct solution. However, I do not fully understand all the nuances of this issue, so comments are appreciated.

1

Specify the bind ip manually.

man rpc.statd:

 -n, --name ipaddr | hostname Specifies the bind address used for RPC listener sockets. The ipaddr form can be expressed as either an IPv4 or an IPv6 pre‐ sentation address. If this option is not specified, rpc.statd uses a wildcard address as the transport bind address. 
1
  • How? Which config file or unit file? Commented Jul 9, 2018 at 7:05

You must log in to answer this question.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.