Initial commit: add .gitignore and README
This commit is contained in:
167
METAMASK_SETUP.md
Normal file
167
METAMASK_SETUP.md
Normal file
@@ -0,0 +1,167 @@
|
||||
# Using Quorum Network with MetaMask
|
||||
|
||||
## Overview
|
||||
|
||||
Your Quorum test network is running in WSL2, and the RPC endpoints are accessible from Windows. Here's how to configure MetaMask to connect to your local network.
|
||||
|
||||
## WSL2 Networking
|
||||
|
||||
**Good News**: WSL2 automatically forwards ports to Windows! Services listening on `localhost` in WSL2 are accessible from Windows via `localhost`.
|
||||
|
||||
**No Firewall Configuration Needed**: WSL2 handles port forwarding automatically. Docker containers with port mappings like `0.0.0.0:8545->8545/tcp` are accessible from Windows.
|
||||
|
||||
## Available RPC Endpoints
|
||||
|
||||
### Primary Endpoints (Recommended for MetaMask):
|
||||
|
||||
1. **JSON-RPC HTTP**: `http://localhost:8545`
|
||||
- This is the main RPC endpoint (rpcnode)
|
||||
- **Use this for MetaMask**
|
||||
|
||||
2. **EthSigner Proxy**: `http://localhost:18545`
|
||||
- Alternative endpoint with transaction signing
|
||||
- Can also be used with MetaMask
|
||||
|
||||
### Validator Endpoints (Optional):
|
||||
- Validator 1: `http://localhost:21001`
|
||||
- Validator 2: `http://localhost:21002`
|
||||
- Validator 3: `http://localhost:21003`
|
||||
- Validator 4: `http://localhost:21004`
|
||||
|
||||
## Setting Up MetaMask
|
||||
|
||||
### Step 1: Add Custom Network
|
||||
|
||||
1. Open MetaMask in your browser
|
||||
2. Click the network dropdown (top of MetaMask)
|
||||
3. Click "Add Network" or "Add a network manually"
|
||||
|
||||
### Step 2: Enter Network Details
|
||||
|
||||
Fill in the following information:
|
||||
|
||||
```
|
||||
Network Name: Quorum Test Network
|
||||
New RPC URL: http://localhost:8545
|
||||
Chain ID: 1337
|
||||
Currency Symbol: ETH
|
||||
Block Explorer URL: http://localhost:25000/explorer/nodes
|
||||
```
|
||||
|
||||
**Important Fields:**
|
||||
- **RPC URL**: `http://localhost:8545` (or `http://localhost:18545` for EthSigner)
|
||||
- **Chain ID**: `1337` (as configured in your network)
|
||||
- **Currency Symbol**: `ETH` (or any name you prefer)
|
||||
- **Block Explorer**: `http://localhost:25000/explorer/nodes` (Quorum Explorer)
|
||||
|
||||
### Step 3: Save and Connect
|
||||
|
||||
1. Click "Save"
|
||||
2. MetaMask will switch to your Quorum network
|
||||
3. You should see the network name in the dropdown
|
||||
|
||||
## Testing the Connection
|
||||
|
||||
### From Windows Browser/Command Prompt:
|
||||
|
||||
1. **Test RPC Endpoint** (from Windows PowerShell or CMD):
|
||||
```powershell
|
||||
curl -X POST -H "Content-Type: application/json" --data '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}' http://localhost:8545
|
||||
```
|
||||
|
||||
2. **Or use a browser**:
|
||||
- Open: http://localhost:25000/explorer/nodes (Quorum Explorer)
|
||||
- Open: http://localhost:26000 (Blockscout)
|
||||
- Open: http://localhost:3000 (Grafana)
|
||||
|
||||
### From WSL2:
|
||||
|
||||
```bash
|
||||
# Test RPC endpoint
|
||||
curl -X POST -H "Content-Type: application/json" \
|
||||
--data '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}' \
|
||||
http://localhost:8545
|
||||
|
||||
# Should return something like:
|
||||
# {"jsonrpc":"2.0","id":1,"result":"0x..."}
|
||||
```
|
||||
|
||||
## Troubleshooting
|
||||
|
||||
### If MetaMask Can't Connect:
|
||||
|
||||
1. **Verify RPC is Running**:
|
||||
```bash
|
||||
# In WSL2
|
||||
docker compose ps | grep rpcnode
|
||||
```
|
||||
|
||||
2. **Check Port Binding**:
|
||||
```bash
|
||||
# In WSL2
|
||||
docker ps | grep 8545
|
||||
```
|
||||
Should show: `0.0.0.0:8545->8545/tcp`
|
||||
|
||||
3. **Test from Windows**:
|
||||
- Open Windows PowerShell
|
||||
- Run: `Test-NetConnection -ComputerName localhost -Port 8545`
|
||||
- Should show `TcpTestSucceeded : True`
|
||||
|
||||
4. **Windows Firewall** (if needed):
|
||||
- Windows Firewall should allow localhost connections by default
|
||||
- If blocked, add exception for port 8545
|
||||
- Or temporarily disable firewall to test
|
||||
|
||||
5. **WSL2 Port Forwarding**:
|
||||
- WSL2 should forward ports automatically
|
||||
- If not working, restart WSL: `wsl --shutdown` (from Windows PowerShell)
|
||||
|
||||
### Alternative: Use WSL2 IP Address
|
||||
|
||||
If `localhost` doesn't work, you can use the WSL2 IP address:
|
||||
|
||||
1. **Find WSL2 IP** (from WSL2):
|
||||
```bash
|
||||
hostname -I
|
||||
# Example output: 192.168.0.3
|
||||
```
|
||||
|
||||
2. **Use in MetaMask**:
|
||||
- RPC URL: `http://192.168.0.3:8545`
|
||||
- Replace `192.168.0.3` with your actual WSL2 IP
|
||||
|
||||
3. **Note**: This IP may change when WSL2 restarts
|
||||
|
||||
## Network Information
|
||||
|
||||
- **Chain ID**: 1337
|
||||
- **Network Name**: Quorum Dev Quickstart
|
||||
- **Consensus**: QBFT (Quorum Byzantine Fault Tolerance)
|
||||
- **Genesis Block**: Pre-configured with validators
|
||||
|
||||
## Getting Test ETH
|
||||
|
||||
Since this is a local test network, you'll need to:
|
||||
|
||||
1. **Import a Pre-funded Account**:
|
||||
- The network has pre-configured accounts with ETH
|
||||
- Check the `config/nodes/` directory for account files
|
||||
- Import the private key into MetaMask
|
||||
|
||||
2. **Or Mine/Generate ETH**:
|
||||
- Validators are already running
|
||||
- You can create new accounts in MetaMask
|
||||
- Use the network's faucet or transfer from validator accounts
|
||||
|
||||
## Additional Resources
|
||||
|
||||
- **Quorum Explorer**: http://localhost:25000/explorer/nodes
|
||||
- **Blockscout**: http://localhost:26000
|
||||
- **Grafana Dashboard**: http://localhost:3000
|
||||
- **Prometheus Metrics**: http://localhost:9090
|
||||
|
||||
## Security Note
|
||||
|
||||
⚠️ **This is a test network** - Never use real private keys or real ETH on this network. It's only for development and testing purposes.
|
||||
|
||||
Reference in New Issue
Block a user