mDNS Republisher (republisherd)

Overview

The mDNS Republisher (republisherd) is a system daemon running on the SkyController.

Its sole purpose is to expose mission services provided by the drone so they can be accessed from the SkyController network.

Mission services are originally available inside the drone internal network only. The republisher makes these services reachable locally from the SkyController, for example when a user connects a laptop to the SkyController via Ethernet.

In practice, republisherd allows AirSDK mission services running on the drone to appear as if they were hosted directly on the SkyController.

Why is a republisher needed?

AirSDK mission services are:

  • Advertised by the drone using mDNS (publisher feature). The service must publish the mission UID (an example is shown in the Mission UI mission)

  • Bound to drone internal IP addresses and ports

  • Not directly reachable from the SkyController user network

Since the user connects to the SkyController, and not to the drone internal network:

  • Mission service announcements are not visible

  • Direct connections to mission service endpoints are not possible

The republisher solves this by automatically bridging AirSDK mission services from the drone to the SkyController network.

What does republisherd do for missions?

For AirSDK missions, republisherd:

  • Detects mission services exposed by the drone

  • Republishes those mission services locally via mDNS

  • Assigns local ports on the SkyController

  • Forwards network traffic transparently to the drone

  • Removes the exposure when the mission or service stops

This behavior is entirely dynamic and requires no manual configuration. The mission only needs to publish the service.