Я бегаю Lighttpd 1.4.28
на встроенном устройстве. Помимо веб-сервера, я запускаю udhcpd
и dnsmasq
чтобы другие устройства могли подключаться к моему встроенному устройству для доступа к веб-сайту.
У моего устройства есть возможность подключаться к другим сетям. Поэтому, когда я подключаю свое встроенное устройство к моей локальной домашней беспроводной сети, я могу получить доступ к веб-сайту с IP-адресом, полученным этим устройством после присоединения к локальной домашней сети, но не по имени хоста.
Когда я подключаюсь к локальной домашней сети, я убиваю udhcpd
В моей локальной домашней сети работают DHCP-сервер и DNS-сервер, которые автоматически назначают IP.
Я передаю имя хоста своего устройства при запросе IP через udhcpc
так как:
udhcpc -h "www.mydevice.com"
Моя проблема в том, что я могу получить доступ к веб-сайту, работающему на устройстве, только как:
http://192.168.100.101/index.html
а не как:
http://www.mydevice.com/index.html
Кто-нибудь может сказать мне, где я ошибаюсь? Я что-то упускаю?
Спасибо.
Ваше имя хоста не должно быть www.mydevice.com
, но это должно быть www
в таком случае. mydevice.com
это ваш домен и должно быть доменным именем вашей домашней сети.
Обе udhcpd
и dnsmasq
должен быть настроен на этот домен. Даже ваши ПК должны были быть настроены на это доменное имя DNS.
Также убедитесь, что mydevice.com не является настоящим доменом, у которого есть собственный DNS-сервер в Интернете. В этом случае вы должны либо назвать это чем-то нереальным, например mydevice.invalid
или создайте субдомен для этой цели, например local.mydevice.com
. В противном случае вы столкнетесь с конфликтом публичных и частных записей DNS.