diff --git a/lib/net/sock.c b/lib/net/sock.c index b0e08fbed..33bb01fe3 100644 --- a/lib/net/sock.c +++ b/lib/net/sock.c @@ -227,6 +227,15 @@ retry: continue; } + if (res->ai_family == AF_INET6) { + rc = setsockopt(fd, IPPROTO_IPV6, IPV6_V6ONLY, &val, sizeof val); + if (rc != 0) { + close(fd); + /* error */ + continue; + } + } + if (type == SPDK_SOCK_CREATE_LISTEN) { rc = bind(fd, res->ai_addr, res->ai_addrlen); if (rc != 0) {