192.168.* Linux サーバーに http://hostname/ 経由でアクセスするにはどうすればよいですか?

192.168.* Linux サーバーに http://hostname/ 経由でアクセスするにはどうすればよいですか?

(この質問の表現が適切でなかったり、質問が重複していたり​​する場合は申し訳ありません。私はネットワークの専門家ではないので、おそらく適切な用語を使用していないと思います...これにより、この質問がすでに回答されているかどうかを確認することも難しくなります。)

私は、Windows ホストの VirtualBox で CentOS サーバーを実行しており、http://192.168.1.109/LAN 上のマシンから Apache でホストされているページにアクセスすることができます。しかし、私が望んでいるのは、人々が次のように入力できるようにすることですhttp://hostname/。その方が簡単であるということと、主にローカル IP が静的かどうかわからないという理由の両方です。どのように進めればよいかよくわかりません。誰か正しい方向を示してもらえませんか? よろしくお願いします。

答え1

ブリッジ ネットワークを使用していると想定しています (そうでない場合、VM に簡単にアクセスできないはずです)。LAN の DNS の構成は、それを制御するボックス (おそらく家庭用ルーター) によって決まります。

ルーターがあまりにも原始的で独自のDNSサーバーを持っていない、または設定したくない場合は、mDNSを使用できます。インストールアヴァヒLinuxボックスでは、ボンジュールWindows ボックスの場合。

答え2

Windows で、192.168.1.109 を「webserver」または任意の名前でポイントするホスト ファイルを作成し、Windows ホストがアクセスできるようにします。これは、Windows マシンも 192.168.1.x 上にあり、接続がブリッジされていることを前提としています。それ以外の場合は、NAT された仮想ネットワーク接続のポート転送を検討することもできますが、前回 virtualbox で試したときには大変だったので、ブリッジ ネットワークを使用しました。

それ以外の場合は、その IP に適切なレコードが設定された内部 DNS サーバーを設定する必要があります。説明している内容に対してはやりすぎです。

設定方法に関する情報を得るには、hosts file windows を Google で検索してください。ホスト Windows システム上の単純なテキスト ファイルですが、そのシステムでのみ機能し、ネットワーク内のすべてのユーザーで機能するわけではありません。Windows を実行している場合は、そのマシンにもカスタム HOSTS ファイルが必要です。マシンが多数ある場合にのみ面倒です。大規模なサイトで作業している場合は、DNS サーバー ルートを使用する必要があります。DNS サーバーを仮想化しない限り、初期設定の手間は 3 桁ほど増えるだけです :-)

答え3

ホストに動的 IP がある場合は、DNS サーバーと通信する、または DNS サーバー自体である DHCP サーバーが必要です。私は Linux ベースのルーターで常に DNSMasq を使用して、DHCP と名前解決を行っています。

ルーターがネームサーバーをサポートしていない場合は、bind などのネームサーバーを設定すると、どのホストがどこにあるかがわかります。ただし、別のネームサーバーを設定することの欠点は、ホストに静的 IP を与え、その IP の名前をネームサーバーに与える必要があることです。

最後の手段として、名前でサーバーを検索する必要があるすべてのクライアントのホスト ファイルを編集することもできます。「192.168.1.1 bla.localdomain bla」のようなエントリが必要です。ホスト ファイルの場所は OS によって異なります。

答え4

IP アドレスが静的かどうかわからない場合は、Web サーバーが LAN 上に DNS エントリを持っているかどうかを確認し、常に見つけられるようにする必要があります。テスト クライアントのホスト ファイルの問題は、IP アドレスが静的であると想定していることです。そのため、IP アドレスが変わると、ホスト ファイルを更新し続ける必要があり、面倒です。

最も簡単な答えは、Web サーバーに静的アドレス (静的アドレスを割り当てるか、「DHCP 予約」を構成するかのいずれか) を指定してから、Bart のアイデアに従って hosts ファイルを使用することです。

関連情報