Väck en sovande hem-PC över VPN: varifrån paketet kommer
En tunnel kan inte väcka maskinen som den själv avslutar. Lägg magic packet på hem-LAN:et, bekräfta adaptern och strömläget och anslut sedan.
Du ansluter, routern svarar och skrivbordsdatorn förblir mörk. Tunneln är okej; paketet som skulle ha väckt maskinen nådde aldrig segmentet där maskinen lyssnar. Går du vägen baklänges från routern ser du var det dör.
Tre enheter har tre uppgifter. Att blanda ihop dem är det vanliga skälet till att ett väckningsförsök snurrar för evigt.
Börja vid fjärrklienten och följ vägen
Från ett hotellnätverk ansluter du till hemroutern, som är den enda alltid aktiva ändpunkten i bilden. En väckningsbegäran du skriver på laptopen blir vanlig tunneltrafik, adresserad till vilket mål du än har angett. Det målet avgör allt som följer.
Om du skickade den till hemrouterns LAN-adress på magic-packet-porten kan routern ta emot datagrammet och aldrig sända ut en ram på hemsegmentet, eftersom ingenting där lyssnar på den porten. Om du sänder den inuti tunneln stannar den vid tunnelgränssnittet. En routad tunnel är inte en förlängning av lager 2 i husets ledningsnät. Följ vägen hopp för hopp och återvändsgränden blir tydlig.
Kontrollen som avgör detta kräver ett kommando från fjärrsidan och ett från hemsidan. Skicka begäran och bevaka sedan hemsegmentet efter ramen.
Flytta avsändaren in på hemsegmentet
Routern kan göra väckningen själv när du väl är autentiserad genom tunneln. OpenWrt dokumenterar en Wake-on-LAN-tjänst som körs på enheten och sänder ut ramen lokalt, och det är precis den form som behövs: fjärrautentisering utanför, lokal utsändning innanför.
Den ordningen håller också väckningsfunktionen borta från det publika internet. Inget nytt exponeras mot internet, eftersom utlösaren går över VPN:et du redan litar på. Alternativet, en väckningstjänst med vidarebefordrad port, byter lite bekvämlighet mot en internetvänd ändpunkt som vem som helst kan sondera.
Det cirkulära beroendet är värt att namnge rakt ut. En VPN-klient installerad på skrivbordsdatorn kan inte väcka den datorn, eftersom klientprocessen behöver maskinen igång. Håll fjärråtkomstpunkten på routern eller en annan alltid aktiv låda, och låt skrivbordsdatorn bara vara ett mål.
Bekräfta målet innan du skyller på tunneln
Den här delen avgörs av hårdvaran, inte av VPN:et, och strömläget avgör den först. Adaptern måste stödja väckning, firmware måste lämna adaptern strömförsörjd i sömn, och operativsystemet måste vara konfigurerat att tillåta det. En maskin som är suspenderad är ett annat fall än en som stängts av, och båda skiljer sig från en maskin vars strömförsörjning är avstängd vid väggen. Klargör det läget innan du går igenom resten av listan.
Läs hårdvaruadressen från adaptern som faktiskt tar emot ramen. En skrivbordsdator med både Ethernet och Wi-Fi har ofta två adresser, och bara en av dem är kanske väckningsbar. Trådlös väckning är en separat förmåga med egna firmwarekrav, så en fungerande Ethernet-väckning säger inget om väckning över Wi-Fi.
Bevisa den lokala vägen först. Skicka magic packet från en annan enhet på samma switch och se maskinen komma upp. Om det misslyckas hjälper ingen mängd felsökning av tunneln, och felet ligger i firmware, adapterinställningar eller strömläget.
Efter uppvaknandet, anslut till tjänsten du ville ha
Väckning är inte fjärråtkomst. När maskinen återupptar måste den fortfarande starta sina tjänster, få en adress och acceptera sessionen du faktiskt behöver. Ge den tid att nå det läget innan du drar slutsatsen att väckningen misslyckades.
# remote side: trigger the wake through the already-authenticated tunnel
ssh [email protected] 'wol -i br-lan 3c:7a:8f:2b:11:04'
# home side: is the target answering on the LAN?
ping -c 3 10.10.0.42
arp -n 10.10.0.42
Raden arp är den användbara. En post som växlar från ofullständig till en riktig hårdvaruadress betyder att maskinen återupptog och svarade; en begäran som aldrig löses upp pekar tillbaka på väckningssteget snarare än på tjänsten du försökte nå.
Separera faserna i dina anteckningar: väckning, uppstart, tjänst. Ett fel i fas två ser identiskt ut med ett fel i fas ett från ett chattfönster, och bara det lokala beviset skiljer dem.