-
Notifications
You must be signed in to change notification settings - Fork 7
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Return NS record for xxx.meshname #14
Comments
@Scondo Вроде как NS запись должна возвращать домен authoritative сервера, а не его IP https://www.rfc-editor.org/rfc/rfc1035.html
|
Да, IP по стандарту нельзя возвращать, а жаль https://serverfault.com/questions/764937/why-dont-ns-records-contain-ip-addresses |
Первая же ссылка в ответе говорит о возможности возвращать вместе с NS записью AAAA запись Если по спецификации: в сообщении DNS https://tools.ietf.org/html/rfc1035#page-25 есть помимо секции непосредственно ответа (на запрос NS там будет DNS-имя нашего NS-сервера) есть секция дополнительной информации (последняя - Additional). Вот в этой секции и передаётся A или в нашем случае AAAA запись, связывающая имя из ответа на запрос NS с непосредственно IP-адресом |
Другой вопрос - надо внимательнее проанализировать какие запросы формирует система. Возможно NS не хватит, надо будет ещё возвращать SOA запись. |
https://en.wikipedia.org/wiki/Domain_Name_System#Circular_dependencies_and_glue_records
|
Значит, на запрос NS xxx.meshname мы отвечаем сразу двумя resource records:
Получается, надо захардкодить сабдомен для NS записи в имплементации или даже зарезервировать его в самом описании протокола meshname? Уже как-то не очень красиво получается. |
Ну а что мешает считать собственно корневой домен NS доменом? |
Сейчас в протоколе написано
Надо будет вместо этого написать, что xxx.meshname всегда резолвится в AAAA запись c раскодированным IP. |
Да. А если уже надо указывать другие адреса - использовать yyy.xxx.meshname, на которые указывает DNS сервер, поднятый на xxx.meshname Но собственно почему я поднял этот вопрос в рамках альтернативной доменной зоны - поднятие своего DNS-сервера может быть сложнее чем нынешняя настройка, а без собственного DNS-сервера это всё не будет работать. |
Пока не совсем понятно, как сделать имплементацию, возможно понадобится возвращать SOA+glue record https://www.cloudflare.com/learning/dns/dns-records/dns-soa-record/ |
Возможно. Как минимум ради скорости. То есть возможно SOA с MNAME xxx.meshname приведёт к дальнейшему запросу A|AAAA xxx.meshname у "корневой" зоны meshname. Но если сразу приклеить - будет на 1 запрос короче и ergo быстрее |
Один из вариантов реализации полноценных поддоменов и служебных записей - возвращать помимо AAAA ещё и NS. Тогда дальнейшая реализация просто выводится за пределы собственно meshname/meship и перенести задачу поддоменов и служебных записей на DNS-сервер, поднимаемый на соответствующем IP
Originally posted by @Scondo in #7 (comment)
The text was updated successfully, but these errors were encountered: