#302 closed defect (fixed)

qvm-prefs: allow for on the fly netvm switch

Reported by: joanna Owned by: joanna
Priority: major Milestone: Release 1 Beta 2
Component: core Keywords:
Cc:

Description

When the user types:

qvm-prefs -s SomeAppVM netvm SomeNetVM

and if the SomeAppVM already is running, qvm-prefs should automatically re-attach the SomeAppVM to the new SomeNetVM (also making sure to reinitialize networking in SomeAppVM). This seems simple, yet would be extremely useful for users that decided to have a separate UsbVM and keep their 3G modem there. Then switching between WiFi? and 3G modem would be just a matter of setting a different netvm for the firewallvm.

Change History (7)

comment:1 Changed 22 months ago by joanna

  • Priority changed from minor to major

comment:2 Changed 22 months ago by rafal

  • Resolution set to implemented
  • Status changed from new to closed

comment:3 Changed 22 months ago by joanna

  • Resolution implemented deleted
  • Status changed from closed to reopened

It doesn't seem to be working. I created an additional NetVM that I call 'usbvm' (which has 3G modem).

Now I did:

[joanna@dom0 ~]$ qvm-prefs -s firewallvm netvm usbvm

and got the following error:

Traceback (most recent call last):
  File "/usr/bin/qvm-prefs", line 318, in <module>
    main()
  File "/usr/bin/qvm-prefs", line 309, in main
    do_set(qvm_collection, vm, property, args[2:])
  File "/usr/bin/qvm-prefs", line 261, in do_set
    return properties[property](vms, vm, args)
  File "/usr/bin/qvm-prefs", line 139, in set_netvm
    "script=/etc/xen/scripts/vif-route-qubes"])
  File "/usr/lib64/python2.6/subprocess.py", line 488, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['xl', 'network-attach', 'firewallvm', 'ip=10.137.3.5', 'backend=usbvm', 'script=/etc/xen/scripts/vif-route-qubes']' returned non-zero exit status -11


comment:4 Changed 22 months ago by joanna

I'm using xen 4.1.0-8 packages, and qubes core 1.6.17-dom0, BTW.

comment:5 Changed 22 months ago by rafal

  • Resolution set to fixed
  • Status changed from reopened to closed

comment:6 Changed 22 months ago by joanna

  • Resolution fixed deleted
  • Status changed from closed to reopened

After dynamic global netvm switch:

qvm-prefs -s netvm netvm <newnetvm>
  • DNS resolving doesn't work (one needs to manually fix resolv.conf in each AppVM).
  • TCP doesn't work (curl google.com), even though ICMP works fine.

comment:7 Changed 22 months ago by joanna

  • Resolution set to fixed
  • Status changed from reopened to closed

Works now with 1.6.19-vm rpms :)

Note: See TracTickets for help on using tickets.