Ip

What is an IP address? It's a label for a device. Like "192.168.1.12" = Mini 1. What is a network? A group of devices that can talk directly. Defined by the first 3 numbers.

192.168.1.x = one network 192.168.64.x = different network

Why can't different networks talk? When a device sends data, it checks: "Is the destination on my network?"

If YES → send directly If NO → "I don't know how to reach that, give up"

Example:

VM is 192.168.64.2 Wants to reach 192.168.1.12 VM checks: "Is 1.12 on my network (64.x)?" NO VM: "I don't know how to reach 1.x networks" → packet dies

What's a gateway/router? A device that connects two networks and forwards traffic between them. Your M1 Mac can be a router because it has connections to BOTH networks:

Connected to VM network (192.168.64.x) via bridge100 Connected to mini network (192.168.1.x) via en7

What did we configure? Step 1 - Tell VM where to send packets for mini network: baship route add 192.168.1.0/24 via 192.168.64.1 Translation: "To reach anything 192.168.1.x, send it to 192.168.64.1 (M1)" Step 2 - Tell M1 it's allowed to forward: bashsysctl -w net.inet.ip.forwarding=1 Translation: "M1, you're a router now, pass packets between networks" Step 3 - NAT (change packet addresses): bashnat on en7 from 192.168.64.0/24 to any -> (en7) Translation: "When packets from VM network go out en7, change their source address to en7's IP (192.168.1.10) so replies work" Full flow:

Parrot VM wants to ping 192.168.1.12 VM checks routing table: "192.168.1.x goes via 192.168.64.1" VM sends packet to 192.168.64.1 (M1's bridge100) M1 receives it on bridge100 M1 checks: "This is for 192.168.1.12, that's out my en7 interface" NAT changes packet source from 64.2 to 1.10 Packet goes out en7 onto physical switch Mini receives packet from 192.168.1.10 Mini replies to 192.168.1.10 Reply comes back to M1's en7 NAT changes it back to 192.168.64.2 M1 forwards reply to VM VM receives reply

The key concept: Networks are islands. Routers are bridges between islands. M1 is acting as a bridge.