Как исправить внутреннюю ошибку JSON-RPC в MetaMask

Последнее обновление
2 июля 2026 года
Эта дата означает полный аудит, а не небольшую правку. Перед повторной публикацией наша редакция проверяет каждое утверждение, цифру и сведения о платформах в соответствии с нашими редакционными принципами.
Факты проверены
Проверено редакцией
Редакционный процесс проверки фактов

Эта статья проверена нашей редакцией на точность. Все утверждения, данные и сведения о платформах сверены с первоисточниками.

Точность данных проверена
Источники сверены
Сведения о платформах подтверждены
Посмотреть наш процесс проверки фактов
Отказ от ответственности
Раскрытие партнёрских ссылок
Как финансируется Datawallet

Некоторые ссылки на этой странице являются партнёрскими. Datawallet может получать комиссию, если вы регистрируетесь по ним, при этом для вас это не влечёт дополнительных расходов. Оценки и рейтинги отражают наши собственные тесты и критерии оценки.

Читать полное раскрытие

Кратко: MetaMask выдаёт ошибку Internal JSON-RPC, когда запрос к узлу блокчейна не выполняется, обычно из-за неисправной точки RPC, неверных данных сети, нулевого баланса для газа, устаревшего ПО кошелька или аппаратного кошелька, который неправильно взаимодействует с расширением.

В большинстве случаев проблема решается после замены URL RPC, проверки Chain ID, пополнения баланса нативных токенов для оплаты газа, обновления MetaMask до актуальной мультичейн-версии и повторного подключения устройства Ledger или Trezor правильным способом.

Что такое внутренняя ошибка JSON-RPC в MetaMask?

Ошибка Internal JSON-RPC error означает, что MetaMask отправил запрос узлу блокчейна и получил сбой вместо пригодного ответа. Внутри она соответствует коду ошибки -32603 в справочнике MetaMask по JSON-RPC, универсальному коду, который протокол резервирует для неверных или недопустимых данных.

Поскольку MetaMask использует JSON-RPC для всех операций, это сообщение может прервать проверку баланса, обмен токенов, вызовы контрактов и даже переключение сети. Чаще всего оно появляется в Эфириум, сетях уровня 2, таких как Base и Arbitrum, и в тестовой сети Sepolia, где отдельные конечные точки без предупреждения перестают работать.

С тех пор как MetaMask стал мультичейн-кошельком, охватывающим Эфириум, Solana, биткоин и TRON, эта ошибка стала появляться и при не-EVM-запросах, которых старые сборки только для Эфириума никогда не делали. Приведённые ниже решения охватывают как классические причины, так и новые, появившиеся из-за этого редизайна.

01-what-is-internal-json-rpc-error

Как исправить внутреннюю ошибку JSON-RPC

В большинстве случаев причина в одной неверной настройке, а не в более серьёзной проблеме с кошельком, поэтому последовательная проверка по пунктам ниже быстро устраняет ошибку.

Выполняйте эти семь исправлений по порядку, пока ошибка не исчезнет:

  1. Настройки сети: откройте меню сетей, отредактируйте проблемную сеть и сверьте её RPC URL и Chain ID с официальной документацией или добавьте её заново автоматически через ChainList.
  2. Баланс для оплаты газа: перед повторной попыткой пополните кошелёк достаточным количеством нативного токена сети, например ETH, BNB или POL, и сначала проверьте актуальные комиссии с помощью нашего трекера газа Эфириум.
  3. Обновление кошелька: установите последнюю версию расширения или мобильного приложения, поскольку мультичейн-архитектура аккаунтов MetaMask появилась в версиях Extension 13.5 и Mobile 7.57, а более старые сборки неправильно считывают новые ответы.
  4. RPC-endpoint: замените медленный или неработающий endpoint альтернативным из ChainList или от специализированного провайдера, например Infura или Alchemy, и повторите неудавшуюся транзакцию.
  5. Аппаратные кошельки: обновите прошивку Ledger или Trezor, включите данные смарт-контрактов в приложении Эфириум на устройстве и подключитесь тем способом, который сейчас рекомендует руководство Ledger по устранению неполадок.
  6. Сброс аккаунта: используйте пункт «Очистить данные вкладки активности» в расширенных настройках, чтобы удалить кэшированную историю транзакций и зависшие nonce. Это заставит MetaMask заново корректно синхронизироваться с узлом.
  7. Проверка тестовой сети: убедитесь, что нужная вам тестовая сеть ещё существует, поскольку Holesky была закрыта после обновления Fusaka, и её старые конечные точки теперь отклоняют все запросы.

Если ни один шаг не помог, Центр помощи MetaMask предлагает более глубокую диагностику, включая журналы состояния, которые может напрямую проверить служба поддержки. Постоянные сбои в одном dApp обычно означают, что проблема в вызовах контракта этого приложения, а не в вашем кошельке, поэтому попробуйте другой сайт, прежде чем обращаться выше.

Как исправить внутреннюю ошибку JSON-RPC

Как правильно добавить RPC с помощью ChainList

Вручную введённые данные RPC остаются самой частой причиной этой ошибки, поскольку один неверный символ в URL или Chain ID нарушает все последующие запросы кошелька. ChainList устраняет этот риск, поддерживая проверенные конечные точки для сотен сетей и добавляя их в MetaMask одним щелчком.

Мы используем тот же порядок в нашем руководстве по добавлению HyperEVM в MetaMask, поэтому описанные ниже шаги подходят почти для любой сети EVM, от крупных сетей Layer 2 до новых основных сетей. Четыре шага приведут вас от пустого списка сетей к проверенному подключению.

Как правильно добавить RPC с помощью ChainList

1. Подключите MetaMask к ChainList

ChainList получает параметры сетей из реестра, который ведёт сообщество, поэтому после подключения кошелька он может записать эти проверенные данные прямо в MetaMask без ручного копирования.

Вот как подключить кошелёк к сайту:

  1. Откройте ChainList: перейдите на chainlist.org и внимательно проверьте написание адреса перед подключением: в обращении были клоны сайта с предустановленными вредоносными RPC-узлами.
  2. Подключите кошелёк: нажмите кнопку Connect Wallet в правом верхнем углу, выберите MetaMask из списка и подтвердите запрос на подключение во всплывающем окне расширения.
  3. Проверьте разрешения: сайту нужен только доступ для просмотра, чтобы передать данные сети, поэтому отклоняйте любые запросы на подписи, одобрение токенов или разрешения на расходование средств.
Подключение MetaMask к ChainList

2. Найдите правильную сеть

Большинство сетей выпускают несколько версий, и если перепутать основную сеть с её тестовой сетью, через несколько минут появятся неудачные транзакции, невидимые балансы и новые ошибки JSON-RPC.

Выполните эти проверки, чтобы найти нужную запись:

  1. Ищите точно: вводите точное название сети, будь то Base, Linea или более новая сеть вроде Monad, и включайте переключатель тестовых сетей, только когда он вам нужен.
  2. Проверяйте идентификаторы: сверяйте указанный Chain ID с официальной документацией проекта, поскольку мошеннические сети иногда используют знакомые названия, а по сути указывают на совсем другие блокчейны.
  3. Учитывайте тестовые сети: для тестирования Эфириум используйте Sepolia для dApps и Hoodi для работы валидатора, поскольку Ethereum Foundation закрыла Holesky, и его листинги больше не работают.
Найдите нужную сеть

3. Добавьте RPC в MetaMask

Как только появляется нужная сеть, ChainList передаёт в MetaMask полную конфигурацию одним запросом, что исключает опечатки, неизбежные при ручном вводе.

Завершите передачу с помощью этих трёх быстрых действий:

  1. Добавьте сеть: нажмите Add to MetaMask рядом с записью с лучшей оценкой задержки, поскольку ChainList ранжирует каждую публичную конечную точку по измеренной в реальном времени скорости и надёжности.
  2. Проверьте всплывающее окно: прочитайте окно MetaMask с RPC URL, Chain ID, символом валюты и обозревателем блоков и сверьте каждое значение, прежде чем дать окончательное подтверждение.
  3. Переключитесь: подтвердите добавление и при запросе выберите Switch Network — новая сеть сразу станет активной и будет готова к небольшой тестовой транзакции.
Добавьте RPC в MetaMask

4. Проверьте настройки после этого

Даже проверенные записи со временем устаревают, поскольку провайдеры отключают эндпоинты, поэтому быстрая проверка в MetaMask подтвердит, что всё добавлено правильно и по-прежнему работает.

Выполните эту итоговую проверку, прежде чем переводить реальные средства:

  1. Откройте настройки: перейдите к выбору сети, выберите недавно добавленную цепочку и нажмите «Изменить», чтобы увидеть все сохранённые параметры, которые MetaMask будет использовать для запросов.
  2. Перекрёстная проверка: сравните RPC URL, Chain ID и символ валюты с собственной документацией сети, а не со сторонним блогом, скриншотом или неофициальным сообщением в Discord.
  3. Меняйте конечные точки: если запросы выполняются медленно или время от времени завершаются ошибкой, замените URL другим вариантом из ChainList, так как MetaMask теперь поддерживает несколько сохранённых RPC URL для каждой сети.
Проверьте настройки после этого

Почему возникает ошибка JSON-RPC?

Сбои JSON-RPC сводятся к одному: узел либо не получил корректный запрос, либо не смог вернуть корректный ответ. В документации MetaMask для разработчиков перечислено 17 различных кодов ошибок JSON-RPC, и внутренние ошибки соседствуют в этой таблице с ограничениями частоты запросов, ошибками разбора и отклонёнными транзакциями.

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

Это самые частые причины сбоев запросов JSON-RPC:

  • Некорректные запросы: dApp формирует вызов контракта с неверными входными данными или параметрами, поэтому узел отклоняет данные ещё до выполнения.
  • Лимиты запросов: бесплатные публичные конечные точки и тарифы Infura на основе кредитов ограничивают число запросов, а в периоды высокой нагрузки, например при запуске токенов, кошельки упираются в эти лимиты в течение нескольких секунд.
  • Устаревшие узлы: несинхронизированный узел отдаёт устаревшее состояние сети, из-за чего возникают неверные балансы, зависшие транзакции и котировки обмена, которые не срабатывают в момент попытки MetaMask их выполнить.
  • Откат контракта: смарт-контракт исчерпывает газ или откатывается в ходе выполнения, и MetaMask показывает это как сбой RPC при бриджинге, стейкинге или получении аирдропа токенов.
  • Несовпадение сетей: некоторые конечные точки не поддерживают методы, нужные сетям Layer 2, поэтому обмены или развёртывания в этих сетях завершаются ошибкой, даже если Chain ID указан верно.
  • Закрытые тестовые сети: запросы к выведенным из эксплуатации тестовым сетям, таким как Holesky или более старая Goerli, мгновенно завершаются ошибкой, поскольку на этих устаревших конечных точках больше нет активных узлов.
  • Пакетные вызовы: функции смарт-аккаунтов EIP-7702 объединяют несколько действий в одну транзакцию, и один откатившийся шаг внутри пакета может привести к отказу всего пакетного запроса.

Одни из этих факторов находятся под вашим контролем, другие нет. Выбор конечной точки, баланс газа и версии программного обеспечения исправляются за минуты, а сбои провайдеров и перегрузка сети требуют просто подождать или временно переключиться на другой RPC, пока ситуация не наладится.

Почему возникает ошибка JSON-RPC

Как недавние обновления MetaMask изменили диагностику проблем с RPC

MetaMask сильно отличается от кошелька, с которым эта ошибка впервые возникла. В период 2025–2026 годов он добавил поддержку Solana, биткоина, TRON, Sei и Monad, перестроил систему аккаунтов и внедрил обновления смарт-аккаунтов, что изменило то, где и как проявляются сбои RPC.

Мультичейн-аккаунты объединяют все сети в одну

Начиная с версии расширения 13.5, каждый аккаунт MetaMask объединяет под одним именем один адрес EVM, один адрес Solana и один адрес биткоин, а кошелёк автоматически маршрутизирует запросы. Сбой в одной сети больше не означает, что весь кошелёк неисправен, поэтому всегда проверяйте вторую сеть, прежде чем предполагать повреждение.

Сети, не совместимые с EVM, используют собственную инфраструктуру узлов, поэтому сбой в Solana проявляется иначе, чем сбой в Эфириуме, даже в одном и том же интерфейсе. Если ошибки возникают только в одной экосистеме, вероятной причиной являются проблемы с конечной точкой в этой конкретной сети, а не неполадки в вашей установке.

Как недавние обновления MetaMask изменили диагностику проблем с RPC

Смарт-аккаунты добавляют новую поверхность для сбоев

Обновление Pectra сети Эфириум активировало EIP-7702 в мае 2025 года, позволив обычным аккаунтам MetaMask временно вести себя как смарт-контракты для пакетных транзакций и спонсирования газа. Эти объединённые операции проходят через дополнительную инфраструктуру, и при сбое бандлера или пеймастера кошелёк часто сообщает об этом как об общей внутренней ошибке.

Если ошибка появляется только тогда, когда dApp запрашивает пакетное действие или обновление аккаунта, отклоните запрос смарт-аккаунта и повторите операцию как обычную транзакцию. Так станет понятно, в чём проблема: в процессе делегирования или в самом RPC-подключении, которое вы диагностировали бы обычным образом.

Перестройка тестовых сетей Эфириум сломала старые конфигурации

Ethereum Foundation вывел Holesky из эксплуатации после завершения обновления Fusaka, заменив её сетью Hoodi для тестирования валидаторов и рекомендовав Sepolia для работы со смарт-контрактами. Любая конфигурация Holesky, всё ещё сохранённая в MetaMask, теперь выдаёт ошибки JSON-RPC на каждый запрос, и никакие настройки её не оживят.

Разработчикам следует полностью удалить устаревшие записи тестовых сетей и добавить актуальные через ChainList. Sepolia остаётся выбором по умолчанию для тестирования dApp, но преемник Sepolia уже планируется, поэтому такой цикл отключения тестовых сетей будет раз в несколько лет вызывать «призрачные» ошибки RPC.

Как прочитать код ошибки, стоящий за сообщением

MetaMask часто прячет числовой код в деталях ошибки, но если их развернуть, станет ясно, к какой категории относится сбой. Сверка кода со справочной таблицей MetaMask превращает расплывчатое сообщение в конкретный диагноз и обычно сразу указывает на нужное решение.

Небольшое число кодов объясняет почти все сбои, о которых сообщают пользователи, поэтому умение узнавать их с первого взгляда ускоряет устранение неполадок гораздо сильнее, чем каждый раз гадать вслепую.

Вот коды, которые стоит запомнить, и их значения:

  • Код -32603: классическая внутренняя ошибка, вызываемая неверными или недопустимыми данными запроса; именно этот код стоит за большинством появлений данного сообщения об ошибке MetaMask.
  • Код -32000: недопустимый ввод, обычно отсутствуют параметры или блок, который узел ещё не обработал; часто проблема исчезает после переключения на более надёжную конечную точку RPC.
  • Код -32005: превышен лимит, то есть ваши запросы превысили ограничение провайдера, поэтому снизьте частоту, подождите минуту или перейдите на менее загруженную публичную конечную точку.
  • Код -32602: недопустимый аргумент, обычно ошибка форматирования, например отсутствие префикса 0x, что указывает на код dApp, а не на ваш кошелёк или настройки сети.
  • Код -32601: метод не найден, то есть конечная точка не поддерживает то, что запросил MetaMask. Это частая проблема минимальных публичных RPC-точек, обслуживающих более новые сети.
  • Код 429: ошибка пропускной способности HTTP, а не JSON-RPC; она показывает, что вас ограничил сам провайдер. Это легко решается переходом на более высокий тариф или ротацией конечных точек.
Как прочитать код ошибки, стоящий за сообщением

Как избежать проблем с RPC в MetaMask

Профилактика в основном сводится к гигиене конечных точек. Добавляйте сети через ChainList или официальную документацию, а не по случайным руководствам, сохраняйте резервный URL RPC для каждой сети, которой вы регулярно пользуетесь, и подумайте о бесплатном личном ключе от провайдера вроде Infura или Alchemy, чтобы больше не конкурировать за общую публичную мощность.

Не менее важно регулярное обслуживание. Обновляйте расширение и мобильное приложение, очищайте данные об активности после неудачных транзакций, а не позволяйте устаревшим ошибкам накапливаться, и удаляйте сети, которыми вы больше не пользуетесь: каждая лишняя запись — это будущая ошибка, ожидающая случайного нажатия.

Как избежать проблем с RPC в MetaMask

Выводы

Ошибка Internal JSON-RPC выглядит тревожно, но почти никогда не означает потерю средств — это лишь сбой связи между вашим кошельком и узлом. Проверка параметров сети, смена конечных точек, пополнение газа и обновление ПО решают подавляющее большинство случаев без обращения в поддержку.

По мере того как MetaMask продолжает расширяться на разные сети, умение самостоятельно управлять RPC-подключениями становится базовым навыком работы с кошельком. Добавьте ChainList в закладки, изучите коды ошибок выше, а если вы рассматриваете альтернативы, в нашем руководстве по лучшим криптокошелькам сравнивается, как конкурирующие решения справляются с теми же проблемами.

Часто задаваемые вопросы

Означает ли ошибка Internal JSON-RPC, что MetaMask взломали?

Нет. Обычно это означает, что MetaMask не смог завершить запрос через подключённую RPC-точку. Проверьте адрес кошелька в надёжном обозревателе блоков, чтобы подтвердить балансы, прежде чем менять настройки безопасности.

Может ли вредоносный RPC URL украсть криптовалюту из MetaMask?

Плохой RPC не может напрямую раскрыть вашу секретную фразу восстановления, но может искажать данные блокчейна, задерживать транзакции и записывать вашу активность или IP-адрес. Используйте только надёжных сетевых провайдеров.

Почему ошибка возникает только в одном dApp?

Если другие dApps работают, проблемный сайт, возможно, отправляет неподдерживаемые вызовы контракта, устаревшие данные транзакции или запросы, которые ваша конечная точка не может обработать. Отключите сайт, заново подключите MetaMask и попробуйте другой RPC.

Какой RPC использовать в MetaMask — публичный или частный?

Публичные RPC удобны, но при высокой нагрузке могут замедляться или ограничивать запросы. Приватная конечная точка от надёжного провайдера обычно обеспечивает более стабильную работу для обменов, бриджинга, торговли или разработки.

Как исправить внутреннюю ошибку JSON-RPC в MetaMask