Відмінності і особливості протоколів оновлення IP адреси

На поточний момент сервіс MyIP надає чотири методу оновлення IP адреси

  • HTTP Auth
  • HTTP
  • HTTPS
  • UDP

 

HTTP Auth

Класичний алгоритм оновлення IP адреси. Використовується багатьма DDNS серверами. Алгоритм роботи заснований на верифікації логіна і пароля зазначеного в картці домену.

Формат рядка оновлення:

https://LOGIN:PASSWORD@myip.co.ua/update?domain=DOMAIN&ip=IP

або

https://myip.co.ua/update?domain=DOMAIN&ip=IP (в этом случае логин и пароль нужно будет вводить в интерактивном режиме)

де

LOGIN - логін вказаний в картці доменного імені

PASSWORD - пароль вказаний в картці доменного імені

DOMAIN - назва домену, наприклад test8.myip.co.ua

IP - необов'язковий параметр, IP адреса, якщо не вказана, визначається IP адреса клієнта

 

HTTP

Спрощений не захищений HTTP запит. Використовується для оновлення без аутеніфікаціі програмами на зразок CURL, WGET. У рядку запиту назву домену, логін і пароль не передається. Хеш оновлення залежить від зв'язки "назва домену @ пароль"

Приклад рядка оновлення

http://myip.co.ua:81/52eafbda09d6a63d439241af249363ab@53726043ab7055fe724ab56a1e013207

 

HTTPS

Захищений HTTP запит. Повний аналог HTTP запиту.

 

UDP

Запит призначений для embended мережевих пристроїв. Для оновлення адреси потрібно зібрати маленький пакет, який не займає багато місця. У разі неможливості передати серверу пакет не зупиняє (затримує) роботу пристрою.

Адреса сервера оновлення по UDP: myip.co.ua:200 або 146.0.40.250:200

Формат пакета:

[4 bytes uint32_t RID] [6 bytes uint8_t [6] MAC] [4 bytes uint8_t [4] IP] [4 bytes uint32_t PIN]

де

RID - код ідентифікатора пакету, створюється відправником, призначений для впізнання відповідного пакету

MAC - MAC адреса пристрою, 6 байт, використовується системою для ідентифікації NS запису

IP - IP адреса пристрою, якщо IP = 0.0.0.0, то встановлюється IP, опізнаний сервером

PIN - пін код, призначений для ідентифікації NS запису

 

Алгоритм складання UDP пакета:

RID - випадкове число, наприклад 3489576 (0x00353F28)

MAC - 00: 11: 22: 33: 44: 55

IP - 192.168.0.1

PIN - 1234567890 (0x499602D2)

Пакет на виході 00,35,3F, 28,            00,11,22,33,44,55,                  C0, A8,00,01,          44,96,02, D2

    RID                                  MAC                                     IP                              PIN

У відповідь на пакет запиту, сервер вишле пакет з 4х байт RID 00,35,3F, 28

badauth