RPC — что это простыми словами | IceAI

RPC

RPC — как кошелёк читает баланс и отправляет транзакции. Что такое JSON-RPC, чем публичный сервер хуже своего узла и что значит ошибка 429.

Обновлено: 2026-10-29

Я как-то полчаса искала пропавшие USDT: в MetaMask баланс ноль, а в Etherscan монеты лежат на месте. Кошелёк ничего не потерял — он просто спрашивал не тот сервер. Сам блокчейн кошелёк не хранит: он отправляет запрос RPC-узлу, и уже тот отвечает, сколько лежит на адресе и прошла ли транзакция.

RPC Кошелёк хранит ключи подписывает перевод 1 RPC-сервер принимает JSON отдаёт ответ 2 Блокчейн балансы и блоки смарт-контракты Пока RPC не ответил, кошелёк показывает старый баланс

Что такое RPC

RPC расшифровывается как remote procedure call, удалённый вызов процедур. В крипте так называют способ, которым программа обращается к узлу сети: «дай баланс адреса», «прими вот эту подписанную транзакцию». Запросы идут по HTTP в формате JSON-RPC — метод плюс параметры, ответ тоже в JSON. Через RPC работают кошельки, биржи и dApp.

Какие запросы идут через RPC

Список методов короткий, и почти всё сводится к пяти:

  • eth_getBalance — сколько нативного токена на адресе;
  • eth_call — чтение смарт-контракта, например сколько USDT на адресе;
  • eth_sendRawTransaction — отправка уже подписанной транзакции;
  • eth_getTransactionReceipt — статус: прошла или упала;
  • eth_blockNumber — номер последнего блока, по нему видно, насколько узел отстал.

Ключи остаются в кошельке: узел получает готовую подпись, но не seed-фразу, поэтому смена RPC не требует заново вводить сид.

Публичный и приватный RPC

Публичный RPC бесплатный, его держат провайдеры вроде Infura и Alchemy. Минусы: лимит запросов в секунду, задержка при нагрузке, логирование IP и адресов. Платный тариф снимает лимиты, но это всё равно чужой сервер. Свой узел даёт полный контроль, только под Ethereum нужно от 1 ТБ диска и постоянная синхронизация.

Приватный RPC для отправки не показывает перевод общему мемпулу: боты не успевают вставить сделку перед твоей. Это защита от MEV и сэндвич-атак.

Когда RPC барахлит

429 Too Many Requests — упёрся в лимит запросов, кошелёк показывает «нет соединения» или крутит вечный лоадер. -32000 и header not found — узел отстал от сети. nonce too low — транзакция с этим номером уже прошла, обычно из-за второго устройства с тем же кошельком. Бытовой симптом: перевод виден в эксплорере, а баланс в кошельке обновился через минуту. Лечится сменой эндпоинта, не переустановкой кошелька.

Как сменить RPC

  1. Открыть настройки сети в кошельке: в MetaMask — Settings → Networks → нужная сеть → Edit.
  2. Вставить новый адрес в поле New RPC URL. Chain ID не трогать: с другим ID кошелёк уедет в чужую сеть.
  3. Сохранить, обновить страницу dApp и проверить баланс.
  4. Если стало хуже — вернуть прежний адрес.

Список эндпоинтов есть на chainlist.org, но первый попавшийся я бы не советовала брать: смотри на провайдера и поддержку сети.

Коротко

  • RPC — канал связи кошелька с узлом сети, без него баланс не обновится.
  • Приватные ключи на сервер не уходят, но IP и адреса видит провайдер.
  • Публичный RPC бесплатный и с лимитами, свой узел дорогой и тяжёлый.
  • Ошибка 429 — это лимит запросов, помогает смена эндпоинта.
  • Перед сменой сети сверяй Chain ID, иначе увидишь пустой кошелёк.

Остались вопросы? Спросите ИИ-ассистента — объяснит другими словами.

Спросить