I know it's a dApp web3 browser, a wallet. But which ethereum client is used in the back end to interact with block chain? How the same account is able to connect with all networks (mainnet,testnet, private net)? If anyone know the working of Metamask/ the layer of Metamask ,please share it here.It will be very useful for all learners.


@AngeloBad is correct that, by default, Metamask uses Infura, but Metamask also allows you to use any RPC enabled Ethereum client as its Web3 provider.

| improve this answer | |
  • I just reply to the question made with no speculation.By the way, good comment yours. I did not know it. Following the stack exchange rules, you should comment and not reply to the answer. – AngeloBad Nov 2 '18 at 13:18

Metamask uses https://infura.io/ as a third party gateway.

See the docs as a source of learning: https://infura.io/docs

| improve this answer | |

To elaborate on the references to the fact that Metamask uses Infura (unless you explicitly specify your own RPC endpoint), this article on their blog has a couple of useful architectural diagrams that helped me wrap my head around it: https://blog.infura.io/infura-boomerang-architecture-6dc27ef56646

Just note that it's a few years old so things may have evolved a little since then, but conceptually it's still the same.

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.