Запись SOA RNAME: Нужна ли обратная косая черта для специальных символов, кроме точки?

Запись SOA RNAME: Нужна ли обратная косая черта для специальных символов, кроме точки?

https://www.rfc-editor.org/rfc/rfc1035#section-8

Если <local-part> содержит точки или другие специальные символы, его представление в главном файле потребует использования обратных косых черт, чтобы гарантировать, что доменное имя правильно закодировано. Например, почтовый ящик[email protected]будет представлен как Action\.domains.ISI.EDU.

Однако на практике я никогда не видел, чтобы какой-либо специальный символ, кроме точки, нуждался в обратной косой черте. Согласно RFC 1035, он [email protected]должен быть закодирован как , Action\+domains.ISI.EDUно на практике, похоже, всегда Action+domains.ISI.EDU. Знак плюс не считается "специальным символом" или точка - единственный специальный символ, которому нужна обратная косая черта?

решение1

+не является специальным символом в контексте DNS, нигде.

DNS имеет запутанную терминологию:

  • Доменные имена могут содержать любые символы, никаких ограничений нет, только точка имеет особое значение в качестве разделителя между метками.
  • Имена хостов представляют собой подмножество доменных имен, которые следуют ограничению «буква-цифра-дефис» или LDH; в этом подмножестве они +не могут встречаться, поэтому они не являются специальными в том смысле, что для их защиты ничего не нужно делать, поскольку они вообще не могут встречаться.

Несколько символов, требующих особого обращения, разбросаны по всему документу, но вкратце:

  • .необходимо бежать, с\
  • таким образом, если вам нужен литерал \где-то, вам также придется его экранировать
  • затем в зависимости от того, где вы находитесь в файле, конец строки или кавычки, возможно, придется экранировать, потому что в противном случае это будет означать что-то другое. Для этой потребности и любого другого символа по умолчанию определено использование, \DDDгде DDD— десятичное значение байта (и, как таковое, US-ASCII для строк), который вы хотите экранировать
  • $может потребоваться экранирование в зависимости от того, где вы находитесь в штрафе и кто его потребляет, например, bind, а частично, возможно, и какое-то другое программное обеспечение, рассматривающее $ORIGINили $INCLUDEкак конкретные инструкции, а не как имена в зоне.

Связанный контент