EVM 체인 ID 목록: 이더리움, 베이스, 아비트럼, 폴리곤, 그리고 언젠가 입력하라고 요구받을 모든 네트워크

모든 EVM 네트워크의 체인 ID 해설. 작성: ChainGate.

체인 ID는 EVM 호환 블록체인을 고유하게 식별하는 정수로, EIP-155에 정의되어 있으며 모든 트랜잭션 서명에 포함되어 한 네트워크용으로 서명한 트랜잭션을 다른 네트워크에서 재전송할 수 없게 합니다. 이더리움 메인넷은 1, 베이스는 8453, 아비트럼 One은 42161, 폴리곤 PoS는 137, BNB 스마트 체인은 56, 옵티미즘은 10, 아발란체 C-Chain은 43114, Sepolia 테스트넷은 11155111입니다.

메인넷과 테스트넷의 전체 목록은 2절과 3절에 있으며, 지갑과 RPC 엔드포인트가 16진수로 표시하는 경우가 많으므로 각 번호를 16진수로도 적었습니다(베이스는 10진수로 8453, 16진수로 0x2105).

체인 ID는 가장 곤란한 순간에 등장합니다. 저장이 안 되는 지갑 양식, "지원하지 않는 체인"이라고 말하는 dapp, 서명하기 전에 번호부터 요구하는 라이브러리. 온라인의 목록들은 의미 없이 번호만 주고, 해설들은 목록 없이 의미만 줍니다. 이 페이지에는 둘 다 있습니다. 이 정수가 하는 일, 사람들이 실제로 쓰는 네트워크의 체인 ID를 10진수와 16진수로, 그리고 몇 초 만에 직접 확인하는 방법까지.

요약

  • 체인 ID는 EVM 네트워크 하나를 식별하는 정수입니다. 이더리움은 1, 옵티미즘 10, BNB 스마트 체인 56, 폴리곤 137, 베이스 8453, 아비트럼 One 42161, 아발란체 43114, Sepolia 11155111입니다.
  • EIP-155 이후로 모든 서명에 포함되므로, 체인 1용으로 서명한 트랜잭션은 다른 모든 체인에서 거부됩니다. 네트워크 사이의 리플레이 공격을 막는 것이 바로 이것입니다.
  • 16진수와 10진수는 같은 숫자입니다. MetaMask는 0x2105를, Chainlist는 8453을 보여 주지만 둘 다 베이스를 뜻합니다.
  • 권위 있는 값은 네트워크의 RPC 엔드포인트가 eth_chainId에 돌려주는 값입니다. 입력한 체인 ID가 그 답과 다르면 지갑은 사용자 지정 네트워크를 거부합니다.

1. 체인 ID란?

이더리움 자체부터 가장 작은 레이어 2까지, 모든 EVM 네트워크는 소프트웨어에 어느 체인과 통신하고 있는지 알려 주는 정수 하나를 갖고 있습니다. 그 정수가 체인 ID입니다. 주소도, 컨트랙트도, 네트워크 이름도 아닙니다. 노드, 지갑, 라이브러리, dapp이 모두 합의한 평범한 숫자이며, 서명하는 모든 트랜잭션에 들어갑니다.

이 숫자는 EIP-155에서 왔으며, 2016년 블록 2,675,000의 Spurious Dragon 하드포크에서 활성화되었습니다. 그 전에는 한 체인에서 서명한 이더리움 트랜잭션이 같은 계정이 존재하는 어느 체인에서나 유효했는데, 이더리움과 이더리움 클래식이 갈라지며 모든 주소를 공유하게 되자 실제 문제가 되었습니다. EIP-155는 서명되는 데이터에 체인 ID를 추가해, 서명이 만들어진 체인에서만 검증되도록 했습니다.

실제로 체인 ID를 마주치는 곳은 세 군데입니다. 지갑의 네트워크 설정, 현재 네트워크를 지원하지 않는 dapp의 오류 메시지, 그리고 트랜잭션에 서명하는 모든 라이브러리의 설정입니다.

2. 체인 ID 목록: 메인넷

아래 네트워크는 사람들이 검색하는 네트워크이자 이 사이트가 추적하는 네트워크입니다. 값은 chainlist.org와 chainid.network의 기반이 되는 ethereum-lists/chains 레지스트리에서 가져왔으며, 2026년 10월 18일에 확인했습니다. ChainGate에 해당 네트워크의 가스 트래커가 있으면 이름에 링크를 걸었습니다.

네트워크체인 ID16진수네이티브 토큰
Ethereum Mainnet10x1ETH
OP Mainnet (Optimism)100xaETH
Cronos250x19CRO
BNB Smart Chain560x38BNB
Syscoin570x39SYS
Ethereum Classic610x3dETC
Gnosis1000x64XDAI
Unichain1300x82ETH
Polygon PoS1370x89POL
Monad1430x8fMON
Sonic1460x92S
opBNB2040xccBNB
Fantom Opera2500xfaFTM
zkSync Era3240x144ETH
PulseChain3690x171PLS
World Chain4800x1e0ETH
Polygon zkEVM11010x44dETH
Moonbeam12840x504GLMR
Moonriver12850x505MOVR
Sei13290x531SEI
Soneium18680x74cETH
Ronin20200x7e4RON
Kava22220x8aeKAVA
peaq33380xd0aPEAQ
Mantle50000x1388MNT
Base84530x2105ETH
Haqq Network112350x2be3ISLM
Arbitrum One421610xa4b1ETH
Arbitrum Nova421700xa4baETH
Celo422200xa4ecCELO
Avalanche C-Chain431140xa86aAVAX
Ink570730xdef1ETH
Linea591440xe708ETH
Berachain800940x138deBERA
Blast814570x13e31ETH
Chiliz Chain888880x15b38CHZ
Taiko1670000x28c58ETH
Scroll5343520x82750ETH
Zora77777770x76adf1ETH

이 중 몇 가지는 헷갈리기 쉽습니다. 폴리곤 PoS는 137이고 네이티브 토큰은 이제 MATIC이 아니라 POL입니다. 폴리곤 zkEVM은 다른 체인으로 1101입니다. OP 메인넷은 대부분이 아직 옵티미즘이라고 부르는 네트워크입니다. 아비트럼 One(42161)이 아비트럼의 주 체인이고, 아비트럼 Nova(42170)는 게임과 소셜 앱을 위한 별도 체인입니다. BNB 스마트 체인(56)과 opBNB(204)는 가스 토큰이 같을 뿐 다른 네트워크입니다. 이더리움 클래식은 네트워크 ID가 이더리움과 같은 1이지만 체인 ID는 61인데, 이것이 바로 EIP-155가 만들어진 이유가 된 사례입니다.

3. 체인 ID 목록: 테스트넷과 로컬 네트워크

테스트넷에도 각자의 체인 ID가 있으며, 잘못된 체인 ID로 전환된 지갑은 올바른 네트워크에 멀쩡히 있는 자금을 잔액 0으로 표시합니다.

네트워크체인 ID16진수비고
Ethereum Sepolia111551110xaa36a7이더리움이 애플리케이션 개발용으로 권장하는 테스트넷
Ethereum Hoodi5600480x88bb0스테이킹과 밸리데이터 테스트용 이더리움 테스트넷
Ethereum Holesky170000x42682025년 9월부터 지원 종료, Hoodi를 쓰세요
Base Sepolia845320x14a34베이스 테스트넷
Arbitrum Sepolia4216140x66eee아비트럼 테스트넷
OP Sepolia111554200xaa37dcOP 메인넷 테스트넷
Polygon Amoy800020x13882폴리곤 PoS 테스트넷
BNB Smart Chain Testnet970x61BNB 스마트 체인 테스트넷
Avalanche Fuji431130xa869아발란체 C-Chain 테스트넷
Hardhat Network (local)313370x7a69로컬 Hardhat Network의 기본값
Geth private chain (local)13370x539Geth 프라이빗 체인의 기본값, Besu의 개발 네트워크도 같은 값을 씀

이더리움 테스트넷의 상태는 ethereum.org를 기준으로 했고, Hardhat의 기본값은 네트워크 레퍼런스에, Geth의 기본값은 EIP-155 자체에 나와 있습니다. 로컬 체인은 도구마다 기본값이 다른 유일한 경우이므로, 로컬 노드에 연결할 때 지갑이 불평하면 1337인지 31337인지 확인하세요.

4. 체인 ID는 왜 중요할까?

서명의 일부이기 때문입니다. EIP-155에서 체인 ID는 서명 전에 해시되는 필드 중 하나이며, 서명의 v 값은 체인 ID에 2를 곱한 뒤 35 또는 36을 더한 값으로 정해집니다. 체인 1용으로 서명된 트랜잭션을 받은 체인 137의 노드는 거기서 유효한 발신자를 복원할 수 없어 트랜잭션을 버립니다. 같은 계정, 같은 nonce, 같은 수신자가 두 체인 모두에 존재하지만 서명은 한쪽에서만 작동합니다.

나머지는 모두 여기서 따라옵니다. 지갑은 체인 ID로 올바른 네트워크 이름, 통화 기호, 익스플로러를 표시합니다. dapp은 체인 ID로 호출할 컨트랙트 주소를 고르는데, 베이스용으로 만든 dapp이 지갑이 이더리움에 있을 때 작동을 거부하는 이유가 그것입니다. 라이브러리는 체인 ID로 서명을 만들기 때문에, 설정에서 값을 틀리면 어디에도 도착하지 않는 트랜잭션이 만들어집니다.

5. 체인 ID와 네트워크 ID의 차이

이더리움 네트워크에는 식별자가 둘 있고 대부분의 경우 같은 숫자라서 두 용어가 뒤섞입니다. Hyperledger Besu 문서는 그 차이를 한 문장으로 정리합니다. 노드 사이의 피어 투 피어 통신은 네트워크 ID를 쓰고, 트랜잭션 서명 과정은 체인 ID를 씁니다.

둘이 갈라지는 경우는 몇 가지 알려져 있습니다. 이더리움과 이더리움 클래식은 2016년까지 하나의 네트워크였기 때문에 네트워크 ID가 둘 다 1이지만, 체인 ID는 1과 61입니다. Besu의 개발 네트워크는 체인 ID 1337에 네트워크 ID 2018을 씁니다. 이더리움 메인넷, Sepolia, Hoodi, 그리고 위 표의 모든 레이어 2에서는 두 값이 같고, 지갑에서 하는 어떤 작업도 네트워크 ID를 묻지 않습니다.

JSON-RPC에서는 별도의 호출입니다. eth_chainId는 체인 ID를 16진수 문자열로 돌려주고, net_version은 네트워크 ID를 10진수 문자열로 돌려줍니다. 지갑이나 dapp에서 어떤 도구가 "네트워크 ID"를 묻는다면 거의 언제나 체인 ID를 뜻합니다.

6. 네트워크의 체인 ID는 어떻게 찾을까?

가장 빠른 것부터 가장 권위 있는 것까지 네 가지 방법이 있습니다.

이 페이지의 표
사람들이 일상적으로 쓰는 네트워크를 다루며, 각 번호 옆에 16진수 형태를 함께 적었습니다.
chainlist.org 또는 chainid.network
둘 다 GitHub의 ethereum-lists/chains 레지스트리를 읽으며, 여기에는 2,800개가 넘는 EVM 체인이 올라와 있습니다. 이름으로 검색하면 체인 ID, 네이티브 토큰, 공개 RPC URL이 나옵니다. MetaMask의 도움말 페이지도 Chainlist를 안내하면서 그 데이터는 MetaMask가 관리하지 않는다고 덧붙이므로, 네트워크를 추가하기 전에 항목을 확인하세요.
지갑의 네트워크 설정
MetaMask, Rabby, Trust Wallet을 비롯한 지갑들은 설정된 모든 네트워크의 상세 정보에 체인 ID를 표시합니다. 이것이 지갑이 실제로 서명에 쓰는 번호입니다.
RPC 엔드포인트 자체
노드에 eth_chainId를 호출하세요. 돌아오는 값이 정의상 그 네트워크의 체인 ID이며, 사용자 지정 네트워크를 추가할 때 지갑이 비교하는 값도 이것입니다:
curl -s -X POST https://mainnet.base.org \
  -H 'content-type: application/json' \
  -d '{"jsonrpc":"2.0","id":1,"method":"eth_chainId","params":[]}'

# {"jsonrpc":"2.0","id":1,"result":"0x2105"}
# 0x2105 = 8453, so this endpoint is Base

결과는 16진수입니다. 0x2105는 8453이므로 이 엔드포인트는 베이스의 것입니다. 어떤 JSON-RPC 제공자든 API 키 없이 이 호출에 답하므로, 누군가 건네준 RPC URL이 정말 그들이 말한 네트워크인지 확인하는 가장 빠른 방법입니다.

7. 체인 ID로 MetaMask에 네트워크를 추가하는 방법은?

사용자 지정 네트워크를 추가한다는 것은 EIP-3085가 정의한 다섯 개의 필드를 채우는 일입니다. EIP-3085는 dapp이 클릭 한 번으로 같은 일을 하는 wallet_addEthereumChain 호출의 바탕이 되는 표준입니다:

네트워크 이름
자유 텍스트이며 표시용입니다.
RPC URL
지갑이 통신할 JSON-RPC 엔드포인트입니다. 공개 엔드포인트는 Chainlist에 있고, 직접 쓰는 제공자의 URL도 됩니다.
체인 ID
위 표의 번호입니다. 지갑 양식은 10진수를 받고, dapp은 API 호출에서 0x가 붙은 16진수로 넘깁니다.
통화 기호
네이티브 토큰의 이름입니다. 베이스와 아비트럼은 ETH, 폴리곤은 POL, BNB 스마트 체인은 BNB, 아발란체는 AVAX입니다.
블록 익스플로러 URL
선택 사항입니다. 지갑이 트랜잭션을 익스플로러로 링크할 수 있게 합니다.

체인 ID와 RPC URL은 서로 맞아야 합니다. EIP-3085는 전달받은 체인 ID가 RPC 엔드포인트의 eth_chainId 값과 다르면 지갑이 요청을 거부하도록 요구하며, 그런 경우 MetaMask는 양식에 오류를 표시합니다. 이 오류가 보인다면 번호가 틀렸거나, URL이 다른 네트워크의 것이거나, URL이 죽은 엔드포인트입니다. 앞 절의 curl 호출로 테스트해 보세요.

8. 체인 ID 불일치나 지원하지 않는 체인 오류가 나는 이유는?

문구는 지갑과 dapp마다 다르지만 원인은 몇 가지뿐입니다:

RPC URL과 체인 ID가 맞지 않음
8453을 입력했는데 이더리움 메인넷 URL을 붙여 넣었거나 그 반대입니다. 지갑이 엔드포인트에 물어보고 다른 답을 받아 거부한 것입니다. 틀린 쪽을 고치세요.
dapp이 현재 네트워크를 지원하지 않음
"Unsupported chain"이나 "wrong network"는 dapp의 컨트랙트가 다른 체인 ID에 배포되어 있다는 뜻입니다. 보통 dapp 자체의 네트워크 버튼을 통해, dapp이 나열하는 네트워크 중 하나로 지갑을 전환하세요.
노드와 다른 체인 ID로 트랜잭션이 서명됨
EIP-155 서명을 그 체인에서 복원할 수 없으므로 노드는 invalid-sender 또는 invalid-chain-id 오류로 거부합니다. 이것은 보내는 소프트웨어의 설정 버그이지 네트워크 장애가 아닙니다.
로컬 체인의 ID가 바뀜
MetaMask에 저장된 것과 다른 체인 ID로 개발 노드를 재시작하면 불일치와 오래된 nonce 문제가 생깁니다. 로컬 네트워크를 삭제하고 다시 추가하세요.
16진수와 10진수를 섞음
0x89는 137이지만 10진수를 기대하는 양식은 "0x89"를 텍스트로 취급합니다. 지갑 양식에는 10진수를, API 호출에는 16진수를 쓰세요.

9. 10진수, 16진수, CAIP-2: 같은 ID를 쓰는 세 가지 방법

Chainlist와 지갑 양식은 체인 ID를 10진수로 표시합니다. JSON-RPC, EIP-3085, MetaMask의 내부 설정은 0x가 붙은 16진수를 쓰므로 137은 0x89, 42161은 0xa4b1, 11155111은 0xaa36a7로 나타납니다. 모두 같은 정수이며, 위 표에 둘 다 적어 두었습니다.

WalletConnect 같은 멀티체인 도구는 세 번째 형식인 CAIP-2를 더합니다. 숫자 앞에 네임스페이스를 붙여 EVM 밖의 체인도 하나의 식별자 체계를 공유할 수 있게 한 것으로, 이더리움 메인넷은 eip155:1, 폴리곤은 eip155:137, 베이스는 eip155:8453입니다. eip155 부분은 "이것은 EVM 체인 ID"라는 뜻이고, 콜론 뒤의 숫자는 다른 모든 곳과 같은 체인 ID입니다.

10. 비트코인과 솔라나에도 체인 ID가 있을까?

EIP-155의 의미로는 없습니다. 체인 ID는 EVM의 개념이며 비트코인, 라이트코인, 도지코인, 솔라나, XRP에는 없습니다. 이 코인들을 추가할 때 지갑이 체인 ID를 묻지 않는 이유가 그것입니다.

이 네트워크들은 메인넷과 테스트 네트워크를 다른 방식으로 구분합니다. 비트코인 계열 체인은 메인넷과 테스트넷에 서로 다른 주소 형식과 네트워크 파라미터를 쓰며, 테스트넷 주소의 시작이 다른 이유가 그것입니다. 솔라나는 Mainnet, Devnet, Testnet이라는 별도의 클러스터를 운영하며, 각각 자체 RPC 엔드포인트를 갖습니다. 비트코인이나 솔라나를 입금할 때 양식이 "체인 ID"를 묻는다면 숫자가 아니라 어느 네트워크를 쓸지 묻는 것입니다.

11. 코드에서 체인 ID 쓰기

EVM 트랜잭션에 서명하는 라이브러리는 모두 설정에서 받든 노드에 물어보든 체인 ID가 필요합니다. ChainGate SDK에서는 호스팅 네트워크에 이미 체인 ID가 들어 있고, 사용자 지정 EVM 네트워크는 RPC URL 옆에 파라미터로 받습니다:

import { ChainGate, importWallet } from 'chaingate';

const cg = new ChainGate({ apiKey: process.env.CHAINGATE_API_KEY });
const wallet = importWallet({ phrase: process.env.MNEMONIC });

// Hosted networks already know their chain ID
const base = cg.connect(cg.networks.base, wallet);

// Any other EVM network: pass the RPC URL and the chain ID it reports
const scroll = cg.networks.evmRpc({
  rpcUrl: 'https://rpc.scroll.io',
  chainId: 534352,
  name: 'Scroll',
  symbol: 'ETH',
});
const scr = cg.connect(scroll, wallet);

넘기는 값은 4절에서 설명한 이유로 엔드포인트가 eth_chainId에 보고하는 값과 같아야 합니다. 나머지 흐름은 JavaScript로 암호화폐를 보내는 튜토리얼에서 차례로 다루고, 호스팅 RPC URL은 ChainGate 문서에 나와 있습니다.

12. 다음에 볼 것

체인 ID가 정리되었으니, 어느 네트워크에서든 다음 질문은 거기서 보내는 데 얼마가 드느냐입니다. 멀티체인 가스 트래커는 위 메인넷 표의 모든 네트워크를 실시간 수수료와 함께 다루고, 가스비 가이드는 거기 표시되는 숫자를 설명합니다. 이미 트랜잭션이 나갔고 그것을 찾아야 한다면, 트랜잭션 해시 가이드에서 올바른 익스플로러에서 조회하는 방법을 보여 줍니다. 그리고 이 모든 체인의 지갑, 전송, RPC 접근을 하나의 TypeScript 라이브러리로 처리하고 싶다면, ChainGate가 이 사이트를 뒷받침하는 SDK입니다.

자주 묻는 질문

암호화폐에서 체인 ID란?

EVM 호환 블록체인을 고유하게 식별하는 정수로, EIP-155에 정의되어 있습니다. 모든 트랜잭션 서명에 포함되므로 한 네트워크용으로 서명한 트랜잭션은 다른 모든 네트워크에서 무효입니다. 이더리움 메인넷은 1, 베이스 8453, 아비트럼 One 42161, 폴리곤 137입니다.

이더리움 메인넷의 체인 ID는?

1이며 16진수로는 0x1입니다. 테스트넷은 Sepolia(11155111)와 Hoodi(560048)이고, Holesky(17000)는 2025년 9월부터 지원이 종료되었습니다.

베이스 체인 ID는?

10진수로 8453, 16진수로 0x2105입니다. Base Sepolia 테스트넷은 84532입니다.

아비트럼 체인 ID는?

아비트럼 One은 42161(0xa4b1)입니다. 아비트럼 Nova는 별도 체인으로 42170이고, Arbitrum Sepolia 테스트넷은 421614입니다.

폴리곤 체인 ID는?

폴리곤 PoS는 137(0x89)이며 네이티브 토큰은 POL입니다. 폴리곤 zkEVM은 다른 체인으로 1101이고, Polygon Amoy 테스트넷은 80002입니다.

체인 ID와 네트워크 ID의 차이는?

네트워크 ID는 노드 사이의 피어 투 피어 통신에 쓰이고, 체인 ID는 트랜잭션 서명에 쓰입니다. 이더리움 메인넷과 모든 공개 테스트넷에서는 같은 숫자이지만, 이더리움 클래식은 네트워크 ID 1에 체인 ID 61이고, Besu의 개발 네트워크는 체인 ID 1337에 네트워크 ID 2018을 씁니다.

네트워크의 체인 ID는 어떻게 찾을까?

chainlist.org나 chainid.network에서 찾거나, 지갑의 네트워크 설정에서 읽거나, 네트워크의 RPC URL에 eth_chainId JSON-RPC 호출을 보내세요. 16진수로 돌아오는 RPC의 답이 권위 있는 값입니다.

MetaMask가 체인 ID가 일치하지 않는다고 하는 이유는?

입력한 RPC URL이 직접 적은 것과 다른 체인 ID를 보고하기 때문입니다. EIP-3085는 지갑이 그 조합을 거부하도록 요구합니다. 목록과 번호를 대조하거나, 그 URL에 eth_chainId를 호출해 실제로 어느 네트워크인지 확인하세요.

체인 ID는 MetaMask의 16진수 값과 같은 것일까?

같습니다. MetaMask와 JSON-RPC는 0x가 붙은 16진수를 쓰고 Chainlist와 지갑 양식은 10진수를 쓰지만, 0x2105와 8453은 같은 숫자입니다. 둘 사이를 변환하되 한 필드에 섞어 쓰지는 마세요.

ChainGate로 만들기

아이디어를 코드로 연결하세요 — ChainGate는 Ethereum과 20여 개 블록체인을 위한 지갑, 트랜잭션, 관리형 RPC를 하나의 라이브러리로 제공합니다.