Documentation
MAVLink par VPN : piloter un drone en 4G, 5G ou satellite
MAVLink, la vidéo et les outils de supervision peuvent circuler entre un companion computer embarqué et une station sol par 4G, 5G, Starlink ou autre liaison satellite. Le blocage n’est pas seulement la portée : CGNAT, adresses changeantes, coupures, chiffrement et séparation des droits compliquent la liaison. Un VPN mesh sortant place le drone et l’opérateur sur un réseau privé stable. Cette page explique l’architecture de données et de supervision — jamais la conformité aérienne ni un emploi militaire.
Pourquoi la 4G/5G séduit : voler au-delà de la portée radio
Une radiocommande classique établit une liaison point à point entre la télécommande et le drone. Elle est réactive et indépendante de toute infrastructure, mais sa portée est bornée par la puissance d’émission autorisée et par la ligne de vue : un relief, un bâtiment ou simplement la distance finissent toujours par couper le lien. Pour l’inspection d’ouvrages linéaires, la surveillance de sites étendus ou la livraison, cette limite devient le facteur dimensionnant de la mission.
Passer par le réseau cellulaire change la nature de la liaison : la portée n’est plus celle d’un émetteur embarqué, mais celle de la couverture de l’opérateur. Le drone emporte un modem 4G/5G, la station sol utilise sa propre connexion Internet, et les deux se parlent à travers le réseau public — à dix kilomètres comme à cent. En contrepartie, le drone devient une machine connectée à Internet comme une autre, avec tous les problèmes réseau que cela implique.
| Liaison radio directe | Liaison cellulaire 4G/5G | |
|---|---|---|
| Portée | Ligne de vue radio, limitée | La couverture du réseau de l'opérateur |
| Infrastructure | Émetteur et récepteur dédiés | Les antennes de l'opérateur mobile |
| Nature du lien | Point à point, réservé au drone | Réseau IP public, partagé avec tout le monde |
| Adressage | Aucun — la liaison est le canal | IP privée derrière le CGNAT de l'opérateur |
| Ce qui coupe le lien | Obstacle, distance, interférence | Trou de couverture, changement de cellule, réattribution d'adresse |
Pourquoi c'est difficile : deux CGNAT face à face
Le premier réflexe — « le drone a une connexion Internet, je m’y connecte directement » — échoue presque toujours. Sur un accès mobile, l’adresse IP publique est partagée entre de nombreux abonnés par le CGNAT (Carrier-Grade NAT) de l’opérateur : aucune connexion entrante n’atteint jamais la carte SIM, et il n’existe aucun port à ouvrir, puisque le NAT appartient à l’opérateur et non à vous. Héberger un serveur à bord du drone est tout simplement impossible.
CGNAT côté drone
La SIM du drone reçoit une adresse privée derrière le NAT de l’opérateur. Rien ne peut l’atteindre de l’extérieur ; le drone ne peut que sortir. Toute architecture qui suppose de « joindre le drone » est morte d’avance.
CGNAT ou box côté opérateur
La station sol n’est pas mieux lotie : sur le terrain, elle est souvent elle-même en 4G/5G, donc derrière un second CGNAT ; au bureau, derrière une box dont personne ne veut — ou ne peut — ouvrir les ports. Les deux extrémités sont injoignables.
Des adresses qui changent
L’adresse vue depuis Internet change au gré du réseau : réattribution par l’opérateur, bascule d’une cellule à l’autre pendant le vol, passage d’un réseau à un autre. Une architecture bâtie sur « l’IP du drone » se reconfigure en permanence.
Des coupures inévitables
Un drone qui se déplace change de cellule, traverse des zones mal couvertes, perd puis retrouve le réseau. Chaque micro-coupure qui casse la session oblige télémétrie et vidéo à se reconnecter — au pire moment.
Un VPN classique en étoile n’aide qu’à moitié : il faut héberger et exposer un concentrateur sur Internet, tout le trafic y fait un détour, et la session du tunnel elle-même ne survit généralement pas à un changement d’adresse — la coupure de cellule reste une coupure. Le problème appelle une approche où aucune extrémité n’a besoin d’être joignable et où la session ne dépend pas des adresses.
Ce qu'apporte le mesh : une liaison stable malgré le CGNAT
VIGIL-MESH ne demande à aucune machine d’être joignable. Le nœud embarqué sur le drone et la station sol établissent chacun une unique connexion sortante en 443 UDP — ce que tout CGNAT laisse passer, puisque c’est le comportement d’un simple client web. Un relais aveugle (la vigie) met les deux en relation immédiatement ; en parallèle, la traversée NAT cherche un chemin direct, et la session y migre sans coupure si elle en trouve un. Dans tous les cas, la liaison est une session QUIC/TLS 1.3 chiffrée de bout en bout entre le drone et la station.
- Des adresses stables malgré le CGNAT — le drone garde la même adresse sur le mesh (plage 100.64.0.0/10) et le même nom MagicDNS, quels que soient la cellule, l’opérateur ou l’adresse publique du moment. La station sol vise toujours la même cible.
- Une session qui survit aux changements de réseau — la session n’est pas liée à un couple d’adresses IP : quand la liaison change de cellule ou de réseau, elle migre sans nouvelle poignée de main. Télémétrie et vidéo se poursuivent au lieu de se reconnecter.
- De l’UDP temps réel dans le tunnel — les datagrammes (télémétrie, commandes, flux vidéo UDP) traversent de bout en bout, strictement prioritaires sur les flux de service : un transfert de fond ne retarde pas une trame de télémétrie prête à partir.
- Un chiffrement qui ne dépend pas du chemin — relayé ou direct, le trafic reste chiffré de bout en bout, avec un échange de clés hybride post-quantique X25519 + ML-KEM. Ni l’opérateur mobile ni le relais ne voient le contenu.
Architecture type d'une liaison drone
L’architecture la plus courante repose sur un ordinateur compagnon embarqué : une petite machine Linux — souvent une NVIDIA Jetson quand il y a de la vision à bord — reliée à l’autopilote d’un côté et au modem 4G/5G de l’autre. C’est elle qui rejoint le mesh, comme n’importe quelle autre machine du réseau.
Le compagnon embarqué
Linux ou Jetson, il exécute le client mesh et devient un nœud à part entière : adresse stable, nom MagicDNS, connexion sortante unique à travers le modem. Il fait le pont entre l’autopilote (télémétrie, commandes) et le réseau privé.
La station sol
Le poste de l’opérateur — sur le terrain en 4G ou au bureau derrière une box — rejoint le même réseau. Le logiciel sol vise le nom ou l’adresse stable du drone, exactement comme si les deux machines partageaient un LAN.
Les superviseurs à distance
Un chef de mission, un client ou un centre de contrôle peuvent recevoir télémétrie et vidéo sans jamais pouvoir émettre de commande : les ACL du réseau (refus par défaut) autorisent leurs machines en lecture sur les flux de supervision, et rien d’autre.
Cette séparation des rôles est portée par la politique d’accès, pas par la bonne volonté des logiciels : par défaut, personne ne joint personne, et chaque flux — qui commande, qui regarde — est autorisé explicitement dans la console. Révoquer un superviseur lui retire immédiatement l’accès, sans toucher au drone.
MAVLink par VPN : télémétrie, commandes, missions et vidéo
MAVLink est un protocole de messages léger utilisé entre véhicules, stations sol et composants embarqués. Il transporte aussi bien les états GPS, batterie et attitude que les paramètres, plans de mission, commandes, caméras et nacelles. MAVLink n’impose pas un transport unique : un routeur MAVLink peut relier un port série de l’autopilote à un endpoint UDP sur le compagnon Linux.
| Flux | Ce que l’opérateur obtient | Transport typique |
|---|---|---|
| MAVLink 2 | Position, attitude, batterie, modes, paramètres, missions et commandes | UDP unicast via mavlink-router, MAVProxy ou logiciel compagnon |
| QGroundControl / Mission Planner | Carte, instruments, planification, journaux et supervision | Connexion UDP vers l’adresse mesh stable du compagnon |
| Vidéo H.264/H.265 | Retour caméra, inspection et situation visuelle | RTP/RTSP, SRT, WebRTC ou pipeline UDP séparé |
| MAVSDK / pymavlink | Automatisation, flotte, scripts et intégration métier | API locale parlant MAVLink au routeur embarqué |
| ROS 2 / DDS | Robotique, perception, navigation et topics distribués | UDP et multicast ; validation VIGIL-MESH encore annoncée comme objectif |
| RTCM / NTRIP | Corrections GNSS RTK | TCP ou UDP vers le compagnon, avec gestion de la perte |
| DroneCAN / UAVCAN | Capteurs, ESC, GNSS et périphériques internes | Reste sur le bus CAN embarqué ; passerelle applicative si besoin |
ROS 2 et DDS disposent d’un guide dédié. DroneCAN, CAN, SBUS, CRSF/ExpressLRS et les boucles de contrôle moteur restent normalement à bord : on transporte sur le WAN la télémétrie et les commandes de haut niveau, pas une boucle temps réel dure qui doit survivre localement.
4G/5G, Starlink et COMSAT : choisir le lien sans confondre les usages
| Lien | Point fort | Limite à concevoir |
|---|---|---|
| 4G/LTE | Couverture étendue et matériel compact | CGNAT, variations de cellule et zones blanches |
| 5G | Débit montant et latence potentiellement meilleurs | Couverture plus hétérogène, performance dépendante du réseau |
| Starlink / satellite LEO | Couverture au-delà des réseaux terrestres selon l’offre et le terminal | Antenne, énergie, visibilité du ciel, conditions contractuelles et mobilité |
| COMSAT GEO / Iridium | Portée très large et lien de secours | Latence élevée et données coûteuses ; télémétrie réduite plutôt que pilotage vidéo |
| Double lien | Cellulaire principal et satellite de secours | Routage, coût, poids, énergie et tests de bascule |
Le protocole HIGH_LATENCY2 de MAVLink existe précisément pour les liaisons satellitaires lentes ou coûteuses : il condense les informations essentielles à faible cadence. Une liaison à forte latence peut convenir au suivi, à la santé du véhicule et à des missions supervisées ; elle ne devient pas magiquement adaptée au pilotage manuel réactif ou à la vidéo temps réel.
Ce que l’Ukraine rappelle sur les drones connectés
La guerre en Ukraine a rendu visibles deux réalités générales : les drones sont devenus des nœuds d’un système d’information — reconnaissance, cartographie, relais, secours et logistique — et toute liaison radio ou satellite peut être brouillée, dégradée, géobloquée ou coupée. Ce contexte ne justifie pas de présenter un VPN civil comme une solution militaire ; il montre surtout pourquoi l’architecture doit tolérer la perte de réseau et éviter un point unique de défaillance.
- Le véhicule doit conserver localement ses failsafes, son retour maison et ses limites de vol.
- La commande, la vidéo et la télémétrie ne doivent pas partager sans contrôle la même priorité ni le même budget de débit.
- Plusieurs opérateurs ou technologies de liaison réduisent une dépendance, sans garantir la disponibilité.
- Les ACL séparent pilote, observateur, maintenance et automatisation ; toute révocation doit être immédiate.
- Les essais se font au sol puis en environnement autorisé, avec journalisation, seuils de perte et procédures de repli.
Sources techniques et réglementaires
- Guide officiel MAVLink et microservices
- Routage MAVLink entre systèmes, composants et transports
- Signature des messages MAVLink 2
- PX4 : companion computer, LTE et difficulté du NAT
- ArduPilot : rôle du companion computer et données MAVLink
- MAVLink HIGH_LATENCY2 pour les liaisons satellitaires
- EASA : opérations BVLOS et catégorie spécifique
Les limites, dites honnêtement
Un mesh règle les problèmes d’adressage, de continuité de session et de chiffrement. Il ne règle pas tout, et il serait malhonnête de le laisser croire.
- La couverture cellulaire reste la couverture cellulaire — dans un trou de couverture, aucun logiciel ne fait passer de paquets. Les réseaux mobiles sont en outre conçus pour des usages au sol ; la qualité du lien en altitude varie d’un site à l’autre et se vérifie sur le terrain.
- La latence de la 4G/5G est celle de la 4G/5G — elle varie avec la charge de la cellule et les conditions radio. Sur un chemin direct, VIGIL-MESH n’ajoute qu’une couche de chiffrement au trajet : il n’empire pas la latence du réseau, mais il ne peut pas non plus l’améliorer.
- Le double CGNAT symétrique impose le relais — la liaison fonctionne, chiffrée de bout en bout, mais par un chemin plus long. La vigie privée auto-hébergée permet au moins de choisir où passe ce chemin.
- Une liaison de données, pas un lien de contrôle certifié — VIGIL-MESH transporte télémétrie, commandes et vidéo sur IP ; il ne se substitue ni aux liaisons de secours ni aux mécanismes de sécurité (failsafe, retour maison) de l’autopilote, qui doivent rester opérationnels quoi qu’il arrive au réseau.
Mettre en place la liaison, pas à pas
- 1Créez votre espace de travailUn compte suffit pour démarrer — l’usage personnel est gratuit, avec le trafic direct illimité.
- 2Installez le client sur les machinesSur le compagnon embarqué (Linux ou Jetson), sur la station sol et sur les postes des superviseurs.
- 3Enrôlez chaque machineDans la console, page Réseaux → Machines → « Ajouter une machine » : une clé à usage unique enrôle le compagnon comme n’importe quel nœud.
- 4Vérifiez la liaisonLe drone au sol et connecté en 4G, contrôlez son adresse stable, son nom MagicDNS et un ping depuis la station sol.
- 5Pointez vos logiciels vers le nom du droneStation sol et outils de supervision visent l’adresse ou le nom de la machine embarquée, comme en local — puis les ACL restreignent qui commande et qui observe.