2017-10-10 17 views
0

アプリケーションテストに合格できません。 Appleの要求に応じて、静的IPv6アドレスをサーバーに追加しました。私たちのアプリケーションでは、すべてが私たちのために機能しますが、再び拒否されました。問題は同じままです。Delphi 10.1 Berlin IDHTTP/IPv6/iOS /ソケットエラー#51ネットワークに到達できません

彼らは、エラーが発生します:Socket Error #51 Network is unreachable.

彼らはテスト中に弊社のサーバーに接続できない理由は不明ですか?

私たちは間違って何をしていますか? 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アドレスが使用可能です。助けてください。

私たちの英語を許してください。

+1

あなたは 'TIdHTTP'自身の' IPVersion'プロパティを 'SSLIOHandler'のプロパティの代わりに設定するべきです。 'TIdHTTP'は渡されたURLからIPバージョンを自動的に決定するので、IPアドレスを使用するときには' IPVersion'を手動で指定する必要はありません(大括弧で囲まれていない場合)。 IPv6アドレスを要求するときに、デバイスがIPv6ネットワークに接続されていることを確認しましたか?あなたのアプリを店に提出する前に、アップルのガイドラインに従ってローカルテストを行ったことがありますか? –

+0

@RemyLebeau - ありがとう、レミー。 Appleの従業員が次のように書いています: –

+0

@RemyLebeau > IPv6ネットワークに接続されたWi-FiでiOS 11.0.2を実行しているiPhone 6でレビューされたときに、アプリで1つ以上のバグが見つかりました。 --- 次のコードを使用するテストアプリケーションがあります。 > IdSSLIOHandlerSocketOpenSSL1.IPVersion:= Id_IPv6; answerBuff:= idHTTP1。Post( 'https:// [2a03:a0e0:悪い:bad :: 53]:8001 /'、tmpPostRequestData); アプリケーションはうまく動作し、接続されています。しかし、Appleに同じコードのバージョンを送ると、何らかの理由で接続できなくなります。 –

答えて

0

解決策があります。

Wi-Fi接続に関する問題が解決しました。

  1. The roots of the problem were growing due to the use of SSL. Please note that the receiving side (server) must listen to your secure traffic on port 443. Accordingly, the client must also send traffic to this port, or do not specify the port in the URL.

  2. The second part of the problem was that after a lot of failure using the domain name, I despaired and refused to use the domain name to send requests, and tried to use direct IPv4, IPv6 address. It was a wrong decision. The problem is that SSL certificates are issued to the name of my domain, but not to the addresses of the tied servers.The firewall was cursing and did not let us go any further. Just use your domain name, and use correct ports.

あなたの寄付名にAAAA nsレコードを含めてください。私たちのengを試してください。

Sergey。

関連する問題