Docs · حوالہ

Networking

تین network modes، port forwarding، اور کس کو Apple entitlement چاہیے۔

Modes

ModeWhat it gives the guest
natAn address on a private network, sharing your Mac's connection. The default, and what you want almost always.
host-onlyA network with the Mac and nothing else. No outbound internet.
bridged:en0An address on your real LAN, as though the guest were another machine on it.
1vm create dev --network nat
1vm set dev network.mode host-only
1vm set dev network.mode bridged:en0

NAT

1VM engine first-party user-mode NAT stack ships کرتا ہے — DHCP، DNS اور TCP/UDP translation — external network daemon delegate کی بجائے۔ Guest address automatically ملتا ہے اور outbound connections کام کرتے ہیں۔

1vm ip <vm> address print کرتا ہے، 1vm list state کے ساتھ دکھاتا ہے۔ Boot ہو چکی machine جس نے DHCP complete نہیں کیا waiting report کرتی ہے، جھوٹا address نہیں۔

Port forwarding

Mac سے guest میں service reach کریں:

1vm set dev portForwards.add tcp:2222:22
1vm set dev portForwards.add tcp:8080:80
1vm set dev portForwards.remove tcp:8080:80

Form protocol:hostPort:guestPort ہے۔ 1VM engine forwards صرف loopback bind — Mac سے reachable، باقی network سے نہیں۔ Guest دوسری machines سے reachable چاہیے تو bridged networking۔

Bridged entitlement-gated ہے

Bridged networking کو com.apple.vm.networking entitlement چاہیے، Apple request پر دیتا ہے۔ اس کے بغیر bridged interface میں unavailable with a reason دکھتا ہے، hidden یا boot fail نہیں۔ جان بوجھ کر: غائب option وجہ نہیں بتاتا۔

SSH

SSH first-class path ہے، hand configure نہیں:

1vm ssh enable dev
1vm ssh config --install     # adds an Include line to ~/.ssh/config
ssh dev                      # plain ssh now resolves the machine name

1vm ssh trust dev guest host key pin کرتا ہے، --relearn rebuild کے بعد re-pin۔ Parent کے ساتھ parallel clone چلائے تو 1vm clone dev test --rekey-ssh تاکہ same host key نہ present ہو۔