You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
It shares `VmnetNetwork` serialization between VMs.
- `limactl vz-vmnet --enable-mach-service`: register Mach service and launch
- `limactl vz-vmnet --enable-mach-service=false`: unregister Mach service
`limactl vz-vmnet` does:
- Receives a registration payload from VZ driver with fields:
- `Network`: name of the network ("shared", "host", etc)
- `CDHash`: `cdhash` bytes of the executable.
- `Configuration`: `[]bytes@ representing `VzNetworkConfig` in JSON.
- `Serialization`: serialization created by `VmnetNetwork.CopySerialization()`
- Validates the provided cdhash matches to client's cdhash by using xpc_peer_requirement API.
- Check the existence of the host interface using `VzNetworkConfig.Subnet`.
- If the cdhash is valid and the interface is not exists, accepts registration to serialization entries.
- If `Serialization` is not in payload and the network registration exists,
reply the payload to client if the registered network still exists.
- reply error on otherwise.
VZ driver does:
- Check the existence of the host interface using `VzNetworkConfig.Subnet`.
- If exists:
- Retrieves the existing registration payload from `lima vz-vmnet`.
- Validate cdhash in payload matches with the self cdhash
- If the `VzNetworkConfig` changed, produce a warning to log
- Create a VmnetNetwork from the serialization
- If not exists, Create a VmnetNetwork from `VzNetworkConfig`, and register them to `lima vz-vmnet`
Signed-off-by: Norio Nomura <norio.nomura@gmail.com>
0 commit comments