[Libguestfs] guestfish Remote Images IPv6 Support

Richard W.M. Jones rjones at redhat.com
Sat Mar 30 07:50:32 UTC 2019


On Fri, Mar 29, 2019 at 06:17:17PM -0500, Jonathan Wright wrote:
> I have scoured the web and can't find anything on the topic: Is IPv6
> supported for remote image targets?

It definitely should work, although I don't know if anyone has tried
using the address explicitly (rather than a hostname which resolves to
an AAAA record).

> For example:
> 
> guestfish --format=raw --ro -a
> rbd://[fd00::cefc:1]:6789/images/CentOS-7-x86_64-GenericCloud-1901
> 
> Does not work citing the following:

The important lines are these.  Firstly guestfish parses the URL into
an actual libguestfs API call, which looks fine to me:

> libguestfs: trace: add_drive
> "images/CentOS-7-x86_64-GenericCloud-1901" "readonly:true"
> "format:raw" "protocol:rbd" "server:tcp:[fd00::cefc:1]:6789"

This is probably where it goes wrong:

> "/tmp/libguestfs3pGMi6/overlay1.qcow2" "qcow2" -1 "backingfile:rbd:images/CentOS-7-x86_64-GenericCloud-1901:mon_host=[fd00::cefc:1]\:6789:auth_supported=none"
> "backingformat:raw"

> libguestfs: command: run: \ -o backing_file=rbd:images/CentOS-7-x86_64-GenericCloud-1901:mon_host=[fd00::cefc:1]\:6789:auth_supported=none,backing_fmt=raw
> libguestfs: command: run: \ /tmp/libguestfs3pGMi6/overlay1.qcow2
> qemu-img: /tmp/libguestfs3pGMi6/overlay1.qcow2: invalid conf option
> :cefc:1]:6789:auth_supported: No such file or directory
> Could not open backing image to determine size.

The code in libguestfs is supposed to turn the guestfs_add_drive
‘servers’ parameter into a Ceph URL for qemu:

  https://github.com/libguestfs/libguestfs/blob/f79129b8dc92470e3a5597daf53c84038bd6859e/lib/qemu.c#L905

and I suppose this is being done wrong somehow (I don't have a Ceph
server to test).

At a guess I would say that it seems as if ':' characters must be
quoted somehow (backslash?) because they are also used to separate the
address and port number.

Rich.

-- 
Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones
Read my programming and virtualization blog: http://rwmj.wordpress.com
virt-builder quickly builds VMs from scratch
http://libguestfs.org/virt-builder.1.html




More information about the Libguestfs mailing list