A YP directory helps a listener discover a public stream. It neither carries the audio nor grants permission to hear it. Keep an unlisted local test working before enabling announcements.
Decide what becomes public
Choose a public stream hostname, description, genre and contact information intentionally. Avoid internal names, credentials or private relay locations. Source metadata and the mount’s public/directory policy affect what is announced. Publishing a listing is a separate operational decision from opening a listening socket.
The following KH fragment belongs directly below the <icecast> root. It illustrates a directory endpoint, not an instruction to announce a test instance:
<directory>
<yp-url-timeout>15</yp-url-timeout>
<yp-url>https://dir.xiph.org/cgi-bin/yp-cgi</yp-url>
</directory>This is the classic KH directory layout. Do not replace it with regular Icecast 2.5’s yp-directory element. URL transfer and TLS depend on how KH and its curl dependency were built.
Establish the public listening path
Set the configured hostname and actual public listener port consistently with routing, TLS and any proxy. An announcement cannot repair a private address, closed firewall or wrong externally visible URL. Test the media independently from a separate network before investigating listing visibility.
If public registration is disabled on the source or mount, a directory block alone is insufficient. Conversely, a successful announcement does not establish that authentication and fallback policies protect all paths as intended.
Diagnose registration separately
Check directory-related log events, DNS, outbound access and the response from the directory. Use a deliberately public disposable stream for integration testing and remove its announcement afterwards. Do not repeatedly change unrelated source settings while waiting for directory updates. This portal records configuration and source review; no live directory submission was performed.