Bug 1849598

Summary: [RFE] ImageIO support for IPv6 [RHV clone - 4.3.11]
Product: Red Hat Enterprise Virtualization Manager Reporter: RHV bug bot <rhv-bugzilla-bot>
Component: ovirt-imageio-commonAssignee: Nobody <nobody>
Status: CLOSED WONTFIX QA Contact: Evelina Shames <eshames>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 4.4.0CC: abpatil, aefrat, bugs, dfediuck, dholler, mavital, michal.skrivanek, nsoffer, pelauter, royoung, sfishbai, tnisan, vjuranek
Target Milestone: ---Keywords: FutureFeature, ZStream
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Enhancement
Doc Text:
Story Points: ---
Clone Of: 1805267 Environment:
Last Closed: 2020-09-24 12:09:53 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: Storage RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 1805267    
Bug Blocks:    

Description RHV bug bot 2020-06-22 11:12:48 UTC
+++ This bug is a downstream clone. The original bug is: +++
+++   bug 1805267 +++
======================================================================

Description of problem:

imageio daemon and proxy do not support ipv6. We need to support setup when 
engine and hosts have only ipv6 address.

Known issues:
- daemon and proxy listen only to ipv4
- sending request to daemon using ipv6 url fails in requests library
- NBD ipv6 URLs are not supported in the daemon
- There are no tests using ipv6, so we don't know yet what needs to change

(Originally by Nir Soffer)

Comment 2 RHV bug bot 2020-06-22 11:12:54 UTC
as per discussion with Nir, the behavior should be as follows:

Remote port - accessed by users
- Listen on "::" by default (like vdsm). Supports both ipv4 and ipv6
in the same time.
- Admin can override the address to ipv4 or ipv6 address. In this case
listen to the requested address
   (does not support both ipv6 and ipv4)
- Users should resolve host and connect to the first address that
works (like socket.create_connection())

Control socket - accessed only by engine
- Listen to the first interface resolved for "localhost". Can be ipv6
or ipv4 based on system configuration
- Client need to connect the first working address reported by
getaddrinfo() (like socket.create_connection())

(Originally by Vojtech Juranek)

Comment 4 RHV bug bot 2020-06-22 11:12:59 UTC
(In reply to Vojtech Juranek from comment #2)
Peter, can you ack the solution described in comment 2?

(Originally by Nir Soffer)

Comment 5 RHV bug bot 2020-06-22 11:13:02 UTC
Moving bug to 4.4. We need to clone to 4.3 if we really need to 
add this also in 4.3.

(Originally by Nir Soffer)

Comment 7 RHV bug bot 2020-06-22 11:13:10 UTC
Hi Vojtech,

Can you please provide a clear verification scenario?

(Originally by Avihai Efrat)

Comment 8 RHV bug bot 2020-06-22 11:13:13 UTC
(In reply to Avihai from comment #7)
> Hi Vojtech,
> 
> Can you please provide a clear verification scenario?

upload and download image on IPv4 and/or dual stack environment (to verify there's no regression) and same on IPv6-only environment to verify image upload/download works with IPv6 only.

(Originally by Vojtech Juranek)