Nu, mijn VPN werkt voor alles wat ik doe behalve Lifx, het is WireGuard, het is afgesloten op mijn thuisrouter, het heeft zowel IPv4 als IPv6. Er is geen firewall voor de VPN op de router behalve NAT voor IPv4 verkeer naar internet. Ik werk al meer dan 6 jaar in netwerken, ik ben vrij zeker dat er niets mis is met de VPN zelf. Hetzelfde gebeurde vroeger op een andere WireGuard-server die ik had, volledig anders geconfigureerd.
Het probleem doet zich voor of ik nu op 4G of wifi ben, ik wil dat mijn VPN altijd aanstaat, maar dat betekent dat ik mijn lamp niet vanaf mijn telefoon kan bedienen.
Ik zou gewoon een lokale route instellen op je router. Het klinkt alsof je wifi gebruikt, alles werkt, je telefoon is verbonden met je lokale netwerk en toont de lokale lamp. Je schakelt over op VPN en netwerkadressen veranderen, maar toont nog steeds dat je op wifi bent met een lokaal IP. Je telefoon kan de lamp gewoon niet zien. Probeer continu te pingen naar de lamp met en zonder lamp.
Eerlijk gezegd verwacht ik dat ze het niet zullen merken! Ik verbind via TCP met de LIFX-servers, ik verwacht dat de lamp dat ook doet, en mijn berichten moeten worden doorgegeven zonder dat ze iets weten van het onderliggende pakket-geschakelde netwerk…
Ja, het bevindt zich op een andere interface, dus het moet een ander subnet zijn.
En WireGuard ondersteunt broadcast toch niet.
Ik verwacht en wil dat het altijd terugvalt op de cloudservice, maar dat gebeurt niet, zelfs niet als ik op 4G zit via VPN.
In feite probeert je telefoon via LAN te communiceren met de lamp via WAN. Je schakelt over naar 4G, de gateway van je telefoon verandert en het probeert nu via het WAN-IP te werken.
Voeg een lokale route toe met hoge prioriteit op je router, dan werkt alles.
Ik denk dat het iets is als dat, of je nu 4G of WiFi gebruikt, wanneer je op VPN staat, ziet de LIFX-app je IP-adres als zijnde in hetzelfde bereik als de lampen, probeert een UDP-broadcast te gebruiken om te ontdekken/communiceren en faalt omdat dit niet wordt ondersteund door WireGuard. Wanneer je niet in hetzelfde bereik bent, dus 4G zonder VPN, gaat het automatisch over http naar de cloudservice.
Maar het is een andere prefix, een ander subnet, de lampen bevinden zich in 10.0.10.0/24, de VPN-client in 10.0.3.0/24.
Oooooh ik snap het, je bedoelt omdat het communiceert met de cloud op hetzelfde IP als de lamp, dus broadcast zou moeten werken, dat is belachelijk als dat het probleem is…
Ja, ik heb geen idee wat voor logica de app heeft om te bepalen of hij zich op hetzelfde netwerk als de lamp bevindt… maar LIFX-lampen communiceren met clients via UDP met broadcasts voor ontdekking, en het lijkt erop dat dat is wat het probeert en faalt over WireGuard, dus het moet denken dat het lokaal is.