Как я могу отправить UDP-сообщение всем локальным узлам связи, используя сетевую платформу Apple?

Когда я пытаюсь установить соединение, оно переходит из режима ожидания (POSIXErrorCode: сеть не работает) в состояние подготовки. Но он никогда не переходит в состояние готовности, и я не могу понять, как отправить дейтаграмму.

import Network
import Dispatch

let connection = NWConnection(host: .ipv6(.linkLocalNodes), port: 9898, using: .udp)

connection.stateUpdateHandler = { state in print(state) }
connection.start(queue: DispatchQueue(label: "UDP"))

Как я могу отправить сообщение UDP всем локальным узлам связи?

1 ответ

Похоже, вам нужно указать интерфейс для локального адреса многоадресной рассылки. Отправка на все интерфейсы не работает. Так, например, в моем случае я должен отправить .ipv6(IPv6Address("ff02::1%en4")!) отправить на все локальные узлы на en4,

Другие вопросы по тегам