OSSN-0104: Ironic-Python-Agent may fallback to mDNS unexpectedly

Summary

Ironic-Python-Agent (IPA) has had support for several releases for configuring your agent via multicast DNS (mDNS). This feature’s design is such that, in some extremely rare cases, a booted IPA could be reconfigured or directed to a different Ironic API service.

Affected Services / Software

ironic-python-agent (>=3.7.0 <11.6.2)

Discussion

When IPA is booted, the first thing it does is look for a valid URL to check into the Ironic API or an Ironic Inspection service. The mDNS fallback would, in situations where IPA had no API url configured, use mDNS lookups to configure IPA, including the endpoint of the Ironic API service. This is typically only used in rare cases for bootstrapping clusters with minimal infrastructure using virtual media or physical USB thumb drives.

Ironic’s default configuration always sends a valid API url. The current development branch has been updated to always require an explicit opt-in to mDNS fallback, either by setting ipa-api-url to mdns, or by setting ipa-use-mdns to True on the command line.

Contacts / References

Author: Jay Faulkner, G-Research OSS