0
This is a follow-up for my earlier question. Based on feedback from Daniel B and Deltic, I switched from VirtualBox to QEMU, which can handle 64-bit guests on a VM as a host (Hyper-V, in my case) - a scenario referred to as nested virtualization.
After installing QEMU and reading some documentation, I successfully converted the given OVA image into (a native to QEMU) QCOW2 format. I noticed that the resulting image is much larger than the original one (6.4G vs. 1.3G), but, perhaps, this is normal. Then I learned how to launch a VM, using QEMU, and tried to do just that:
qemu -nographic -hda <IMAGE_NAME>.qcow2 &
Then I realized (and later confirmed by further reading of QEMU documentation) that the default networking scheme implies lack of bridging between the host and the guest OSes. My attempt to enable the bridging, as follows, failed (based on this blog post):
qemu -nographic -net bridge:br0 -hda <IMAGE_NAME>.qcow2 &
I'm hesitant to use the method, based on using bridge-utils
, described here, as it might mess up networking for the host OS. Also, based on this document, I tried to redirect ports (see below), but it didn't work for me either. If TAP interfaces is the solution, then how should I apply it to my situation.
My situation is that the guest VM starts a Web application, which can be accessed in a local mode by navigating to the URL http://192.168.xx.yy/<APPLICATION_NAME>
. Basically, I need to expose the application (running in nested virtualization mode) to the world. So, my question is twofold:
1) what is the optimal (and, hopefully, the easiest) way to enable network bridging in my situation;
2) should I and, if Yes, how exactly can I redirect ports to allow users to access the application at https://<FQDN of the host VM>/<APPLICATION_NAME>
, preferably, via non-standard ports?
Excellent answer. I very much appreciate your help. Your assumption about me not having access to the physical server / network is correct. However, I can inquire about needed information on the Hyper-V virtual machine and then try relevant steps from your advice. Will work on all that and share (hopefully, positive) results. – Aleksandr Blekh – 2016-07-15T10:55:09.453
This phrase is a bit unclear to me: "attach a public/floating IP address to that private/fixed IP address". How exactly this can be done in my case? Could you clarify or refer to the relevant section in documentation? – Aleksandr Blekh – 2016-07-15T11:02:05.637
@AleksandrBlekh: It depends on the hosting provider's networking. Do you get one public IP address? Multiple? And are you on a private IP network? Does the public IP attach to the private IP like in a home network? There are a lot possible configurations, so I can only guess unless you provide more details about your network. – Deltik – 2016-07-15T11:06:35.887