Send en vekkepakke rett etter avslåing og PC-en kommer tilbake; samme kommando neste morgen gjør ingenting. Ingenting i VPN-konfigurasjonen er endret, og portvideresendingen peker fortsatt på riktig adresse. Forskjellen er tid: nabo tabellen til ruteren har glemt den sovende maskinen, så den har ingen MAC-adresse å sette på rammen. Den utløpte oppføringen, ikke tunnelen, forklarer de fleste Wake-on-LAN-feil over en VPN.

Den første vekkingen virker, den neste ikke

En ruter videresender en ramme til en privat adresse ved å slå opp målet i nabo tabellen. Mens maskinen kjører svarer den på ARP, så tilordningen holder seg fersk. Når den slås av, svarer ingenting, oppføringen utløper etter noen minutter, og senere rammer til den adressen forkastes selv om IP og portvideresending fortsatt er gyldige.

Mønsteret forteller deg hvilken feil du har. En vekking som aldri virker peker på leveringen: feil port, feil mål eller en brannmur som forkaster pakken før den når LAN. En vekking som virker én gang og deretter feiler i timer peker på nabo-oppføringen. En vekking som virker til DHCP-leasen endres peker på adresseringen, som en reservasjon retter opp.

Bekreft at adressen er stabil før du rører ARP. Får den sovende maskinen en ny adresse når en lease utløper, vil en låst nabo-oppføring for den gamle adressen være permanent og ubrukelig samtidig. Sett opp en DHCP-reservasjon først, slik at adressen overlever omstart.

Hva den magiske pakken trenger fra nettverket

Nyttelasten er enkel: 102 byte av seks 0xFF-byte etterfulgt av mål-MAC-adressen seksten ganger, vanligvis sendt til UDP-port 9. På et flatt LAN går den ut som kringkasting, hver port mottar den, og det avslåtte nettverkskortet gjenkjenner sin egen adresse.

Over en VPN ankommer pakken ruteren som unicast til en privat adresse eller som subnett-rettet kringkasting. I unicast-tilfellet må ruteren løse opp målet til en MAC-adresse før den kan sette rammen på LAN, og nettopp den oppløsningen feiler mens verten sover.

Noen verktøy sender til port 7 i stedet for 9, og noen enheter blokkerer rettet kringkasting som standard. Det er leveringsfeil, ikke ARP-feil, så sjekk mål og port før du endrer nabo tabellen.

Tre veier til en sovende vert

Du har tre praktiske måter å få rammen inn på LAN, og det riktige valget avhenger av hva du kontrollerer.

MethodWhat it needsWhere it breaks
Subnet-directed broadcastA wake tool that accepts a broadcast address and a router that forwards itBroadcast filtering, or a tool that only takes a MAC
Helper on the LANAn always-on host such as the VPN serverNo suitable host, or the host cannot reach the target VLAN
Permanent neighbour entryRouter shell access and the target MACNIC replacement or address change

Velg hjelpeverten når det finnes en, fordi den kringkaster på lenken og ikke trenger noe ruterunntak. Velg rettet kringkasting når ruteren allerede tillater det og vekkeverktøyet støtter en adresse. Velg den statiske oppføringen når ingen av dem er tilgjengelige og du kan kjøre en kommando på ruteren.

Disse utelukker ikke hverandre. En permanent oppføring gjør også at unicast-veien overlever søvn, noe som er nyttig når VPN-klienten bare kan sende til en bestemt adresse.

Gjør nabo-oppføringen permanent

På en ruter med Linux-skal låser én kommando tilordningen. Verdiene her tilhører et eksempel-LAN og må erstattes med dine egne:

ip neigh replace 192.168.50.23 lladdr 3c:7c:3f:12:9a:4e dev br0 nud permanent
ip neigh show dev br0 | grep 192.168.50.23

Tilstanden nud permanent holder oppføringen gjennom ARP-tidsavbrudd og bruker den til videresending mens maskinen er av. Den andre kommandoen beviser at oppføringen finnes og viser grensesnittet den hører til, noe som betyr noe på rutere med en separat gjestebro eller VLAN.

Gjør den bestandig mot omstart gjennom den kroken fastvaren tilbyr: et skript i /jffs/scripts på Asuswrt-Merlin, en systemd oneshot-enhet på en Linux-server som gateway, en Neighbor= stanza i systemd-networkd, eller en oppføring i /etc/ethers, som de lokale verktøyene leser. En kommando som skrives i en skal forsvinner ved neste omstart, og det er den vanligste grunnen til at en fungerende løsning ser ut til å slutte å virke.

Test utenfra og vit når den skal fjernes

Sett maskinen i søvn og vent minst ti minutter, lenge nok til at enhver dynamisk oppføring utløper. Send deretter vekkeforespørselen fra VPN-klienten og følg med på begge sider av ruteren:

tcpdump -ni tun0 udp port 9
tcpdump -ni br0 ether proto 0x0806 or udp port 9

Den første opptaket beviser at pakken kom fra tunnelen; det andre beviser at ruteren satte en ramme på LAN. En gyldig magisk pakke vises som 102 byte med MAC gjentatt, så sjekk lengden så vel som målet. Forlater rammen LAN-broen og maskinen blir av, ligger det gjenværende problemet på enheten: hurtigstart, dyp søvn eller en BIOS-innstilling som kutter strømmen til nettverkskortet.

Fjern oppføringen når nettverkskortet skiftes, og oppdater den når du flytter maskinen til en annen adresse. En permanent tilordning er et bevisst unntak, og et unntak ingen husker er hvordan en fremtidig bærbar ender med å motta rammer ment for en pensjonert stasjonær.

Relaterte artikler