Delphi 10.1 Berlin idHTTP / IPv6 / iOS / Socket错误#51networking无法访问

我们无法通过应用程序testing。 在苹果的请求下,我们将静态IPv6地址添加到我们的服务器。 随着我们的申请,一切都为我们工作,但被拒绝了。 问题依旧。

他们得到一个错误: Socket Error #51 Network is unreachable.

目前还不清楚为什么在testing期间无法连接到我们的服务器?

我们做错了什么? 我们需要支持IPv4和IPv6吗?

我们使用以下组件

客户:

  1. idHTTP
  2. IdSSLIOHandlerSocketOpenSSL

服务器:

  1. IdHTTPServer
  2. IdServerIOHandlerSSLOpenSSL

服务器有一个静态的IPv6地址,它是可用的。

我们按以下方式处理连接:

 try IdSSLIOHandlerSocketOpenSSL1.IPVersion := Id_IPv6; answerBuff := idHTTP1.Post('https://[xxxx:a0e0:bad:bad::53]:8001/', tmpPostRequestData); except IdSSLIOHandlerSocketOpenSSL1.IPVersion := Id_IPv4; answerBuff := idHTTP1.Post('https://xx.85.157.25:8001', tmpPostRequestData); end; 

我们不使用域名,只使用直接地址。 服务器IPv6地址可用。 请帮助别人。

原谅我们的英语。

我们有解决scheme。

我们的Wi-Fi连接问题已解决。

  1. 由于使用SSL,问题的根源在不断增加。 请注意,接收端(服务器)必须监听端口443上的安全stream量。因此,客户端也必须将stream量发送到此端口,或者不要在URL中指定端口。

  2. 问题的第二部分是经过很多使用域名失败后,我绝望地拒绝用域名发送请求,并试图使用直接的IPv4,IPv6地址。 这是一个错误的决定。 问题是,SSL证书是发给我的域名,但不是绑定服务器的地址。防火墙是诅咒,并没有让我们走得更远。 只需使用您的域名,并使用正确的端口。

不要忘记在您的donaim名称中包含AAAA nslogging。 把我们的工程师

谢谢谢尔盖。