
ローカル ネットワークには、Web アプリケーションをホストする がありますUbuntu Server 20.4
。ルーターとドメインの DNS を構成し、証明書をインストールして、 Web アプリケーションを表示できるようLets'Encrypt
になりました。https://mydomain.com
私の問題は、ローカル ネットワーク内からドメインを表示しようとするとhttps://mydomain.com
、ブラウザーが「このサイトにアクセスできません」と応答しますが、外部に接続するとサイトが表示されます。
Ubuntu Server に新しい設定を適用する必要がありますか、それともこれはルーターの設定の問題ですか?
解決策は1つ...
hosts
PC内のファイル(C:\Windows\System32\Drivers\etc\hosts)を編集してレコードを追加しました
192.168.0.100 マイドメイン
サイトは表示されるようになりましたが、Ubuntu サーバーに設定を適用する方法を知りたいです。
編集1nslookup mydomain.com
Windows のコマンド ラインから 実行すると、次のようになります。
Server: one.one.one.one
Address: 1.1.1.1
Non-authoritative answer:
Name: mydomain.con
Address: My_External_IP
両方ともUbuntu Server
私の PC と同じサブネット上にあります。サーバーを公開するために、ルーターにいくつかのポート転送 (80、443) を追加しました。
答え1
問題は、Windowsマシン(およびネットワーク上の他のマシン)がドメイン名を解決して、パブリックIPアドレスこれは 192.168.0.100 とは異なります...したがって、ルーティングが異なります。192.168.0.100 にアクセスしようとすると、トラフィックは LAN 内に留まります。パブリック IP アドレスを使用すると、トラフィックはインターネットを通過し、ルーターを経由して戻ってきます。
したがって、実際には、ルーターでポート転送を設定して、ポート 80 および 443 への着信要求がサーバーのローカル アドレス (この例では 192.168.0.100) に転送されるようにする必要があります。
LAN 内に独自の DNS リゾルバがある場合は、そのドメイン (「ゾーン」) をローカルで構成するだけで、ローカル ユーザーに対してのみプライベート IP アドレスを返すことができます。split-horizon DNS を参照してください。
管理するクライアントがそれほど多くない場合は、テストや短期的な使用ではホスト ファイルの編集が許容される可能性があります。それ以外の場合は、LAN にローカル DNS リゾルバ (およびフォワーダ) を設定することをお勧めします。例: dnsmasq。