Введение
Протокол расширяемого провизионирования (Extensible Provisioning Protocol, EPP) — это гибкий протокол, предназначенный для выделения объектов в регистрах через Интернет. Мотивацией для создания EPP было создание надежного и гибкого протокола, обеспечивающего связь между регистрами доменных имен и регистраторами доменных имен. Эти транзакции необходимы при регистрации или продлении доменного имени, что также предотвращает угон домена. До его внедрения в реестрах не существовало единого подхода, и использовалось множество различных проприетарных интерфейсов. Хотя первоначально протокол разрабатывался для доменных имен, он предназначен для использования в любой системе заказов и выполнения. EPP основан на XML — структурированном текстовом формате. Основной сетевой транспорт не фиксирован, хотя в настоящее время специфицирован только метод через TCP. Протокол разработан с учетом гибкости, позволяющей использовать другие транспортные механизмы, такие как BEEP, SMTP, SOAP или HTTPS. Индивидуальные документы для представления были приняты рабочей группой IETF Provisioning Registry (provreg), созданной после сессии BoF на IETF 49 в декабре 2000 года. Предлагаемые стандартные документы (RFC 3730 и 3734) были опубликованы редактором RFC в марте 2004 года. Проектные стандартные документы (RFC 4930–4934) были опубликованы в мае 2007 года. В августе 2009 года IETF присвоил EPP статус полного стандарта как STD 69. Первым расширением EPP, получившим статус предлагаемого стандарта, стало расширение льготного периода выкупа из RFC 3915 в сентябре 2004 года. ICANN включила предоставление услуги EPP в базовый контракт с реестрами, поэтому каждый gTLD внедрил этот протокол. Существует множество реализаций серверного программного обеспечения EPP с открытым исходным кодом. Совет администраторов кодов стран (CoCCA) поддерживает серверное программное обеспечение EPP, которое используется примерно 59 ccTLD и 6 gTLD. Другое программное обеспечение с открытым исходным кодом — FRED (поддерживается CZ. NIC), которое насчитывает 11 ccTLD среди своих пользователей.
The Extensible Provisioning Protocol (EPP) is a flexible protocol designed for allocating objects within registries over the Internet. The motivation for the creation of EPP was to create a robust and flexible protocol that could provide communication between domain name registries and domain name registrars. These transactions are required whenever a domain name is registered or renewed, thereby also preventing domain hijacking. Prior to its introduction, registries had no uniform approach, and many different proprietary interfaces existed. While its use for domain names was the initial driver, the protocol is designed to be usable for any kind of ordering and fulfilment system. EPP is based on XML a structured, text based format. The underlying network transport is not fixed, although the only currently specified method is over TCP. The protocol has been designed with the flexibility to allow it to use other transports such as BEEP, SMTP, SOAP or HTTPS. The individual submission documents were adopted by the IETF Provisioning Registry (provreg) working group, which was created after a BoF session was held at IETF 49 in December 2000. Proposed Standard documents (RFCs 3730 3734) were published by the RFC Editor in March 2004. Draft Standard documents (RFCs 4930 4934) were published in May 2007. In August 2009 IETF granted EPP the status of full standard as STD 69. The first EPP extension that became a proposed standard was the redemption grace period extension from RFC 3915 in September 2004. ICANN has made it a condition in their base registry contract to offer an EPP service, therefore every gTLD has adopted the protocol. There are multiple open source implementations of EPP server software. The Council of Country Code Administrators (CoCCA) maintain an EPP server software that is used by around 59 ccTLDs and 6 gTLDs. Another open source software is FRED (maintained by CZ. NIC) which counts 11 ccTLDs as its users.
Команды протокола
Существует 3 класса команд: управление сеансом, запрос и преобразование объекта. Эти команды могут быть сопоставлены с объектами, что более точно определяет их функциональность для работы с контактами и доменами. Существуют также другие стандартизированные объекты, такие как организации, однако они редко используются. Когда клиент подключается к серверу, сервер немедленно отправляет "приветственное" сообщение клиенту. Это сообщение содержит информацию о сервере, необходимую для подключения, включая имя сервера, текущую дату и время сервера в UTC, поддерживаемые функции и политику конфиденциальности. Поддерживаемые функции включают версии EPP, языки, объекты и расширения, такие как IDN, премиальные доменные имена, восстановление домена (RGP) и расширения для обработки запуска новых TLD, среди прочего. Некоторые реестры также разработали расширения, специфичные для их TLD. Распространенным вариантом использования нестандартных расширений является сбор дополнительных данных, необходимых для создания домена, например, идентификационный номер НДС. Кроме того, многие реестры доменных имен предлагают настроить белый список IP-адресов для подключения к своим серверам EPP. EPP обеспечивает некоторую защиту от атак повторного воспроизведения с помощью клиентского clTRID, однако этот элемент является необязательным и поэтому не используется каждым серверным программным обеспечением. Следовательно, используемый транспортный механизм должен реализовывать дополнительные механизмы защиты от повторного воспроизведения.