Problema se bazează pe o simplă restricție:
Serverul care deține logica de afaceri nu este conectat cu imprimanta în aceeași rețea. Imprimanta se află într-o altă rețea care nu are posibilitatea de a expune un IP public.
Arhitectura pe care am proiectat-o până acum se vede Aici.
Cele două LANS sunt reprezentate în portocale și albastruși există un VPN roșu care leagă cele două. Datorită rețelei LAN albastre nefiind posibil pentru a expune un IP public, singura modalitate este de a servi VPN-ul de pe server.
Cu această configurare, este posibil ca aplicația Node.js să ruleze în interiorul serverului detectează imprimantele care CUPS publică in reteaua albastra/rosu?
Înțeleg că CUPS face publicitate pentru imprimantele disponibile mDNS, dar numai pe rețeaua specifică la care este conectat. Deci, există posibilitatea ca pachetele poate să nu călătorească de la un VPN client la serverul real (datorită comportament VPN standard).
Este posibil ceea ce încerc să obțin? Ce alte variante mai am?
Actualizați
Am găsit câteva abordări care merită investigate:
- Utilizați un VXLAN pentru a conecta cele două rețele ca una singură și multicast prin rețea
- Activați multicast prin OpenVPN sau Wireguard
- Repetați pachetele trimise de mDNS pe o altă interfață
- Creați o înregistrare a serviciului proxy folosind DNS-SD
Iată câteva informații utile:
Cred că răspunsul se află într-unul sau în combinația unora dintre ele.