On Sat, Dec 01, 2018 at 07:57:51AM -0600, Eric Blake wrote: > On 12/1/18 1:42 AM, Richard W.M. Jones wrote: > >On Fri, Nov 30, 2018 at 04:03:29PM -0600, Eric Blake wrote: > >>I note that upstream NBD has 'nbd-client -l $host' for querying > >>just export names (with no quoting, so you have to know that > >>a blank line means the default export), but it wasn't powerful > >>enough, so I implemented 'qemu-nbd -L' to document everything. > >>Upstream NBD has separate 'nbd-client' and 'nbd-server' binaries, > >>while we only have 'qemu-nbd' (which is normally just a server, > >>but 'qemu-nbd -c' also operates a second thread as a client). > >>Our other uses of qemu as NBD client are for consuming a block > >>device (as in qemu-io, qemu-img, or a drive to qemu) - but those > >>binaries are less suited to something so specific to the NBD > >>protocol. > > > >I tried it against nbdkit and it works (obviously): > > > >$ ./qemu-nbd -L > >exports available: 1 > > export: '' > > size: 67108864 > > flags: 0x61 ( trim zeroes ) > > > >What I couldn't work out is how to connect to other hosts. It's > >possible to add -p or -k to change the localhost port number or to use > >a Unix domain socket (and I checked both work). However can we > >connect to remote hosts? > > Should work by adding '-b host' (if -b is omitted, it defaults to > 0.0.0.0). However, I admit that so far I have only tested '-b > localhost' or '-b 127.0.0.1' (per the iotest additions at the end of > the series), so it could well be something that I missed in setting > up the client socket in nbd_build_socket_address().
Must have missed that option. It does work, thanks. 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