.UA ccTLD Domain Network Information Centre

HOST:CHECK

Команда EPP <check> host призначена для перевірки існування хоста і перевірки можливості реєстрації нового хоста із заданим ім'ям.

Команда <check> містить один або декілька (але не більше 10) елементів:

  • <host:name> - Повністю певне ім'я хоста.

Приклад команди <check>

 <?xml version="1.0" encoding="UTF-8" standalone="no"?>
 <epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
   <command>
     <check>
       <host:check
        xmlns:host="http://hostmaster.ua/epp/host-1.1">
         <host:name>ns5.example.epp.ua</host:name>
         <host:name>ns5.example.net</host:name>
       </host:check>
     </check>
     <clTRID>USER-1275850648</clTRID>
   </command>
 </epp>

При успішному виконанні команди <check> відповідь сервера містить елемент <resData> під-елемент <host:chkData>, у якому присутні елементи <host:cd> - поодинці на кожен <host:name> у запиті.

<host:cd> містить наступні під-елементи:

  • <host:name avail="0/1"> - задане ім'я хоста з атрибутом "avail", який може набувати значень "0" або "1". "0" означає, що такий хост не може бути створений, "1" означає, що ім'я хоста синтаксично коректно і вільно.
  • <host:reason> - необов'язковий елемент. Задається при avail="0", описує причину, по якій хост не може бути створений.

При прийомі команди <check> host для кожного вказаного в списку хоста виробляються наступні перевірки:

  • Ім'я хоста відповідає [RFC1034]. Якщо ні - avail="0" або <host:reason>: "Incorrect hostname"
  • Інформації про хост немає в Реєстрі. Якщо ні - avail="0" або <host:reason>: "Object exists"
  • Визначається тип хоста (внутрішній або зовнішній).
    якщо внутрішній, то:
    • У Реєстрі зареєстрований батьківський домен для даного хоста. Якщо ні - avail="0" и <host:reason>: "Parent domain not exists"
    • Чи є реєстратор, що прислав заявку, спонсором батьківського домена. Якщо ні - avail="0" або <host:reason>: "You have no permissions to add this nameserver"
    якщо зовнішній, то:
    • Є в системі DNS даний хост (виробляється спроба визначити його ip-адресу). Якщо ні - avail="0" та <host:reason>: "There are no data about server found"

Приклад відповіді сервера на команду <check>

 <?xml version="1.0" encoding="UTF-8"?>
 <epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
   <response>
     <result code="1000">
       <msg lang="en">Command completed successfully</msg>
     </result>
     <resData>
       <host:chkData
        xmlns:host="http://hostmaster.ua/epp/host-1.1">
         <host:cd>
           <host:name avail="1">ns5.example.epp.ua</host:name>
         </host:cd>
         <host:cd>
           <host:name avail="0">ns5.example.net</host:name>
           <host:reason lang="en">There are no data about server found</host:reason>
         </host:cd>
       </host:chkData>
     </resData>
     <trID>
       <clTRID>USER-1275850648</clTRID>
       <svTRID>UA-20100606215846-157155-00002</svTRID>
     </trID>
   </response>
 </epp>

Коди відповідей сервера на команду <check>

1000    "Command completed successfully"
        "Команду виконано успішно"
        "Команда выполнена успешно"

2001    "Command syntax error"
        "Синтаксична помилка команди"
        "Синтаксическая ошибка команды"
	Помилка виникає при числі об'єктів, що перевіряються,         
більшому максимально допустимого (10)