Created attachment 868463 [details] Trace logs when peer probe failed & patch Description of problem: Glusterfs not fully functional with IPv6. 1. gluster peer probe fails for IPv6 addresses. 2. add-brick, replace brick also has problems Version-Release number of selected component (if applicable): 3.3.2 How reproducible: Probe an connected IPv6 host. Steps to Reproduce: 1. gluster peer probe fec0::d6be:d9ff:fe00:6535 Actual results: root@appvm2-VirtualBox:~# gluster peer probe fec0::d6be:d9ff:fe00:6535 Probe unsuccessful Probe returned with unknown errno 107 Expected results: Additional info: Attached a log file with glusterd trace logs and other info. Also attached code changes for few hacks done in code to make IPv6 work till some extent.
I can confirm this and it is pretty annoying. Glusterd refuses to listen on an ipv6 address and also seems unable to connect to it. Passing an address or a hostname with AAAA records only doesn't work; from the logs: I [glusterd-handler.c:918:__glusterd_handle_cli_probe] 0-glusterd: Received CLI probe req xxx:xxx::340:974 24007 I [glusterd-handler.c:2931:glusterd_probe_begin] 0-glusterd: Unable to find peerinfo for host: xxx:xxx::340:974 (24007) I [rpc-clnt.c:972:rpc_clnt_connection_init] 0-management: setting frame-timeout to 600 I [socket.c:3561:socket_init] 0-management: SSL support is NOT enabled I [socket.c:3576:socket_init] 0-management: using system polling thread E [common-utils.c:222:gf_resolve_ip6] 0-resolver: getaddrinfo failed (Address family for hostname not supported) E [name.c:249:af_inet_client_get_remote_sockaddr] 0-management: DNS resolution failed on host xxx:xxx::340:974 I [mem-pool.c:539:mem_pool_destroy] 0-management: size=2236 max=0 total=0 I [mem-pool.c:539:mem_pool_destroy] 0-management: size=124 max=0 total=0 I [glusterd-handler.c:2912:glusterd_friend_add] 0-management: connect returned 0 I [glusterd-handler.c:918:__glusterd_handle_cli_probe] 0-glusterd: Received CLI probe req fs1.ipv6.example 24007 I [glusterd-handler.c:2931:glusterd_probe_begin] 0-glusterd: Unable to find peerinfo for host: fs1.ipv6.example (24007) I [rpc-clnt.c:972:rpc_clnt_connection_init] 0-management: setting frame-timeout to 600 I [socket.c:3561:socket_init] 0-management: SSL support is NOT enabled I [socket.c:3576:socket_init] 0-management: using system polling thread E [common-utils.c:222:gf_resolve_ip6] 0-resolver: getaddrinfo failed (Name or service not known) E [name.c:249:af_inet_client_get_remote_sockaddr] 0-management: DNS resolution failed on host fs1.ipv6.example I [mem-pool.c:539:mem_pool_destroy] 0-management: size=2236 max=0 total=0 I [mem-pool.c:539:mem_pool_destroy] 0-management: size=124 max=0 total=0 I [glusterd-handler.c:2912:glusterd_friend_add] 0-management: connect returned 0 When passing a hostname with both ipv4 and ipv6 entries; the ipv4 entry is choosen even though gai.conf specifies ipv6 should go first
The version that this bug has been reported against, does not get any updates from the Gluster Community anymore. Please verify if this report is still valid against a current (3.4, 3.5 or 3.6) release and update the version, or close this bug. If there has been no update before 9 December 2014, this bug will get automatocally closed.
Problem still exists in 3.5.
This bug is getting closed because the 3.5 is marked End-Of-Life. There will be no further updates to this version. Please open a new bug against a version that still receives bugfixes if you are still facing this issue in a more current release.