-
Notifications
You must be signed in to change notification settings - Fork 648
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Apple M1] Instance no longer get an IP address when it previously worked #2265
Comments
|
Hi @adamcstephens & @lethargosapatheia, I've moved the thread to this new issue. One thing I'd like for you to check is when there is a Multipass instance launched, do you see a Thanks! |
|
Here it is: |
|
I ran a tcpdump on that interface and the VM is requesting an IPv4 address: Also IPv6 seems to work, I assume this is the VM based off the tcpdump data: Is InternetSharing providing DHCP for the VMs? Systems Preferences gives me the indication it's not fully configured: I also pulled this out of my system.log in #1857. Could this be a relevant error? Is there somewhere I can learn more about how InternetSharing is configured? Does it need to be notified of the interface somehow? |
All that shows that the network is set up correctly from our side. Thanks a lot for the dig!
Yes, but not in a way you can influence. If you enable Internet Sharing here it will actually prevent instances from starting altogether (the network interface will not start). How it's set up is a bit of a black box - just starting the interface using the vmnet API is what triggers the
Don't think so, no.
And again, that's what QEMU is doing, but macOS seems to not be doing the right thing :/ |
|
FWIW, the config of the DHCP lies in <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Subnets</key>
<array>
<dict>
<key>_creator</key>
<string>com.apple.NetworkSharing</string>
<key>allocate</key>
<true/>
<key>dhcp_domain_name_server</key>
<array>
<string>192.168.65.1</string>
</array>
<key>dhcp_router</key>
<string>192.168.65.1</string>
<key>interface</key>
<string>bridge100</string>
<key>lease_max</key>
<integer>86400</integer>
<key>lease_min</key>
<integer>86400</integer>
<key>name</key>
<string>192.168.65/24</string>
<key>net_address</key>
<string>192.168.65.0</string>
<key>net_mask</key>
<string>255.255.255.0</string>
<key>net_range</key>
<array>
<string>192.168.65.2</string>
<string>192.168.65.254</string>
</array>
</dict>
</array>
<key>bootp_enabled</key>
<false/>
<key>detect_other_dhcp_server</key>
<array>
<string>bridge100</string>
</array>
<key>dhcp_enabled</key>
<array>
<string>bridge100</string>
</array>
<key>dhcp_ignore_client_identifier</key>
<true/>
<key>ignore_allow_deny</key>
<array>
<string>bridge100</string>
</array>
<key>use_server_config_for_dhcp_options</key>
<true/>
</dict>
</plist>The file gets recreated if moved away, but maybe it's corrupted in your case somehow? Try killing |
|
Hi @adamcstephens & @lethargosapatheia, did you have a chance to review what I wrote above? Maybe tried moving the file away to test? |
|
@Saviq yes I moved the file and it was recreated with the same contents. It looks similar to yours but with a different subnet. |
|
@adamcstephens …and it didn't help? |
|
Also @adamcstephens, what is the subnet listed in your file and does it match the Thanks! |
|
@Saviq correct, it did not help. @townsend2010 yes, it does match |
|
|
|
I am currently not experiencing this issue. It's possible a reboot solved this but I am not sure. I have launched and destroyed multiple VMs over the past couple days without problem. |
|
Thanks @adamcstephens, that's great news. @lethargosapatheia are you still seeing this problem? Had you tried to reboot yet? |
|
@Saviq By the way, is there such a thing as an uninstaller that cleans up everything if I wanted to install everything anew? |
Follow https://multipass.run/docs/installing-on-macos: Unfortunately it's quite unlikely it will help - as far we can tell, it's macOS not working well, not Multipass. |
|
I'm asking out of pure technical curiosity (wouldn't dare pointing any fingers :) ): why do you think Parallels works without any issues, for example? That is, if you happen to have any experience with it... Reinstalling it didn't change anything, of course, as you've anticipated :) |
|
I'm not privy to how Parallels handles virtual networking since it's closed source, but it's quite possible that it doesn't use |
|
just FYI: I've been trying this tool for virtualisation, and it seems to work consistently: |
|
Purely observational, I have this issue crop up every now and then on Intel and now on my M1. Finding no process providing DHCP and instances cannot launch anymore when previously they were running.
Going into System Preferences -> Sharing, and enabling Internet Sharing, then disabling it again allows launchd to start the bootp server again and instances can launch again. |
|
Thanks a lot @lucasnetau! It looks like we may need to add a quirk for this case and inform the user of the possible workaround. |
|
@lethargosapatheia lima, by default, uses guest networking which does not allow IP traffic between the host and instances. If you enable |
|
I have tried to use multipass on Apple M1 Max and have observed that if the Firewall is turned on (as per documentation without blocking all incoming connections) I get the timeout described above. If the Firewall is off, then I am able to launch instances, perform shell into them etc without any problems. I am running 1.8.0 Firewall On multipass start dvm -vvvvClient Log multipass log Firewall Off sudo launchctl unload /Library/LaunchDaemons/com.canonical.multipassd.plist
sudo launchctl load /Library/LaunchDaemons/com.canonical.multipassd.plist
multipass start dvm -vvvvClient Log multipass log This is reproducible for me. I have not yet zeroed down on what needs to be enabled on the Firewall for this to be successful with the Firewall turned on. Any pointers are much appreciated. |
|
Just to add another data point, I'm seeing the same problem @pavibhai describes.
I think the binary Happy to provide any additional logs or perform troubleshooting steps. My |
|
same as @gluxon here. |
|
Can anyone with this issue please run this and start the instance in another terminal ( |
|
Hey all, so I've tried to reproduce this through enabling firewall, both on the M1 (on macOS 11.6.4) and on x86 (latest macOS 12) and I couldn't get it to break… Could any of you with this problem please post the result of |
|
@Saviq Thanks for following up Here is the output from my M1 Max running 12.2.1 {
allowdownloadsignedenabled = 1;
allowsignedenabled = 1;
applications = (
{
alias = {length = 659, bytes = 0x3c3f786d 6c207665 7273696f 6e3d2231 ... 2f706c69 73743e0a };
bundleid = "com.apple.controlcenter";
reqdata = {length = 52, bytes = 0xfade0c00 00000034 00000001 00000006 ... 74657200 00000003 };
state = 0;
},
{
alias = {length = 634, bytes = 0x3c3f786d 6c207665 7273696f 6e3d2231 ... 2f706c69 73743e0a };
bundleid = "com.jetbrains.intellij.ce";
reqdata = {length = 168, bytes = 0xfade0c00 000000a8 00000001 00000006 ... 41523854 48330000 };
state = 0;
},
{
alias = {length = 598, bytes = 0x3c3f786d 6c207665 7273696f 6e3d2231 ... 2f706c69 73743e0a };
bundleid = "";
state = 0;
}
);
exceptions = (
{
path = "/usr/libexec/configd";
state = 3;
},
{
path = "/usr/sbin/mDNSResponder";
state = 3;
},
{
path = "/usr/sbin/racoon";
state = 3;
},
{
path = "/usr/bin/nmblookup";
state = 3;
},
{
path = "/System/Library/PrivateFrameworks/Admin.framework/Versions/A/Resources/readconfig";
state = 3;
},
{
path = "/usr/libexec/discoveryd";
state = 3;
},
{
path = "/usr/libexec/bootpd";
state = 3;
},
{
path = "/usr/libexec/xartstorageremoted";
state = 3;
},
{
bundleid = "com.apple.EmbeddedOSInstallService";
path = "/System/Library/PrivateFrameworks/EmbeddedOSInstall.framework/Versions/A/XPCServices/EmbeddedOSInstallService.xpc/";
state = 3;
}
);
explicitauths = (
{
id = "org.python.python.app";
},
{
id = "com.apple.ruby";
},
{
id = "com.apple.a2p";
},
{
id = "com.apple.javajdk16.cmd";
},
{
id = "com.apple.php";
},
{
id = "com.apple.nc";
},
{
id = "com.apple.ksh";
}
);
firewall = {
"Apple Remote Desktop" = {
proc = AppleVNCServer;
state = 0;
};
"FTP Access" = {
proc = ftpd;
state = 0;
};
ODSAgent = {
proc = ODSAgent;
servicebundleid = "com.apple.ODSAgent";
state = 0;
};
"Personal File Sharing" = {
proc = AppleFileServer;
state = 0;
};
"Personal Web Sharing" = {
proc = httpd;
state = 0;
};
"Printer Sharing" = {
proc = cupsd;
state = 0;
};
"Remote Apple Events" = {
proc = AEServer;
state = 0;
};
"Remote Login - SSH" = {
proc = "sshd-keygen-wrapper";
state = 0;
};
"Samba Sharing" = {
proc = smbd;
state = 0;
};
};
firewallunload = 0;
globalstate = 0;
loggingenabled = 1;
loggingoption = 0;
previousonstate = 1;
stealthenabled = 0;
version = "1.6";
} |
|
Since the cause/effect seems the same on this one: #2265 I'll dupe this to the other so we have one place to collect all the information. |
|
Duplicate of #2265 |
|
Duplicate of #2387 |


This is separating out the ongoing issues seen in #1857 where for some reason, instances are no longer getting an IP address when it previously worked.
The text was updated successfully, but these errors were encountered: