Как опубликовать sh сервис Bonjour, используя динамическое распределение портов c? - PullRequest
0 голосов
/ 09 января 2020

Я хочу опубликовать sh сервис Bonjour на macOS и / или Windows. Я делаю это с dns-sd, и мне все равно, какой порт будет использоваться, и я хочу, чтобы приложение динамически выбирало его. Я пробовал dns-sd -R name _testservice._tcp. local 0, где 0 обозначает номер порта, но безуспешно. dns-sd не выдает ошибку с портом 0, но работает нормально. Вот вывод:

Registering Service name._testservice._tcp..local port 0
DATE: ---Thu 09 Jan 2020---
18:01:59.994  ...STARTING...
18:02:00.720  Got a reply for service name._testservice._tcp.local.: Name now registered and active

Я использую «Обнаружение» из AppStore для проверки служб Bonjour, и он не отображается при использовании 0 в качестве порта, но, например, порт 50000 работает нормально.

Использование avahi на Linux, с другой стороны, прекрасно работает с портом 0, и документация Apple по созданию службы Bonjour в Swift также работает нормально, точнее, они явно говорят, что она будет динамически выделяться при использовании 0 в качестве порта.

Примечание: в настоящее время я не пробовал это на Windows.

...