У меня четыре компьютера, подключенных к одному коммутатору, но не подключенные к Интернету.
Один из компьютеров (большой на картинке) более мощный, чем другие, и работает под управлением Ubuntu с тремя действующими веб-серверами Node.js с разными приложениями на разных портах. Остальные компьютеры работают под управлением Windows.
Я хочу, чтобы три других компьютера получали доступ к веб-серверам, вызывая URL-адрес, например
Каков наилучший способ (приоритет от самого быстрого времени настройки) для этого?
До сих пор я пробовал Bind9 на серверном компьютере и назначал статические IP-адреса и ручной жестко заданный DNS на трех клиентских машинах, но он не работает, и, поскольку я работаю над ним, я полагаю, что опубликую этот вопрос, если у кого-то есть лучший способ.
Каков наилучший (приоритет от самого быстрого времени настройки) способ добиться этого?
НЕ ПРИВЯЗАТЬ.
Отредактируйте 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
Добавьте веб-прослушиватель на порт 80 на сервере, каким-то образом с настройкой Node.js или базовой установкой веб-сервера (Lighttpd, NginX, Apache или другие), обслуживающей статическую страницу с JavaScript в нем, который смотрит на URL и перенаправляет страницу на соответствующий порт.
Взяв из https://stackoverflow.com/questions/18022636/redirection-based-on-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>
Самым быстрым будет установка пакета dnsmasq в зависимости от вашего дистрибутива Linux (Arch / CentOS / RHEL / Ubuntu). Сохраните все записи в / etc / hosts на вашем DNS-сервере (который использует dnsmasq). Направьте сюда все свои рабочие станции / хосты Linux.
Кроме того, не забудьте установить пересылки на внешний DNS-сервер в Интернете для нелокальных запросов.
Для небольших сред, скажем, <100 машин, это достаточно хороший и минималистичный DNS-сервер.
Обычно это обрабатывается с помощью внутреннего DNS-сервера. Если у вас его нет, вы можете просто добавить записи в файл локального хоста на каждом из трех клиентских компьютеров.