Запуск вузла Geth: Go-Ethereum у мережі Ethereum

Запуск вузла Geth: Go-Ethereum у мережі Ethereum

Ви вирішуєте перестати довіряти кінцевій точці Infura трафік свого гаманця. Можливо, друг запропонував допомогти вам зі стейкінгом 32 ETH. Можливо, ваш dApp знаходиться на відстані одного ліміту швидкості від прориву в день запуску. Якою б не була причина, наступне речення завжди одне й те саме: вам потрібно запустити вузол Geth.

Це речення звучить складніше, ніж воно є насправді. Geth, скорочення від go-ethereum, — це оригінальний клієнт виконання Ethereum, написаний мовою програмування Go Джеффрі Вілке та глобальною командою з відкритого коду ще у 2014 році. Сучасний ноутбук з містким SSD може його запустити. Так само може і коробка Hetzner за 30 доларів на місяць. Елементи, які бентежать людей, — це не команди встановлення. Це вибір навколо них: який режим синхронізації вибрати, з яким консенсусним клієнтом поєднати Geth, що відбувається після злиття, як підтримувати вузол активним, коли диск заповнюється о 2 годині ночі.

Цей посібник проведе повний шлях. Купівля обладнання, встановлення, синхронізація Snap, сполучення з консенсусним клієнтом після злиття, консоль JavaScript, облікові записи та Clef, налаштування валідатора, поширені поломки. До кінця ви точно знатимете, що робить ваш комп'ютер, коли ці білі журнали прокручуються повз, і що робити, коли вони зупиняються.

Що таке вузол гетів і чому він важливий сьогодні

Вузол Geth — це комп'ютер, на якому працює клієнт go-ethereum, підключений до однорангової мережі Ethereum. Машина завантажує блоки. Вона перевіряє кожну транзакцію. Вона запускає смарт-контракти на віртуальній машині Ethereum. Вона зберігає синхронізовану копію стану світу. Ззовні це виглядає як тихий процес, який прослуховує кілька портів. Всередині це впертий бухгалтер, який відмовляється вірити чиїмось словам. Він зберігає власну копію даних блокчейну, дозволяє вашому гаманцю перевіряти баланси рахунків або надсилати транзакції до ланцюжка, а також дозволяє вашому dApp взаємодіяти з блокчейном безпосередньо, а не через чужий API.

Чому все це має значення у 2026 році? Концентрація. Більшість трафіку публічних dApp на Ethereum проходить через невелику кількість розміщених RPC-провайдерів — Infura, Alchemy, QuickNode та кілька менших магазинів. Тільки Infura минулого року обслужила понад 600 мільярдів блокчейн-запитів. Вони здебільшого надійні. Вони також є єдиною точкою відмови: коли провайдер виходить з ладу в одному регіоні, половина гаманців, на які вказує ця кінцева точка, показують застарілі баланси та завислі транзакції, доки хтось їх не виправить. Запустіть власний Geth-нод, і весь цей клас збоїв перестане бути вашою проблемою.

Це також гра чисел. Станом на квітень 2026 року трекер вузлів Ethereum налічує приблизно 13 678 активних вузлів Ethereum по всьому світу. Сполучені Штати володіють 37,55% з них — близько 5171 вузла. Німеччина має 16,05%. Китай — 12,06%. Розкручування ще одного вузла — це не героїзм. Це просто корисно, і мережа продовжує непомітно розраховувати на те, що люди це роблять.

Є й глибша причина. Ethereum залишається Ethereum, тому що будь-хто може перевірити його, не питаючи дозволу. Geth є найпопулярнішим клієнтом, який виконує таку перевірку. Щоразу, коли інший незалежний оператор запускає новий вузол Geth, захоплення ланцюжка стає все складнішим. Ця логіка існувала ще до злиття і з того часу не послаблюється.

Вузол Гет

Geth, Go Ethereum та протокол Ethereum

Три імені, один проєкт. Люди змішують їх разом у розмовах, і нічого не виходить, але ось фактична розбивка.

Протокол Ethereum — це не код. Це специфікація, написана на жовтому папері та довгій купі EIP, і будь-хто може написати для неї клієнт. Go Ethereum, іноді пишеться як go-ethereum, — це реалізація протоколу Ethereum мовою Go. Geth — це програма командного рядка всередині Go Ethereum, яку ви запускаєте в командному рядку, налаштовуєте за допомогою прапорців та використовуєте для взаємодії з мережею Ethereum. Все інше в репозиторії — це бібліотеки та помічники, обгорнуті навколо них. «Вузол Geth» — це просто машина, на якій ви запустили Geth, вказали його на каталог `chaindata` та дозволили йому взаємодіяти з основною мережею Ethereum.

Для одного й того ж протоколу існують різні клієнти. Nethermind на C#. Besu на Java. Erigon та Reth, обидва на Rust. Той самий формат зв'язку. Різний код, різна продуктивність, різна історія.

Geth — найстаріший з них. Понад 400 людей зробили свій внесок; Петер Сіладжі роками керував цим проектом. Домашня сторінка — Ethereum Foundation; джерело знаходиться на ethereum/go-ethereum на GitHub; ліцензія — GNU General Public License, GPL-3.0 для бінарних файлів та LGPL-3.0 для коду бібліотеки. Поточна стабільна версія, на момент написання цього тексту, — v1.17.2 — кодова назва «EMF Suppressor» — вийшла 30 березня 2026 року. Вона виправила три CVE (CVE-2026-26313, -26314, -26315) та навчила клієнта синхронізуватися з ланцюгами, чия допразька історія вже була видалена.

Поряд із Geth постачається кілька аналогічних інструментів. Clef — це окремий підписувач, який зберігає ваші закриті ключі подалі від самого вузла. Abigen перетворює ABI Solidity на прив’язки Go, які ви можете використовувати. Інструмент `evm` дозволяє запускати байт-код ізольовано, коли вам потрібно налагодити щось конкретне. Жоден з них не потрібен. Зрештою, вам знадобиться щонайменше один протягом тижня.

Чому варто запускати вузол: конфіденційність, швидкість, суверенітет

Більшість людей, які керують власним вузлом Geth, потрапляють туди з однієї з трьох причин. Конфіденційність понад усе. Коли гаманець взаємодіє з розміщеним RPC, цей провайдер бачить кожну адресу, кожен виклик контракту та кожен запит котирування. Власно розміщений вузол розриває це посилання. Провайдера не існує. Ваш гаманець запитує вашу машину, ваша машина запитує мережу, і тільки ваша машина бачить шаблон.

Продуктивність – друга причина. Розміщені RPC знижують швидкість. Безкоштовний рівень Infura обмежується 100 000 запитів на день; рівень Team коштує 225 доларів на місяць за 75 мільйонів щоденних запитів. Локальний вузол обслуговує ваш трафік зі швидкістю пам'яті з нульовою вартістю за виклик. Для стану завантаження dApp під час кожного завантаження сторінки різниця в затримці помітна. Для арбітражного бота, який сканує мемпул, це різниця між здійсненням угоди та спостереженням за її проходженням. Сама основна мережа обробила близько 200,4 мільйона транзакцій у першому кварталі 2026 року, досягнувши піку в 2,88 мільйона транзакцій 16 січня, тому вузол, який може встигати за мережею, виконує реальну роботу.

Суверенітет – це третє. Якщо ви робите ставку на Ethereum, мережа очікує, що ваш валідатор опублікує блок, коли настане його черга. Аутсорсинг цієї публікації до спільного RPC технічно дозволений та операційно нестабільний. Запускайте власний клієнт рівня виконання, і ви контролюєте свій слот. Те саме стосується серйозних розробників dApp, аналітиків блокчейну, пошуковиків MEV та всіх, чий бізнес залежить від доступності Ethereum саме для них.

Після злиття: Geth та ваш консенсусний клієнт

До вересня 2022 року один процес Geth робив усе. Він взаємодіяв з мережею. Він запускав EVM. Він вибирав переможця серед конкуруючих блоків за допомогою Proof-of-Work майнінгу. Merge розділив цю роботу навпіл. Geth все ще запускає EVM та зберігає стан. Друга програма — консенсусний клієнт — тепер обробляє Proof-of-Stake: плітки про блоки серед валідаторів, голосування за те, що має значення, та повідомлення Geth, який форк є канонічним.

Отже, кожна сучасна система Geth — це пара, а не окремий процес. Виберіть консенсусного клієнта для роботи разом з ним. Доступні варіанти: Lighthouse (Rust), Prysm (Go), Teku (Java), Nimbus (Nim) та Lodestar (TypeScript). Ці два процеси взаємодіють один з одним через приватний канал під назвою Engine API, що захищений секретом JWT, який ви генеруєте один раз і передаєте обом сторонам за допомогою `--authrpc.jwtsecret`.

Запустіть Geth окремо, без клієнта-консенсусу, і в логах буде написано щось на кшталт "Мережа після злиття, але клієнта-маяка не видно. Будь ласка, запустіть один, щоб слідувати ланцюжку!" Вузол залишатиметься там, ввічливим і марним. Geth сам по собі більше не є повноцінним вузлом Ethereum. Пара — це одиниця.

Різноманітність клієнтів тут має значення. Спільнота Ethereum просить операторів розподілити свої впровадження по обидва боки розколу, оскільки якщо більше двох третин валідаторів опиняться на одному й тому ж клієнті з помилками, ці валідатори зіткнуться з повним штрафом у розмірі 32 ETH, якщо щось зламається. За останніми даними clientdiversity.org, Geth складав близько 41% клієнтів для виконання у 2026 році; звіт Stake.fish за 2026 рік показує, що цей показник ближче до 50%. У будь-якому разі, це менше, ніж понад 86% у 2023 році, але все ще вище порогу безпеки в 33%, який спільнота вважає ідеальним. Саме тому деякі нові оператори навмисно обирають Nethermind, Besu або Reth, навіть якщо Geth є легшим першим кроком.

Pectra, оновлення Prague + Electra, яке було активовано 7 травня 2025 року, також змінило повсякденні дії операторів. EIP-7251 збільшив максимальний ефективний баланс на валідатор з 32 ETH до 2048 ETH. Оператор стейкингу, який раніше опікувався 1000 окремими валідаторами, тепер може об'єднати їх у 16 великих. EIP-6110 скоротив час очікування між депозитом та активацією з приблизно 12 годин до приблизно 13 хвилин. EIP-7002 надав валідаторам можливість самостійно ініціювати виведення коштів, замість того, щоб благати про це початкового підписанта депозиту. Запуск стеку валідаторів, парних з Geth, у 2026 році значно простіший, ніж у 2024 році.

Апаратне забезпечення: процесор, оперативна пам'ять та твердотільний накопичувач для вузлів Geth

Чесна планка обладнання у 2026 році вища, ніж визнається в офіційній документації. Плануйте на наступні три роки, а не на останні три.

Компонент Офіційна документація Geth (2023, актуальна досі) Реальність операторського рівня (Cherry Servers, Chainstack, 2026) Архівний вузол (на основі шляху, версія 1.16+)
Процесор Чотириядерний 8-ядерний / 16-потоковий сучасний AMD або Intel 8+ ядер, висока однопотоковість
Оперативна пам'ять 16 ГБ Мінімум 32 ГБ, плавніше 64 ГБ 64 ГБ або більше
Зберігання Твердотільний накопичувач на 2 ТБ Твердотільний накопичувач NVMe ємністю від 4 до 8 ТБ 4 ТБ NVMe (на основі даних про шлях, використовується ~2 ТБ)
Мережа 25 Мбіт/с Від 300 до 500 Мбіт/с для повного RPC 300+ Мбіт/с
Потужність Рекомендовано UPS Наполегливо рекомендується UPS Потрібне ДБЖ

Сховище – це те, що дивує нових операторів. Повний вузол Geth, синхронізований за допомогою snap-синхронізації та обрізаний, сьогодні має близько 650 ГБ. У власній документації Geth сказано, що це додає приблизно 14 ГБ на тиждень. Додайте консенсусний клієнт. Додайте кілька місяців запасу зростання. Додайте будь-який трафік L2 RPC, який ви плануєте обслуговувати. Ви швидко отримаєте від 4 до 8 ТБ NVMe.

Кілька слів про тип диска. SATA SSD технічно працюють. Вони також зупиняють синхронізацію та пропускають атестації під навантаженням. NVMe не є опціональним у 2026 році. Обертові диски не були життєздатними роками. Якщо ваш постачальник пропонує SATA лише на дешевому рівні, платіть. Математика жорстока: застряглий SATA-диск коштує вам пропущених винагород валідатора щоепохи.

Оперативна пам'ять – це пастка номер два. На офіційній сторінці обладнання Geth, яку востаннє публікували у 2023 році, досі вказано 16 ГБ. До 2026 року сервери Cherry, Chainstack та bacloud опиняться на робочому рівні з 32 ГБ, а зручним рішенням буде 64 ГБ. Geth кешує значний фрагмент стану в пам'яті. Консенсусний клієнт хоче свою частку. Додайте Prometheus, Grafana, все інше, що ви насправді використовуєте, і 16 ГБ швидко закінчуються.

Центральний процесор – найпростіший з трьох. Сучасні настільні чіпи мають більше запасу потужності, ніж Гет знає, що з ним робити. Тактова частота навряд чи має значення. Кількість ядер та сучасні інструкції мають більше значення. AVX2 забезпечує швидку перевірку підпису. Вісім ядер запобігають зависанню машини через сплеск синхронізації. Забігаючи вперед, ліміт блочного газу підскочив з 30 мільйонів до 45 мільйонів, а потім і до 60 мільйонів між серединою 2024 року та листопадом 2025 року. Фонд Ethereum прогнозує понад 100 мільйонів до 2026 року. Це крива, на яку ви орієнтуєтесь, а не навантаження минулого року.

Режими синхронізації Geth для блокчейну Ethereum

Режим синхронізації – це найважливіша ручка, яку може повернути новий оператор гетів. Якщо вибрати неправильно, ви витратите тиждень на завантаження даних, які вам насправді не потрібні.

Режим Що воно зберігає Диск у 2026 році Синхронізація часу Випадок використання
Прив’язка (за замовчуванням) Нещодавній стан + нещодавні надходження ~650 ГБ, +14 ГБ/тиждень 1–3 дні (швидше на NVMe) децентралізовані додатки, гаманці, валідатори
Повний Нещодавній стан + кожен заголовок назад до початку ~1 ТБ від 3 до 5 днів Перевірка кожного блоку з моменту зародження
Архів (на основі шляху, версія 1.16+) Історичний стан через зворотні різниці від 1,9 до 2,0 ТБ 1-2 тижні Більшість випадків використання архівів
Архів (на основі застарілого хешу) Кожен історичний стан, кожен чек, кожна спроба від 12 до 20 ТБ від 4 до 8 тижнів DeFi-індексатори, яким потрібен eth_getProof

Snap – це стандартний варіант, і майже завжди правильний. Він отримує останній знімок стану від вузлів, а потім непомітно заповнює заголовки та квитанції. Ви отримуєте робочий вузол Geth за пару днів на пристойному обладнанні. Він чудово обслуговує гаманці, dApps та валідатори. Єдине, чого він не може зробити, це відповісти на історичні запитання на кшталт «який був баланс Віталіка 7 жовтня 2017 року?». Якщо вам це байдуже, то вам більше не потрібно думати про режим синхронізації.

Повна синхронізація все ще доступна. Більшості людей вона не потрібна. Повний режим повертає кожен блок до блоку genesis та повторно запускає кожну транзакцію, щоб клієнт міг перевірити блокчейн від початку до кінця, замість того, щоб довіряти знімку Snap. Корисно, якщо ви параноїдальні щодо Snap або якщо ви створюєте архів зі скороченою історією. Не корисно для звичайних операцій.

Архів — це важкий вузол, і 2025 рік — це час, коли змінилися архівні вузли. До випуску версії 1.16 архівний вузол означав від 12 до 20 ТБ швидкого SSD — по суті, невеликий сервер. У версії 1.16 було запроваджено режим архівування на основі шляхів, який зберігає історичний стан у вигляді зворотних диференцій та скорочує вимоги до дискового простору приблизно до 1,9-2,0 ТБ в основній мережі. Це наближає займаний простір Geth до розміру Erigon (~1,77 ТБ). Спочатку компромісом було те, що архівування на основі шляхів не підтримувало історичні докази Меркла (`eth_getProof` на старих блоках). Індексатори DeFi та інші робочі навантаження, що потребують великої кількості доказів, все ще потребували застарілого архівування на основі хешу. У версії 1.17.0, випущеній у лютому 2026 року, було додано підтримку доказів до режиму на основі шляхів у деяких конфігураціях — перевірте примітки до випуску, щоб дізнатися точну версію. Типовими операторами архівування є дослідники блоків, команди судово-медичної експертизи та серйозні аналітичні центри. Більшість людей, які читають цей посібник, ніколи не знадобляться.

Одна примітка. Режим Light-клієнта, старий прапорець `--syncmode "light"`, застарів і більше не підтримується в основній мережі. Якщо в посібнику 2026 року зазначено запускати Geth у легкому режимі, він застарів.

Вузол Гет

Встановлення Geth на Ubuntu, macOS та Windows

Крок встановлення короткий. Виберіть платформу, на якій ви плануєте працювати, а не ту, що на вашому ноутбуці.

Linux / Ubuntu (робоча конячка)

Більшість продакшн-нодів Geth працюють на Ubuntu. Команда Ethereum підтримує PPA, і три команди через менеджер пакетів Ubuntu дозволяють отримати робочий бінарний файл:

```

sudo add-apt-repository -y ppa:ethereum/ethereum

sudo apt-get оновлення

sudo apt-get встановити ethereum

```

Запустіть команду `geth version` для підтвердження. PPA відстежує останню стабільну версію. У продакшені ви зазвичай закріплюєте завідомо хорошу збірку за допомогою чогось на кшталт `apt-get install ethereum=1.17.2-...` та оновлюєтеся за спокійнішим графіком, ніж «коли apt забажає».

macOS (зручний для розробників)

На macOS Homebrew виконує всю роботу. Два рядки:

```

заварний кран ethereum/ethereum

заваріть, встановіть ethereum

```

Комп'ютери Mac чудово підходять для експериментів з тестовою мережею та розробки децентралізованих додатків (dApp). Однак майже ніхто не запускає валідатор основної мережі на Mac. Керування живленням занадто агресивне, і macOS із задоволенням переведе ваш вузол маяка в режим сну в невідповідний момент.

Вікна

На сайті geth.ethereum.org та на сторінці релізів проєкту на GitHub є інсталятори `.exe` та `.zip`. Клацніть інсталятор, дозвольте йому відредагувати ваш PATH, потім відкрийте командний рядок або PowerShell та запустіть `geth version`. Він має дати відповідь.

Windows Server може чудово розмістити автономний вузол Geth. Стеки валідаторів, як правило, орієнтовані на Linux, оскільки клієнти консенсусу постачаються в першу чергу з Linux, але ви можете комбінувати їх, якщо хочете. Решта цього посібника написана в стилі оболонки Linux. Перетворення на PowerShell здебільшого залежить від роздільників шляхів та іншого способу продовження рядків.

Докер

Команда `docker pull ethereum/client-go:stable` забезпечить вам чистий контейнер. Docker — це, безумовно, найпростіший спосіб протестувати новий реліз Geth, не завдаючи шкоди вашому хосту. Це також гідне розгортання у продакшені, якщо ваша команда вже використовує контейнери. Одне застереження: том Docker, що містить `chaindata`, має бути на NVMe. Розміщення його на звичайному тому EBS, сховищі даних HDD або тому Docker Desktop на Mac призведе до відтворення кожної теми "завислої синхронізації" на Reddit.

Будуємо з джерела

Для збірок з вихідним кодом потрібна Go 1.23 або новіша версія, а також компілятор C. `make geth` збирає лише вузол. `make all` надає вам повний набір утиліт: geth, clef, abigen, evm, devp2p, rlpdump. Звертайтеся до збірок з вихідним кодом, коли вам потрібен реліз, який ще не упакований, або коли у вас є приватний патч, який ви не хочете підтримувати як форк.

Запуск Geth: Перша синхронізація та консоль JSON-RPC

Бінарний файл встановлено, секрет JWT згенеровано, клієнт консенсусу готовий. Перша команда на сервері основної мережі виглядає приблизно так:

```

гет

--основна мережа \

--каталог_даних /вар/бібліотека/geth \

--синхронний режим оснащення \

--http \

--http.addr 127.0.0.1 \

--http.порт 8545 \

--http.api eth,net,web3 \

--authrpc.адреса 127.0.0.1 \

--authrpc.порт 8551 \

--authrpc.jwtsecret /etc/geth/jwt.hex \

--authrpc.vhosts локальний хост

```

Тут працюють три порти. 30303 через TCP та UDP — це ваша лінія peer-to-peer з’єднання з рештою Ethereum. 8545, HTTP-RPC-порт, через який проходить ваш гаманець та скрипти. 8551, Engine API, доступний лише вашому консенсусному клієнту та захищений секретом JWT.

Щоб підключитися до запущеного вузла, підключіть консоль Geth. (Це консоль JavaScript, прикріплена до API вузла.) Відкрийте другу оболонку:

```

прикріпити http://127.0.0.1:8545

```

Тепер кожен метод JSON-RPC є викликом JavaScript. `eth.blockNumber`. `net.peerCount` (близько тридцяти — це нормально в основній мережі). `eth.syncing` повертає `false`, як тільки вузол наздожене. Потрібен баланс? `web3.fromWei(eth.getBalance('0x...'), 'ether')`. Це вся інтерактивна поверхня.

Потім є файл журналу. Слідкуйте за ним. Рядок, який ви хочете побачити, це «Імпортовано новий сегмент ланцюга». Це означає, що Geth спіймав хід і не відстає, поглинаючи кожен новий список транзакцій з мережі блокчейну Ethereum, коли мережа їх відправляє. Якщо у ваших журналах зазначено «Пошук пірів» і нічого більше, брандмауер скидає вхідні P2P-повідомлення. Відкрийте 30303 на TCP та UDP, перезапустіть Geth, спробуйте ще раз. Це виправлення у дев'яти випадках з десяти.

Для автоматизації, кожна бібліотека Ethereum, яку варто використовувати, передає JSON-RPC через HTTP або через WebSocket, якщо ви також передаєте `--ws`. ethers.js. web3.js. viem. Клієнт Go. Клієнт Python. Всі вони обробляють ваш локальний вузол Geth точно так само, як Infura — вкажіть їм `http://127.0.0.1:8545` і зупиніться. Код залишається тим самим. Єдине, що змінилося, це хто відповідає на виклик.

Використання Geth: Рахунки, Ключ та Транзакції

Geth все ще постачає менеджер облікових записів, але сучасна рекомендація полягає в тому, щоб відокремити підписання від вузла, запустивши Clef. Clef — це крихітна окрема програма, яка зберігає ваші ключі та запитує явне підтвердження щоразу, коли щось намагається їх використовувати.

Створення облікового запису через Clef виглядає так:

```

clef newaccount --keystore /var/lib/geth/keystore

```

Clef вимагає пароль щонайменше з десяти символів. Він записує зашифрований файл сховища ключів і повертає вам адресу. Ця адреса є обліковим записом зовнішнього володіння (EOA) — той самий тип, що й апаратний гаманець або MetaMask. Нічого екзотичного.

Щоб Geth використовував Clef, вкажіть вузол на IPC-сокет Clef: `--signer=/path/to/clef.ipc`. З цього моменту кожен запит на транзакцію, незалежно від того, чи надходить він з консолі Geth, чи з dApp, що використовує JSON-RPC API, має бути схвалений на терміналі Clef. Саме таку модель команда Geth рекомендує у 2026 році. Ключі знаходяться поза вузлом. Вузол сам по собі не може витратити жодного wei.

Передача з консолі виглядає так:

```

eth.sendTransaction({

from: '0xca57f3b40b42fcce3c37b8d18adbca5260ca72ec',

to: '0xce8dba5e4157c2b284d8853afeeea259344c1653',

value: web3.toWei(0.1, 'ether')

});

```

З'являється Clef. Ви підтверджуєте. Транзакція потрапляє в мемпул, і через кілька секунд вона опиняється в блоці. За цим єдиним рядком Geth виконав пошук nonce, оцінку комісії, передачу підпису Clef, трансляцію та перевірку включення. Той самий цикл виконується в кожному dApp.

Для більш складної роботи та сама кінцева точка JSON-RPC приймає надсилання транзакцій, підписки на події, виклики функцій перегляду та трасування. З точки зору бібліотеки, ваш локальний екземпляр Geth нічим не відрізняється від розміщеного вузла — за винятком того, що він швидший, безкоштовний за виклик і ваш.

Налаштування валідатора: стейкінг ефіру та отримання винагород

Після того, як ваш вузол Geth синхронізовано та сполучено з консенсусним клієнтом, додавання валідатора здебільшого є налаштуванням. Ви не встановлюєте новий вузол. Рівень виконання (Geth) продовжує виконувати свою роботу. Консенсусний клієнт бере на себе роль валідатора зверху: він підписує атестації кожної епохи, і коли протокол вибирає ваш валідатор, він просить Geth зібрати вміст блоку.

Існує три рухомі частини для запуску. По-перше, це депозит у розмірі 32 ефірів. Ви генеруєте ключі валідатора за допомогою офіційного інтерфейсу командного рядка депозиту, надсилаєте транзакцію депозиту до контракту в основній мережі та очікуєте активації. По-друге, це процес клієнта валідатора. Він працює разом із вузлом маяка, зберігає ваш ключ підпису та підписує атестації за розкладом. По-третє, це MEV-Boost або налаштування реле, якщо ви хочете отримувати винагороди за замовлення транзакцій понад базову винагороду. Сам Geth не запускає валідатор. Це робить консенсусний клієнт. Geth – це кінцева точка виконання, яка створює фактичне корисне навантаження блоку, коли з'являється слот вашого валідатора.

Щодня валідатори звертають увагу на три показники: пропущені атестації, час безвідмовної синхронізації та навантаження на диск. Пропущені атестації майже завжди пов'язані з вузлом, який відстав від головного, що, у свою чергу, майже завжди пов'язано з втратою дискового вводу/виводу або втратою вузла. Навантаження на диск на Geth є класичним винуватцем. Якщо значення специфікації NVMe нижче рекомендованої, ефективність вашої атестації падає. Разом з цим падають і винагороди.

Більшість домашніх стейкерів використовують спеціалізований міні-ПК: Intel NUC, Beelink або кастомну збірку Ryzen. Вартість обладнання коливається від 800 до 2000 доларів США одноразово. Електроенергія та інтернет додають ще від 10 до 20 доларів США на місяць. Згідно з даними Coin Bureau за 2026 рік, професійний валідатор Hetzner коштує від 30 до 40 доларів США на місяць, базовий повний вузол AWS – менше 100 доларів США, а архівний вузол AWS – близько 1500 доларів США. Соло-стейкінг дає близько 4% річних від базової винагороди та зростає до 5–6% з MEV-Boost; на домашньому обладнанні ця дохідність виходить на межу приблизно за 4–6 місяців за сьогоднішньою ціною ефіру. Станом на кінець 2025 року мережа мала близько 1,06 мільйона активних валідаторів, які тримали від 35 до 37 мільйонів ETH (від 29 до 31% пропозиції). Тільки Lido контролює 27,7% від загальної кількості застейканих коштів. Coinbase – 8,4%. Кожен додатковий незалежний валідатор непомітно схиляє цю концентрацію в інший бік, що значною мірою пояснює, чому люди досі займаються сольним стейкінгом.

Тестова мережа проти основної мережі: де запускати вузол Ethereum

Не починайте в основній мережі. Помилки в тестовій мережі недорогі, і вони не бувають дешевшими, ніж безкоштовні. Geth обробляє кожну підтримувану мережу за допомогою одного прапорця.

Дві тестові мережі Ethereum, які повинні вас зацікавити у 2026 році, це Holesky, довготривала тестова мережа, орієнтована на валідатори, та Sepolia, легша, орієнтована на додатки. Хочете вузол Sepolia Geth? Замініть `--mainnet` на `--sepolia`. Holesky? `--holesky`. Ваш каталог даних повинен бути окремим шляхом від вашої основної мережі `chaindata`. Якщо ви повторно використовуєте ту саму папку, Geth відмовляється запускатися, оскільки ідентифікатор ланцюга не збігається — це той тип повідомлення про помилку, на виправлення якого потрібно тридцять секунд, а на пошук — година.

Етеріал у тестовій мережі безкоштовний. Такі крани, як Paradigm Multifaucet та Sepolia за адресою faucet.sepolia.dev, видають достатньо Sepolia ETH для розгортання контрактів, проведення інтеграційних тестів та надсилання кількох тисяч транзакцій. «Етеріал» — підробка. Все інше справжнє: EVM поводиться так само, JSON-RPC API той самий, зв'язок з вашим консенсусним клієнтом той самий, операційні труднощі ті ж. Запустіть свій стек на Sepolia протягом тижня, перш ніж спрямовувати щось на основну мережу.

Старі тестові мережі зникли. Ropsten, Rinkeby, Kovan, Goerli — усі вони виведені з експлуатації. Якщо в посібнику все ще написано, що потрібно запускати Geth з `--ropsten`, це означає, що це перед злиттям, і вам слід закрити вкладку.

Для справді приватного середовища запускайте власну мережу. Режим `--dev` Geth завантажує ланцюжок з одного вузла за лічені секунди, що чудово підходить для модульних тестів. Для приватних мереж з кількома машинами напишіть власний `genesis.json`, поділіться ним між полями та запускайте кожен процес Geth з `--datadir`, що вказує на нову папку chaindata. Фреймворк Kurtosis упаковує все це в одну команду, якщо ви не бажаєте робити підключення вручну.

Поширені проблеми з вузлом Geth та їх усунення

Більшість інцидентів з ґетами підпадають під певний набір шаблонів. Виправлення зазвичай відбувається швидко, як тільки ви розпізнаєте форму.

Синхронізація зупинилася на кількох відсотках. Ваш вузол Geth онлайн, але не наздоганяє: кількість вузлів занадто низька, ваша пропускна здатність перенасичена або диск не може встигати за оновленнями. Перевірте `net.peerCount` у консолі. Якщо воно менше п'ятнадцяти, ваш вхідний порт P2P захищено брандмауером. Відкрийте 30303 TCP та UDP. Якщо він справний, запустіть `iostat -xm 5` на Linux під час синхронізації; якщо SSD завантажено на 100%, у вас обмежені можливості вводу/виводу та потрібне швидше сховище. Примітка щодо версії: Geth версії 1.17.1 (3 березня 2026 р.) було випущено спеціально для виправлення регресії snap-sync у версії 1.17.0; якщо ви застрягли на цій версії, оновлення є виправленням.

«Мережа після злиття, але клієнта beacon не видно». Консенсусний клієнт не працює, секрет JWT не збігається або консенсусний клієнт вказує на неправильний порт AuthRPC. Перевірте шлях JWT, порт 8551, і чи обидва процеси було запущено з одним і тим самим файлом секретного коду.

Диск заповнюється за ніч. Синхронізація Snap може різко збільшити використання диска під час початкової фази відновлення стану. Обрізка виконується автоматично після цього. Якщо ви починали з SSD-накопичувача на 1 ТБ, головка врешті-решт вас підловить. Виправлення завжди полягає в більшому просторі, а не в більш агресивному обрізанні, оскільки обрізання Geth вже налаштоване. Перемістіть chaindata на більший NVMe та виконайте rsync.

Geth не запускається: «база даних, сумісна з цією версією geth, не знайдена». Попередній запуск здійснювався з іншим ідентифікатором ланцюга, старішою версією Geth або пошкодженим станом. Папка `chaindata` не відповідає папці. Або повторно синхронізуйте з новим каталогом даних, або поверніться до попередньої версії Geth.

Валідатору бракує атестацій. Якщо ваш вузол Geth правильно зчитує кожен новий блок, але валідатор все ще пропускає атестації, спочатку зверніть увагу на навантаження на диск, потім на мережу, а потім на процесор. Закономірність у інструментах моніторингу, таких як Netdata, безпомилкова: PSI (інформація про зупинку навантаження) для диска досягає 30% або більше під час вікон атестацій.

RPC-запити повільні. Важкий dApp-клієнт, який завантажує `eth_getLogs` або `debug_traceTransaction`, може перевантажити процесор Geth. Перемістіть цей трафік на окремий вузол або використовуйте `--rpc.gascap` та `--rpc.txfeecap` для обмеження дорогих викликів.

І остання звичка. Протягом першого тижня безперервно переглядайте журнали, щоб Geth працював безперебійно під реальним навантаженням. Такі інструменти, як Netdata, Prometheus + Grafana або просто `journalctl -fu geth`, роблять ранні режими збоїв очевидними. До другого тижня достатньо буде сповіщень про пропущені атестації та швидкість заповнення диска.

Geth проти інших клієнтів Ethereum: компроміси

Geth — це перший крок за замовчуванням. Він не єдиний, і відповідь на питання «чи варто мені перемикатися» залежить від ваших потреб.

Клієнт Мова Частка 2026 (clientdiversity.org / Stake.fish range) Сильні сторони Використовуйте, якщо...
Гет Іти від 41 до 50% Стабільність, велика спільнота, офіційні дефолти Ви хочете найбезпечніший перший вузол
Незермінд C# від 25 до 38% Швидка синхронізація, зручний для плагінів, Hyperledger Вам потрібен клієнт виконання, який не підтримує Go
Бесу Ява від 10 до 16% Функції для підприємств, ланцюжки з дозволом, Hyperledger Ви керуєте дозволеним ланцюгом
Рет Іржа від 2 до 8% Модульна, сучасна кодова база, швидка синхронізація Ви хочете провідного клієнта Rust
Ерігон Іржа/Вперед від 3 до 7% Компактний архів (~1,77 ТБ), швидкі історичні запити Вам потрібен невеликий архівний вузол

Аргументом спільноти на користь вибору чогось іншого, ніж Geth, є різноманітність клієнтів. Якщо один клієнт виконання перевищить дві третини супербільшості в основній мережі та випустить оновлення з помилками, валідатори на цьому клієнті ризикують втратити ресурс. Розподіл вашого парку валідаторів між двома клієнтами зменшує цей ризик вдвічі. Для одного стейкера математика більш нудна: виберіть той, який ви можете зберегти живим, запустіть його добре та перемикайтеся лише за наявності конкретної причини. Архітектура вузлів схожа на всіх них, тому заміна пізніше простіше, ніж здається. Зокрема, Erigon та Reth зараз достатньо зрілі, щоб бути основними клієнтами, а не дивностями.

Які-небудь питання?

Ні. Майнінг Ethereum був припинений під час злиття у вересні 2022 року, шляхом переходу від Proof-of-Work до Proof-of-Stake. Modern Geth запускає лише EVM та передає виробництво блоків вашому консенсусному клієнту та валідатору. Будь-який посібник, що згадує `miner.start()`, є до злиття та не працює.

Мінімум 2026 року, який дійсно працює: 4-ядерний процесор, 16 ГБ оперативної пам`яті, твердотільний накопичувач NVMe на 2 ТБ та необмежена лінія 25 Мбіт/с. Нижче цього значення вузол зависає під час синхронізації або пропускає атестації валідатора. Архівним вузлам потрібно приблизно у вісім разів більше сховища та оперативної пам`яті.

Запуск вузла сам по собі не приносить ефіру. Натомість він відкриває три шляхи отримання доходу: стейкінг 32 ETH як валідатора (~4–6% APRC), пошук MEV та перепродаж RPC-доступу. Для домашніх операторів фактичною винагородою зазвичай є конфіденційність та швидкість dApp, а не дохід.

Так — в основній мережі та кожній активній тестовій мережі. Geth запускав лише рівень виконання з моменту злиття. Консенсусний клієнт (Lighthouse, Prysm, Teku, Nimbus або Lodestar) охоплює Proof-of-Stake. Вони обговорюють це через Engine API на порту 8551, захищеному спільним JWT-секретом.

Синхронізація знімків на NVMe зі справними вузлами: від одного до трьох днів в основній мережі. Повільні диски розтягують цей період до тижня. Синхронізація архіву триває від чотирьох до восьми тижнів, оскільки вона відновлює кожен історичний стан. Попередньо синхронізовані сервіси надають вам знімок за дві-чотири години.

Машина, на якій працює go-ethereum, підключена до однорангової мережі Ethereum. Вона витягує блоки, перевіряє кожну транзакцію на EVM та зберігає синхронізовану копію стану ланцюга на диску. Для мережі це ще один незалежний свідок реєстру.

Ready to Get Started?

Create an account and start accepting payments – no contracts or KYC required. Or, contact us to design a custom package for your business.

Make first step

Always know what you pay

Integrated per-transaction pricing with no hidden fees

Start your integration

Set up Plisio swiftly in just 10 minutes.