RFC: 5321
Оригинал: Simple Mail Transfer Protocol
Предыдущие версии: RFC 772, RFC 780, RFC 788, RFC 821, RFC 974, RFC 1425, RFC 1651, RFC 1869, RFC 2821
Категория: Проект стандарта
Дата публикации:
Автор:
Перевод: Николай Малых

4.1.3. «Дословные» адреса

Иногда хост не знает доменного имени и почтовая связь (в частности, передача сообщений об ошибках) блокируется. Для решения этой проблемы в качестве альтернативы доменному имени может использоваться специальная форма адреса (literal address). Для адресов IPv4 эта форма использует десятичное представление байтов IP-адреса с разделением точками. Адреса заключаются в квадратные скобки (например, [123.255.37.2]), которые говорят об использовании адреса IPv4 в десятичном представлении с разделением точками. Для IPv6 и других форм адресации, которые могут быть в последствии стандартизованы, форма включает стандартизованный тег, идентифицирующий синтаксис адреса, (двоеточие - :) и собственно адрес в формате, заданном стандартом [например, RFC 4291 [8] для IPv6].

В частности, используются следующие варианты:

IPv4-address-literal    = Snum 3("." Snum)

IPv6-address-literal    = "IPv6:" IPv6-addr

General-address-literal = Standardized-tag ":" 1*dcontent

Standardized-tag        = Ldh-str
                        ; должен быть опубликован в RFC со статусом Standards-Track и
                        ; зарегистрирован IANA

dcontent        = %d33-90 / ; Печатаемый символ US-ASCII
                %d94-126 ; исключая "[", "\", "]"

Snum            = 1*3DIGIT
                ; значения от 0 до 255 в десятичном представлении

IPv6-addr       = IPv6-full / IPv6-comp / IPv6v4-full / IPv6v4-comp

IPv6-hex        = 1*4HEXDIG

IPv6-full       = IPv6-hex 7(":" IPv6-hex)

IPv6-comp       = [IPv6-hex *5(":" IPv6-hex)] "::"
                [IPv6-hex *5(":" IPv6-hex)]
                ; "::" представляет по крайней мере две 16-битовых группы нулей. В
                ; дополнение может использоваться до 6 групп.

IPv6v4-full     = IPv6-hex 5(":" IPv6-hex) ":" IPv4-address-literal

IPv6v4-comp     = [IPv6-hex *3(":" IPv6-hex)] "::"
                [IPv6-hex *3(":" IPv6-hex) ":"]
                IPv4-address-literal
                ; :: представляет по крайней мере две 16-битовых последовательности нулей
                ; в дополнение к :: может присутствовать не более 4 групп и
                ; IPv4-address-literal
2007 - 2017 © Русские переводы RFC, IETF, ISOC.