1

В настоящее время я использую роутер на основе Linux /DIY, который предоставляет несколько дополнительных сервисов. В настоящее время у меня нет настроенного домена, и я хотел бы настроить запись srv для определенных служб, размещенных на самом маршрутизаторе. Я использую dnsmasq для внутреннего DHCP и DNS. У меня не установлена опция домена, но я могу установить для нее неиспользуемый домен / поддомен

Внутренний IP-адрес маршрутизатора - 192.168.1.1, и у него есть router с именем хоста, который, похоже, разрешается с других компьютеров.

Вот как выглядит соответствующая строка в dnsmasq.conf

# A SRV record sending LDAP for the example.com domain to
# ldapserver.example.com port 389 (using domain=)
#domain=example.com
#srv-host=_ldap._tcp,ldapserver.example.com,389

Пример, приведенный в dnsmasq, выглядит так - могу ли я использовать любой произвольный допустимый домен для домена - и могу ли я использовать IP-адрес или простое имя хоста, например маршрутизатор, для хоста?

Или мне нужно установить домен, который, как я знаю, не используется, и использовать его для имени хоста?

2 ответа2

0

После некоторого тестирования, которое я обнаружил в моем конкретном случае, когда служба работает в том же окне, где выполняется dnsmasq, установка записи srv по IP представляется более подходящим вариантом.

Итак, процесс тестирования проверял пинг маршрутизатора по имени хоста и ip, чтобы убедиться, что все решено.

Затем я проверил два варианта

srv-host=_aserv._tcp,hostname,1688 и srv-host=_aserv._tcp,192.168.1.1,1688 в dnsmasq

Затем я проверил их с помощью nslookup -type=srv _aserv._tcp

По IP

Server:  router
Address:  192.168.1.1

_aserv._tcp     SRV service location:
          priority       = 0
          weight         = 0
          port           = 1688
          svr hostname   = 192.168.1.1

По имени хоста

C:\Users\faile_000\Desktop>nslookup -type=srv _vlmcs._tcp
Server:  UnKnown
Address:  192.168.1.1

_aserv._tcp     SRV service location:
          priority       = 0
          weight         = 0
          port           = 1688
          svr hostname   = router
heckate_router  AAAA IPv6 address = ::1
heckate_router  internet address = 127.0.0.1

В этом случае установка его по имени хоста заставляет его разрешать себе. Если я либо явно задаю имя хоста для сервера, либо если это был другой сервер, это может сработать.

0

Да, вы можете использовать любой действительный домен для домена.

Запрос домена в вашем браузере (или в другом месте) сначала выполнит поиск файла хостов для поиска подходящих доменов, а затем перешлет этот запрос на зарегистрированный DNS-сервер (скорее всего, ваш маршрутизатор), который сначала проанализирует свои собственные записи DNS (которые по сути тоже являются хостами). файл). Если ваш маршрутизатор не найдет правильную запись, он переходит на собственный зарегистрированный DNS-сервер.

Поэтому, чтобы сделать это в вашей собственной сети, самое простое решение - добавить запись DNS для этого конкретного домена в вашем маршрутизаторе, и, если он установлен на вашем маршрутизаторе, добавить тот же домен в DNS-Rebind-Protection, чтобы предотвратить любые запросы DNS для этого домена. покинуть свою локальную сеть.

Например, вы можете даже использовать внешние IP-адреса, такие как 8.8.8.8, в качестве имени хоста, но вам придется перенаправить этот запрос через Iptables или аналогичный, чтобы предотвратить его перенаправление прямо в Google.

Справедливое предупреждение: вы не сможете получить доступ к (реальным) доменам /Ipaddresses, если переназначите их на своем маршрутизаторе.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .