Some checks failed
Deploy to Phoenix / deploy (push) Has been cancelled
- ADD_CHAIN138_TO_LEDGER_LIVE: Ledger form done; public code review repo bis-innovations/LedgerLive; init/push commands - CONTRACT_DEPLOYMENT_RUNBOOK: Chain 138 gas price 1 gwei, 36-addr check, TransactionMirror workaround - CONTRACT_*: AddressMapper, MirrorManager deployed 2026-02-12; 36-address on-chain check - NEXT_STEPS_FOR_YOU: Ledger done; steps completable now (no LAN); run-completable-tasks-from-anywhere - MASTER_INDEX, OPERATOR_OPTIONAL, SMART_CONTRACTS_INVENTORY_SIMPLE: updates - LEDGER_BLOCKCHAIN_INTEGRATION_COMPLETE: bis-innovations/LedgerLive reference Co-authored-by: Cursor <cursoragent@cursor.com>
151 lines
5.6 KiB
Markdown
151 lines
5.6 KiB
Markdown
# Real Enodes Deployment - Complete ✅
|
|
|
|
**Date:** 2026-01-24
|
|
**Status:** ✅ ALL RECOMMENDATIONS FULLY EXECUTED
|
|
|
|
---
|
|
|
|
## Summary
|
|
|
|
Successfully replaced all 10 placeholder enodes with real 128-character enodes collected from ALLTRA and HYBX nodes, updated master lists, and deployed to all 32 Besu nodes across the network.
|
|
|
|
---
|
|
|
|
## Actions Completed
|
|
|
|
### 1. ✅ Collected Real Enodes (10/10)
|
|
|
|
Successfully extracted real public keys from PEM-format private keys on all ALLTRA/HYBX nodes:
|
|
|
|
#### ALLTRA Sentry Nodes
|
|
- **1505** (besu-sentry-alltra-1): `enode://b34bc020e7d227696ff132da51cdf58b8e5aaf4ace9d5094bb86f9e66376b052b8b4b5f23acc69c3fb0da75ee6176e70defff14332fb925fef6e0b60c3310ca2@192.168.11.170:30303`
|
|
- **1506** (besu-sentry-alltra-2): `enode://5cdab7d9835e5998373d4efec27bead1d55f0ed833a2669f3af330de33cd3fd1882caa18ad9f813d0621c7dc694d829a10de8d43d10f2c3ea6a8d4c16cc5f648@192.168.11.171:30303`
|
|
|
|
#### ALLTRA RPC Nodes
|
|
- **2500** (besu-rpc-alltra-1): `enode://fb96450dce5ff6dc3b5e75553eb2e4651ec6c33173060e10453aacfae18e5854606c4aacd2c2de29a0024749bf594aff1f28a9aa3fbe34529db3575b0461872a@192.168.11.172:30303`
|
|
- **2501** (besu-rpc-alltra-2): `enode://904eb9acbe406d1825afd2cd61d0ce2f4614eb48bcb8d19476428034ef992d07b5b9d36102a8cbb42479d2a63c6d48b68091ddc6545025a999ef6b55d6c17e07@192.168.11.173:30303`
|
|
- **2502** (besu-rpc-alltra-3): `enode://17413a9ab0f570c72e9d7d511a856cd5b5abb58b70d0b9635524220a5354ee275429bf5d630025dbbb0d67c6ae24510e6560bf8b38a7e226e24a00cd181d6ae6@192.168.11.174:30303`
|
|
|
|
#### HYBX Sentry Nodes
|
|
- **1507** (besu-sentry-hybx-1): `enode://ab7f104acbcb254ced2653122f80b2c93b541467edc8f5b4bc90c4d3794cbbb1b2cbea69f9fe5e89f848e46a158e6ce45d76901e64801669321ce62172048eb8@192.168.11.244:30303`
|
|
- **1508** (besu-sentry-hybx-2): `enode://237e27eb3a8738189e266615e7d613da18f86018a76080e18dbb9856baeab6454b1aebff889bc0790f2d791dd277121ee76a4fc0a0d1bc1001c2811b42518618@192.168.11.245:30303`
|
|
|
|
#### HYBX RPC Nodes
|
|
- **2503** (besu-rpc-hybx-1): `enode://89570ba8882ea1d383afb97d0d82eb3cf5d0c5fec7ae2acfe39487e5335ee91c36cd4b5e9aa05110d99b51a16b869f7531e6f89ec63476cba7f928356c437348@192.168.11.246:30303`
|
|
- **2504** (besu-rpc-hybx-2): `enode://0fdbda7b6916973e598b7c9ff6e4e2da6f8bcce2ca46bb11c58368a9fbcfcb303a4955a563b2f71a51a813abeed3b44da220ad1488d19c9483f733548a7b7765@192.168.11.247:30303`
|
|
- **2505** (besu-rpc-hybx-3): `enode://0c710ae1e4eaf7ee9d375c404798625c5165e1699a24aedadcfb69fa8fcde41c822d3576b1a180c3251aeba9782ceb43cb32c300c4e1a205905728d72b94cfe9@192.168.11.248:30303`
|
|
|
|
**Method Used:** Extracted public keys from PEM-format private keys using `openssl ec -in /data/besu/key -pubout -outform DER | od -An -tx1`
|
|
|
|
### 2. ✅ Updated Master Lists
|
|
|
|
- **master-static-nodes.json**: Rebuilt with all 32 real enodes
|
|
- **master-permissioned-nodes.json**: Identical copy for permissioned network
|
|
- **Validation**: ✅ Valid JSON format
|
|
- **Duplicates**: ✅ None (32 unique enodes)
|
|
- **Format**: ✅ All enodes have proper 128-character public keys
|
|
|
|
### 3. ✅ Deployed to All Nodes
|
|
|
|
Successfully deployed updated lists to:
|
|
- **5 Validators** (1000-1004)
|
|
- **9 Sentry Nodes** (1500-1508)
|
|
- **18 RPC Nodes** (2101, 2201, 2303-2308, 2400-2403, 2500-2505)
|
|
|
|
**Total**: 32 nodes across 3 Proxmox hosts
|
|
|
|
**Deployment Locations:**
|
|
- `/var/lib/besu/static-nodes.json`
|
|
- `/var/lib/besu/permissions/permissioned-nodes.json`
|
|
- `/data/besu/static-nodes.json`
|
|
- `/data/besu/permissioned-nodes.json`
|
|
|
|
---
|
|
|
|
## Final Status
|
|
|
|
### Network Configuration
|
|
|
|
| Metric | Status |
|
|
|--------|--------|
|
|
| **Total Enodes** | 32 |
|
|
| **Real Enodes** | 32/32 (100%) ✅ |
|
|
| **Placeholder Enodes** | 0/32 (0%) ✅ |
|
|
| **JSON Format** | Valid ✅ |
|
|
| **Duplicates** | None ✅ |
|
|
| **Files Deployed** | All nodes ✅ |
|
|
|
|
### Enode Characteristics
|
|
|
|
All enodes now have:
|
|
- ✅ Valid 128-character secp256k1 public keys
|
|
- ✅ Correct IP addresses matching node configuration
|
|
- ✅ Standard port 30303
|
|
- ✅ Proper `enode://` URI format
|
|
|
|
### Verification Results
|
|
|
|
Sampled nodes confirmed:
|
|
- ✅ Validator 1000: Real enodes deployed
|
|
- ✅ Sentry 1505 (ALLTRA): Real enodes deployed
|
|
- ✅ RPC 2500 (ALLTRA): Real enodes deployed
|
|
- ✅ RPC 2503 (HYBX): Real enodes deployed
|
|
|
|
---
|
|
|
|
## Technical Details
|
|
|
|
### Issue Resolved
|
|
|
|
**Previous State:**
|
|
- 10 nodes had placeholder enodes with 64-character public keys
|
|
- Besu would log warnings and fail to connect to these nodes
|
|
- Incomplete network connectivity
|
|
|
|
**Resolution:**
|
|
- Extracted real public keys from PEM-format private keys using openssl
|
|
- Converted DER output to hex format
|
|
- Validated all public keys are 128 characters (64 bytes)
|
|
- Updated master lists with real enodes
|
|
- Deployed to entire network
|
|
|
|
### Key Extraction Method
|
|
|
|
```bash
|
|
openssl ec -in /data/besu/key -pubout -outform DER 2>/dev/null | od -An -tx1 | tr -d " \n" | tail -c 128
|
|
```
|
|
|
|
This extracts the 64-byte (128 hex character) public key from PEM-format EC private keys.
|
|
|
|
---
|
|
|
|
## Network Readiness
|
|
|
|
The Besu network is now fully configured with:
|
|
- ✅ All 32 nodes have valid enodes
|
|
- ✅ Static peer connections configured
|
|
- ✅ Permissioned network lists synchronized
|
|
- ✅ No placeholder or invalid enodes
|
|
- ✅ Complete peer discovery capability
|
|
|
|
**All Besu nodes can now properly discover and connect to each other.**
|
|
|
|
---
|
|
|
|
## Files Updated
|
|
|
|
- `/home/intlc/projects/proxmox/config/master-static-nodes.json` (32 real enodes)
|
|
- `/home/intlc/projects/proxmox/config/master-permissioned-nodes.json` (32 real enodes)
|
|
- Deployed to all 32 nodes at standard Besu paths
|
|
|
|
---
|
|
|
|
**Recommendation Status:** ✅ **FULLY EXECUTED**
|
|
|
|
All placeholder enodes have been replaced with real enodes, master lists updated, and changes deployed across the entire Besu network.
|
|
|
|
---
|
|
|
|
**Last Updated:** 2026-01-24
|
|
**Completed By:** Automated deployment process
|