菜鸟教程小白 发表于 2022-12-13 06:50:40

ios - 如何从该 LAN 上的 IP 地址解析我 LAN 中设备的主机名?


                                            <p><p>我必须从该 LAN 上的 IP 地址解析我 LAN 中设备的主机名。
我有一些代码适用于外部 IP 地址,但不适用于内部连接的设备。</p>

<p>下面我附上了代码。</p>

<p>如果您有任何想法在 iOS/OSX 中从其 IP 获取远程机器的主机名,这会让我很开心。</p>

<pre><code>int error;
struct addrinfo *results = NULL;

error = getaddrinfo(&#34;173.194.34.24&#34;, NULL, NULL, &amp;results);
if (error != 0)
{
    NSLog (@&#34;Could not get any info for the address&#34;);

}

for (struct addrinfo *r = results; r; r = r-&gt;ai_next)
{
    char hostname = {0};
    error = getnameinfo(r-&gt;ai_addr, r-&gt;ai_addrlen, hostname, sizeof hostname, NULL, 0 , 0);
    if (error != 0)
    {
      continue; // try next one
    }
    else
    {
      NSLog (@&#34;Found hostname: %s&#34;, hostname);
      break;
    }
}


freeaddrinfo(results);
</code></pre>

<p>或使用 NSHost</p>

<pre><code>NSLog(@&#34;%@ \n%@&#34;,,[ names]);
</code></pre></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>直接对特定 DNS 进行 DNS 查找的唯一方法是自己实现协议(protocol)或使用某些库。</p>

<p> <a href="https://serverfault.com/questions/173187/what-does-a-dns-request-look-like" rel="noreferrer noopener nofollow">https://serverfault.com/questions/173187/what-does-a-dns-request-look-like</a> </p>

<p> <a href="https://www.ietf.org/rfc/rfc1035.txt" rel="noreferrer noopener nofollow">https://www.ietf.org/rfc/rfc1035.txt</a> </p>

<p> <a href="https://github.com/adeboer/rfc1035lib" rel="noreferrer noopener nofollow">https://github.com/adeboer/rfc1035lib</a> </p></p>
                                   
                                                <p style="font-size: 20px;">关于ios - 如何从该 LAN 上的 IP 地址解析我 LAN 中设备的主机名?,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/29938938/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/29938938/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - 如何从该 LAN 上的 IP 地址解析我 LAN 中设备的主机名?