ローカル ネットワーク マシンから URL でローカル Web サーバーを呼び出すにはどうすればよいですか?

ローカル ネットワーク マシンから URL でローカル Web サーバーを呼び出すにはどうすればよいですか?

1 つのスイッチに 4 台のコンピューターが接続されていますが、インターネットには接続されていません。

コンピューターの 1 台 (写真の大きい方) は他のコンピューターよりも高性能で、Ubuntu を実行しています。また、異なるポートに異なるアプリを備えた 3 つのライブ Node.js Web サーバーが稼働しています。その他のコンピューターは Windows を実行しています。

他の3台のコンピュータがURLを呼び出してWebサーバーにアクセスできるようにしたい。たとえば、

  • ファイル.bugsteins --> 192.168.0.5:3000
  • チャットバグシュタイン --> 192.168.0.5:3001
  • デバイス.bugsteins --> 192.168.0.5:3002

これを実現するための最善の方法(セットアップ時間が最速のものから優先)は何ですか?

これまで、サーバー マシンで Bind9 を試し、3 台​​のクライアント マシンに静的 IP と手動でハードコードされた DNS を割り当てましたが、機能しませんでした。作業を進めるうちに、誰かがもっと良い方法を持っている場合に備えて、この質問を投稿しようと思いました。

ネットワークアーキテクチャ

答え1

これを実現するための最善の方法(セットアップ時間が最速のものから優先)は何ですか?

BINDではありません。

c:\windows\system32\drivers\etc\hosts各デスクトップ上のファイルを編集し、それらの名前を 192.168.0.5 にポイントします。

192.168.0.5 files.bugsteins 
192.168.0.5 chat.bugsteins
192.168.0.5 devices.bugsteins

何らかの方法で Node.js セットアップを使用するか、基本的な Web サーバー インストール (Lighttpd、NginX、Apache、その他多数) を使用して、URL を調べてページを適切なポートにリダイレクトする JavaScript を含む静的ページを提供するサーバーのポート 80 に Web リスナーを追加します。

から取るhttps://stackoverflow.com/questions/18022636/リダイレクトベースのURL-javascript次のようなもの(未テスト):

<html>
<head><title>Redirect page</title></head>
<body>
<script type="text/javascript">

if (window.location.href== "http://files.bugsteins") {
   window.location.href = 'http://files.bugsteins:3000'; 
}

if (window.location.href== "http://chat.bugsteins") {
   window.location.href = 'http://chat.bugsteins:3001'; 
}

if (window.location.href== "http://devices.bugsteins") {
   window.location.href = 'http://devices.bugsteins:3002'; 
}

</script>
</body>
</html>

答え2

最も早いのは、Linux ディストリビューション (Arch/CentOS/RHEL/Ubuntu) に応じて dnsmasq パッケージをインストールすることです。DNS サーバー (dnsmasq を使用) の /etc/hosts 内のすべてのエントリを保持します。すべてのワークステーション/Linux ホストをここに設定します。

また、ローカル以外のリクエストの場合は、フォワーダーを外部のインターネット DNS サーバーに設定してください。

100 台未満のマシンなどの小規模な環境では、これは十分で最小限の DNS サーバーです。

答え3

通常、これは内部 DNS サーバーで処理されます。内部 DNS サーバーを実行していない場合は、3 台のクライアント コンピューターのそれぞれのローカル ホスト ファイルにエントリを追加するだけで済みます。

関連情報