NATの背後にネットワークがあり、いくつかのマシンがあります。
マシンは次のとおりです。
私もmydomain.comを持っています。
server.mydomain.comは、ポートをサーバーに転送するルーターである私の接続のIP(単一IP)を指しています。
サーバーは、vhostsに基づいてさまざまなサイトにサービスを提供するhttpdを実行しています。
つまり、site1.server.mydomain.com、site2 ..
問題は、すべてのトラフィックがルーターを通過することであり、ログを確認すると常にすべてのルーターのIPが表示されます(そのため、while(1)で誰がスクリプトを実行しているかはわかりません)。
私はServerAliasのsite1.server.localを使用しますが、ほとんどのサイトにはルートURLがどこかに保存されており、その上に他のURLが構築されているため、それを行うことはできません。
私の解決策は、サーバーのIPを使用して* .mydomain.comに応答するようにdnsmasqに何らかの方法で指示することです。
これはどういうわけか可能ですか?
私は自分の開発サーバーでまったく同じことをするので、rsyncされたミラーをローカルに、同じ構成のオフサイトサーバーに置くことができます。
Webサーバーの内部インターフェースが192.168.0.3であると想定して、dnsmasq.confに必要なものを(再起動してください)ください。
address=/.server.mydomain.com/192.168.0.3
これにより、*。server.mydomain.comのワイルドカードエントリが作成され、クライアントがDNSにDNSMasqを使用している(およびサーバーが内部インターフェイスでリッスンしている)限り、設定は完了です。
問題を理解しているかどうかはわかりませんが、問題の根本的な原因はルーターの着信接続のNAT処理にあるようです。より具体的には、すべての着信接続がルーターのIPアドレスとともにログに表示されると述べたので、すべての着信接続をマスカレードしているようです。
あなたがしなければならないのは、各接続のソースIPを保持するルーターのDNAT着信接続とSNAT発信接続です。