Host A (10.0.0.10/24) chce wysłać dane do hosta C (192.168.1.20/24).
Host A sprawdza maskę – adres 192.168.1.20 nie należy do sieci 10.0.0.0/24.
Host A wysyła ARP Request na adres bramy domyślnej (10.0.0.1) – router odpowiada ARP Reply.
Host A tworzy ramkę: DA = MAC_routera, SA = MAC_A, IP_doc = 192.168.1.20.
Router odbiera pakiet, sprawdza tablicę routingu i stwierdza, że sieć 192.168.1.0/24 jest dostępna przez interfejs eth2.
Router wysyła ARP Request w sieci 192.168.1.0: "kto ma 192.168.1.20?" – Host C odpowiada ARP Reply.
Router tworzy nową ramkę: DA = MAC_C, SA = MAC_router_eth2 i wysyła pakiet do hosta C.
WARSTWA L2 vs L3: Router tworzy całkowicie nową ramkę Ethernet z własnym adresem MAC jako źródłowym i adresem MAC hosta C jako docelowym.
Adresy IP źródła (10.0.0.10) i celu (192.168.1.20) w pakiecie oraz dane wyższych warstw (ICMP, TCP, UDP) pozostają bez zmian – router nie modyfikuje niczego powyżej warstwy 3.
Gdyby pakiet przechodził przez kilka routerów, każde z nich zmieniłoby adresy MAC, ale adresy IP pozostałyby te same na całej trasie.
Cały proces jest przezroczysty dla aplikacji – host A i C widzą tylko swoje adresy IP.