Я хочу иметь доступ к компьютеру 192.168.0.3 под простым именем pos. Не "pos.com" или что-то в этом роде. С моей настройкой ниже я могу пинговать dev.pos, только не pos. Мне нужно проверить связь с mydomain.pos, чтобы получить ответ.
В Basic> Identification in Tomato я установил доменное имя на mydomain.
(с периодом)
local-ttl=1
bogus-priv
domain=mydomain
expand-hosts
local=/pos/
address=/pos/192.168.0.3
В чем может быть проблема?
ОБНОВЛЕНИЕ: Когда я пингую от "ping tool" томатного маршрутизатора, я получаю правильный ответ при пинге "pos". Просто не с любого из подключенных к нему компьютеров.
ОБНОВЛЕНИЕ 0.5: Запуск nslookup и набор текста pos.
(с периодом) работает; просто не без.
ОБНОВЛЕНИЕ 2: Еще одна проблема, которую я заметил, заключается в том, что мой локальный кеш DNS не обновляется при доступе к этим записям DNS. Итак, чтобы проверить:
cmd
ipconfig /flushdns
ping google.ca
ipconfig /displaydns
' Notice that there are entries
ipconfig /flushdns
ping dev.pos
ipconfig /displaydns
' Notice that there aren't any entries for dev.pos
Заглянув дальше, я наткнулся на эта ссылка. Однако изменение моей конфигурации на соответствие никому не помогает.
Зайдя в настройки моего адаптера Ethernet и изменив «Добавить эти DNS-суффиксы (по порядку) в«. », Это исправлено. Хотя это кажется грязным. Теперь мне нужно изменить этот параметр на всех подключенных компьютерах и на любом компьютере, на котором он не был изменен должен использовать "поз."
Для тех, кто все еще борется с этой проблемой: у меня был тот же вопрос, и я решил эту проблему в Tomato (после большого количества проб и ошибок), добавив следующее в DHCP / DNS -> Dnsmasq Custom Configuration (где «компьютер» - это рабочая станция ; «dom» - это домен, а «11.22.33.44» - IP-адрес рабочей станции):
local-ttl=1
expand-hosts
domain=dom
address=/computer.dom/11.22.33.44
Домен маршрутизатора (в разделе «Идентификация»), вероятно, должен быть установлен таким же (в данном случае: dom), но не уверен.
Теперь "ping computer" получает правильный ответ от Dnsmasq.
Я не могу точно сказать почему, но используя address=/pos.mydomain/192.168.0.3
вместо того address=/pos/192.168.0.3
работает.
dnsmasq
не отправляет автоматически список поиска доменов на хосты, получающие IP-адреса с помощью DHCP. Для этого нужно установить параметр DHCP. Вы также должны указать адрес вашего маршрутизатора в качестве DNS-сервера. Проверьте документацию dnsmasq, чтобы узнать о некоторых данных, которые могут быть отправлены по DHCP.
РЕДАКТИРОВАТЬ: если вы хотите иметь возможность ссылаться на сервер только по его имени, вы должны определить домен в dnsmasq
. (Не используйте local
так как это будет конфликтовать с zeroconf.) Некоторые маршрутизаторы используют lan
, и localnet
это традиционное имя. Установите этот домен в качестве первого домена в списке поиска.
У каждой из моих машин есть имя хоста, о котором они сообщают, или вы можете установить имя хоста вместе со статической записью DHCP в Basic -> Static DHCP/ARP/IPT
.
Затем у меня есть домен, установленный в Basic -> Identification
раздел.
Маршрутизатор разрешает DNS по имени хоста для машин в сети, даже без FQDN.
Никакой дополнительной ручной настройки или скриптов не требуется.