---
title: "Мережеві адреси"
description: "Вступ до мережевих адрес."
lang: uk
sidebarDepth: 2
---

Вузли [Етеріуму](/) повинні ідентифікувати себе за допомогою певної базової інформації, щоб підключатися до пірів. Щоб гарантувати, що будь-який потенційний пір зможе інтерпретувати цю інформацію, вона передається в одному з трьох стандартизованих форматів, які може зрозуміти будь-який вузол Етеріуму: multiaddr, enode або Ethereum Node Records (ENR). ENR є поточним стандартом для мережевих адрес Етеріуму.

## Передумови {#prerequisites}

Для розуміння цієї сторінки потрібне певне розуміння [мережевого рівня](/developers/docs/networking-layer/) Етеріуму.

## Multiaddr {#multiaddr}

Оригінальним форматом адреси вузла Етеріуму був «multiaddr» (скорочення від «multi-addresses»). Multiaddr — це універсальний формат, розроблений для однорангових мереж. Адреси представлені у вигляді пар ключ-значення, де ключі та значення розділені прямою скісною рискою (слешем). Наприклад, multiaddr для вузла з IPv4-адресою `192.168.22.27`, який прослуховує TCP-порт `33000`, виглядає так:

`/ip4/192.168.22.27/tcp/33000`

Для вузла Етеріуму multiaddr містить ідентифікатор вузла (node-ID) (хеш його відкритого ключа):

`/ip4/192.168.22.27/tcp/33000/p2p/5t7Nv7dG2d6ffbvAiewVsEwWweU3LdebSqX2y1bPrW8br`

Enode — це спосіб ідентифікації вузла Етеріуму з використанням формату URL-адреси. Шістнадцятковий ідентифікатор вузла (node-ID) кодується в частині імені користувача URL-адреси, відокремленій від хоста знаком @. Специфікація визначає ім'я хоста лише як IP-адресу; однак більшість клієнтів (таких як Geth та Бесу) також приймають тут DNS-ім'я та перетворюють його на IP-адресу під час запуску. Це специфічна поведінка клієнта, а не частина стандарту. Порт у розділі імені хоста — це TCP-порт для прослуховування. Якщо порти TCP та UDP (виявлення) відрізняються, порт UDP вказується як параметр запиту «discport».

У наступному прикладі URL-адреса вузла описує вузол з IP-адресою `10.3.58.6`, TCP-портом `30303` та UDP-портом виявлення `30301`.

`enode://6f8a80d14311c39f35f516fa664deaaaa13e85b2f7493f37f6144d86991ec012937307647bd3b9a82abe2974e1407241d54947bbb39763a4cac9f77166ad92a0@10.3.58.6:30303?discport=30301`
## Ethereum Node Records (ENR) {#enr}

Ethereum Node Records (ENR) — це стандартизований формат для мережевих адрес в Етеріумі. Вони замінюють multiaddr та enode. Вони особливо корисні, оскільки дозволяють більший обмін інформацією між вузлами. ENR містить підпис, порядковий номер і поля, що деталізують схему ідентифікації, яка використовується для створення та перевірки підписів. ENR також може бути заповнений довільними даними, організованими у вигляді пар ключ-значення. Ці пари ключ-значення містять IP-адресу вузла та інформацію про підпротоколи, які вузол може використовувати. Клієнти консенсусу використовують [специфічну структуру ENR](https://github.com/ethereum/consensus-specs/blob/master/specs/phase0/p2p-interface.md#enr-structure) для ідентифікації завантажувальних вузлів (boot nodes), а також включають поле `eth2`, що містить інформацію про поточний форк Етеріуму та підмережу пліток атестації (attestation gossip subnet) (це підключає вузол до певного набору пірів, чиї атестації агрегуються разом).

## Подальше читання {#further-reading}

- [EIP-778: Ethereum Node Records (ENR)](https://eips.ethereum.org/EIPS/eip-778)
- [LibP2P: Multiaddr-Enode-ENR?!](https://consensys.net/diligence/blog/2020/09/libp2p-multiaddr-enode-enr/)
