Как узнать ip-адрес отправителя udp-пакета, полученного на устройстве под управлением iOS 3.2
или выше?
Например, при использовании Python на компьютере я бы использовал SocketServer.UDPServer
, который берет подкласс SocketServer.BaseRequestHandler
, определяющий обратный вызов handle
. Когда приходит пакет, вызывается обратный вызов, и IP-адрес отправителя будет в self.client_address
, где self
— экземпляр SocketServer.BaseRequestHandler
.
К сожалению, я не знаю, как извлечь эту информацию или получить доступ к соответствующему заголовку ip при программировании на Objective C и использовании фреймворков, предоставляемых для iOS.
На данный момент единственное решение, которое у меня есть, - это явно указать IP-адрес отправителя в теле пакета udp, но я бы предпочел не полагаться на то, что отправитель поместит эту информацию туда, если мне это не нужно.