8 ms·
Worth noting that Multipass does not support launching VMs with bridged networking. See this issue for details: https://github.com/canonical/multipass/issues/1
by programd 7y ago
Worth noting that Multipass does not support launching VMs with bridged networking. See this issue for details:
https://github.com/canonical/multipass/issues/118 https://github.com/canonical/multipass/issues/118
This means that your VMs won't be able to get IP addresses on your LAN via DHCP. Kind of a fundamental omission for this kind of product I would think. Curious that it's not a high priority issue for them.
Also, what's the IPv6 story here? I didn't see anything in the docs addressing that, unless I'm missing something.
- exhilaration 7y agoI'm confused, does that mean the VMs can't reach the internet?
- wmf 7y agoThey're probably NATed so they can reach out.
- freedomben 7y agoYes they are NATed through the host, and typically bridged to each other (tho not always).
- freedomben 7y agoMaybe we have very different use cases, but I almost never use bridged networking. Typically what I want is all outgoing connections to be NATed through the host. That said I agree, it should be an option. There are certainly use cases for it.
- oefrha 7y agoAt home I have a Hyper-V-based Ubuntu VM on a Windows workstation that runs almost all my LAN services. Not having bridged networking would be a complete deal breaker.
- freedomben 7y agoVery interesting. May I ask why you host them on a Windows workstation? Is it your desktop/gaming machine?
- oefrha 7y agoMy primary desktop is an iMac. I built the Windows workstation to very good specs though and only use it for the occasional cross-platform development on Windows or gaming, so all the compute power is idle most of the time. Hosting services on it is a good use of the resources.
- kenny_r 7y agoThey're marketing this as a "mini-cloud". If it can only network through NAT, that eliminates all use cases where the VM instances would act as a server. I'm a sysadmin, so I like tools like this to test out provisioning of servers with configuration management such as Ansible or Puppet. Running tests at the end where I actually test the endpoints of the deployed services would be really nice to have, but impossible to do through NAT. I guess that's a niche use case for this because Vagrant had the same issue for a long time, where setting up a bridged network was not possible or required some hacks.
- tomjakubowski 7y agoI'm missing something - even without bridged networking, the VMs should still be able to network with each other, and the VM host should also be able to reach each VM. So I don't see how the lack of bridged networking prevents you from testing the deployed VMs. Do you need to control the tests from somewhere outside the VM host?
- jsjohnst 7y agoNAT networking does not imply the host running Multipass can access ports exposed on the VMs, quite the opposite. Host only would imply that, but not typical NAT in a virtual machine. Not saying it’s not possible with Multipass, just saying it shouldn’t be assumed it does.
- mlyle 7y agoGenerally if you are on a router performing NAT, you have routes to the hosts behind the NAT. Whenever I've used VMs with NAT I've been able to interact with the NAT'd network from the actual hypervisor host.
- jsjohnst 7y agoWhich hypervisor are you using? As one example, VirtualBox[0] only allows host -> VM via port forwards when using NAT networking. [0] see table 6.1 here: https://www.virtualbox.org/manual/ch06.html https://www.virtualbox.org/manual/ch06.html
- r00fus 7y agoWhat is the benefit for bridged vs. NAT'd addresses for this kind of use case?
- moondev 7y agoIf you want to easily access your multipass vm from another machine/location on your network
- ygjb 7y agoSince the target audience is workstations, using bridging as a default is a monumentally bad idea. The proliferation of easy to use tools to host and run instances on workstations has been a huge boon for engineers, but it comes at a cost - those instances need to be maintained, or they are source of vulnerability. By forcing users to be intentional about how those instances are exposed inbound network traffic and the internet in general, it drastically reduces the attack surface of virtual machines on the workstation. It would be great if there was an option for it though (not familiar enough with this tool to know if it is).
- moondev 7y agoPlease... Let me make the decision on how to use the tooling. This is trivial with docker docker run -d --rm -p 8080:8080 jenkins:latest EDIT - technically above is not bridged networking but you get the idea
- amanzi 7y agoI haven't tested this, but I'm thinking that you could use cloud-init to configure IPv6 on the guest, as long as your host and Hyper-V configuration supports it. https://cloudinit.readthedocs.io/en/latest/index.html https://cloudinit.readthedocs.io/en/latest/index.html
- simosx 7y agoNote that bridged networking does not work if your computer is connected to the LAN over WiFi.