ここにはさまざまな問題が組み合わさっていますが、それは何か問題です。各問題は、それ自体が複雑です。確実に手に入れるために私がお勧めするのは次のとおりです。
まず、サーバーから Web を閲覧できることを確認します。これにより、イーサネット インターフェイスが機能していることを確認できます。
ステップ 1 XAMPP とファイルがホーム ネットワークから表示できることを確認します。ネットワークに 192.168.1.X のようなものを使用していて、サーバーが 192.168.1.10 であると仮定します。
家の別のコンピューターに移動し、 http: //192.168.1.10/と入力して、ファイルが表示されるかどうかを確認します。できれば、サーバーが適切に構成されており、XAMPP が動作していることがわかります。
次に、hosts ファイルにエントリを追加して、yourdnsrecord.com (または dyndns レコードが何であれ) をプライベート IP アドレスに解決します。次に、そのコンピューターからブラウザーに yourdnsrecord.com と入力すると、ファイルが取得されます。これにより、サーバーがそのドメイン名をリッスンするように不適切に構成されている可能性が排除されます。
次に、ファイアウォールの問題があるかどうかをテストする必要があります。これを簡単にするために、まずホーム ルーターを方程式から外します。代わりに、新しいサーバーをインターネット接続に直接配置してください。(できると仮定して)。この方法では、NAT やファイアウォールを適切に構成する必要はありません。dyndns 名はパブリック IP にマップされ、サーバーはその IP を持ち、インターネットに直接接続されている必要があります。サーバーが直接接続されていて、ルート プロンプトからコマンド ifconfig が動的 dns レコードが指しているのと同じパブリック IP アドレスを返す場合、それは機能するはずです。
インターネットからネットワークがどのように見えるかをテストするための iPhone またはその他の方法があれば、作業が楽になります。
ifconfig で表示されるパブリック IP が dyndns アカウントの IP レコードと異なる場合、動的 DNS 更新スクリプトが壊れています。手動で IP を設定し、動作するかどうかを確認します。
これが機能しない可能性が非常に高いです。一部の ISP はファイアウォール ポート 80 を使用して、サブスクライバーがサーバーをホストできないようにしています。サーバーをインターネットに直接接続したら、(DNS が機能していなくても) パブリック IP アドレスを使用してこれをテストできます。root として、コマンド プロンプトから ifconfig と入力して、パブリック IP アドレスを取得します。次に、コマンド tcpdump -i eth? を入力します。ルート プロンプトからポート 80。え?ifconfig コマンドでパブリック IP アドレスを取得したのと同じインターフェイスである必要があります。通常、これは eth0 ですが、wire0 などの場合もあります。
このコマンドは、ポート 80 でサーバーに送信されるすべてのトラフィックを表示します。
iphone (または使用している 2 番目のインターネット接続) から、ifconfig コマンドで取得した IP アドレスを参照します。サーバー上に何かが表示されている (そして、それが ISP に直接接続されている) 場合、ISP はあなたをファイアウォールで保護していません。
サーバーが IP アドレスまたは DynDNS アドレスのいずれかによってインターネットに直接接続されているときにサーバーにアクセスできる場合、ISP は問題なく、ファイアウォールをデバッグする時が来ました。
ファイアウォールが NAT を構成するには、2 つのことが必要です。NAT では、ルーターが ISP から取得したパブリック アドレスがプライベート ネットワークと、そのトラフィックを許可するファイアウォール ルールに変換されます。ここまで来れば、ファイアウォールが問題であることがわかります。あとは、ファイアウォールの構成を正しくするだけです。ここに文書化する家庭用ルーターは非常に多くありますが、通常、ルーターの製造元の Web サイトから、このタスクに関するルーターのハウツー手順を見つけることができます (通常、これはマニュアルの一部です)。
これらの指示に正確に従えば、システムが機能するようになります。プロセスについてコメントしてください。より明確にするためにこれを修正させていただきます。
HTH、-FT