Skip to content

L15 Test Network

Matt Marciniak edited this page Sep 23, 2020 · 11 revisions

This page is to ease the pain of connecting yourself into L15 network. Configs below are used to connect yourself to network with openethereum or geth client. It should produce block 0 with hash: 0x2778716827366f0a5479d7a907800d183c57382fa7142b84fbb71db143cf788c

Bootnodes used to connect yourself are consecutive:

bootnodes = [
"enode://f73ca3cc5512041e35fc0aa89fee71af8cee9c678dbc8c0c4540655a3d540c3180aed8859ef3d998f30523f499d66caec75f4fb82c6acfec76641f91f5557390@35.234.103.138:30303",
"enode://2a85c28c49d67abe8d9fba63355334e43c7f445e48c8f4ad8f4ae97e8b2ef31502d0f9e9e3dbd32da2ee5a80ae93d6e2eb96f74d77b632e93ac80af7fb298f93@34.107.102.7:30303"
]

Parity spec:

{
  "name": "AuthorityRound",
  "engine": {
    "authorityRound": {
      "params": {
        "stepDuration": "5",
        "validators" : {
          "list": [
            "0x70ad1a5fba52e27173d23ad87ad97c9bbe249abf",
            "0xafe443af9d1504de4c2d486356c421c160fdd7b1"
          ]
        }
      }
    }
  },
  "params": {
    "gasLimitBoundDivisor": "0x400",
    "maximumExtraDataSize": "0x20",
    "minGasLimit": "0x1388",
    "networkID" : "0x2323"
  },
  "genesis": {
    "seal": {
      "authorityRound": {
        "step": "0x0",
        "signature": "0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
      }
    },
    "difficulty": "0x20000",
    "author": "0x0000000000000000000000000000000000000000",
    "timestamp": "0x00",
    "parentHash": "0x0000000000000000000000000000000000000000000000000000000000000000",
    "extraData": "0x",
    "gasLimit": "0x222222"
  },
  "accounts": {
    "0x0000000000000000000000000000000000000001": { "balance": "1", "builtin": { "name": "ecrecover", "pricing": { "linear": { "base": 3000, "word": 0 } } } },
    "0x0000000000000000000000000000000000000002": { "balance": "1", "builtin": { "name": "sha256", "pricing": { "linear": { "base": 60, "word": 12 } } } },
    "0x0000000000000000000000000000000000000003": { "balance": "1", "builtin": { "name": "ripemd160", "pricing": { "linear": { "base": 600, "word": 120 } } } },
    "0x0000000000000000000000000000000000000004": { "balance": "1", "builtin": { "name": "identity", "pricing": { "linear": { "base": 15, "word": 3 } } } }
  }
}

Parity client spec toml:

[parity]
chain = "demo-spec.json"
base_path = "./client"
auto_update = "none"
[network]
port = 30303
bootnodes = [
"enode://f73ca3cc5512041e35fc0aa89fee71af8cee9c678dbc8c0c4540655a3d540c3180aed8859ef3d998f30523f499d66caec75f4fb82c6acfec76641f91f5557390@35.234.103.138:30303",
"enode://2a85c28c49d67abe8d9fba63355334e43c7f445e48c8f4ad8f4ae97e8b2ef31502d0f9e9e3dbd32da2ee5a80ae93d6e2eb96f74d77b632e93ac80af7fb298f93@34.107.102.7:30303"
]
[rpc]
port = 8540
apis = ["web3", "eth", "net", "personal", "parity", "parity_set", "traces", "rpc", "parity_accounts"]
[websockets]
port = 8450

This is genesis.json for geth that should match block 0 hash

{
  "name": "AuthorityRound",
  "config": {
    "chainId": 8995,
    "aura": {
      "period": 5,
      "authorities": ["0x70ad1a5fba52e27173d23ad87ad97c9bbe249abf", "0xafe443af9d1504de4c2d486356c421c160fdd7b1"]
    }
  },
  "params": {
    "gasLimitBoundDivisor": 1024,
    "maximumExtraDataSize": 32,
    "minGasLimit": 5000,
    "networkID": 8995
  },
  "seal": {
    "step": "0x",
    "signature": "0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
  },
  "difficulty": "0x20000",
  "coinbase": "0x0000000000000000000000000000000000000000",
  "timestamp": "0x00",
  "parentHash": "0x0000000000000000000000000000000000000000000000000000000000000000",
  "extraData": "0x",
  "gasLimit": "0x222222",
  "alloc": {
    "0x0000000000000000000000000000000000000001": {
      "balance": "0x1"
    },
    "0x0000000000000000000000000000000000000002": {
      "balance": "0x1"
    },
    "0x0000000000000000000000000000000000000003": {
      "balance": "0x1"
    },
    "0x0000000000000000000000000000000000000004": {
      "balance": "0x1"
    }
  }
}

Connecting geth:

./geth init --datadir ./l15 l15.json
./geth --datadir ./l15 --verbosity 5 --bootnodes enode://f73ca3cc5512041e35fc0aa89fee71af8cee9c678dbc8c0c4540655a3d540c3180aed8859ef3d998f30523f499d66caec75f4fb82c6acfec76641f91f5557390@35.234.103.138:30303,enode://2a85c28c49d67abe8d9fba63355334e43c7f445e48c8f4ad8f4ae97e8b2ef31502d0f9e9e3dbd32da2ee5a80ae93d6e2eb96f74d77b632e93ac80af7fb298f93@34.107.102.7:30303

where l15.json is genesis.json from this document