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>
136 lines
5.4 KiB
Markdown
136 lines
5.4 KiB
Markdown
# Public RPC Endpoints for ChainID 138 – Ledger App-Ethereum
|
||
|
||
**Last Updated:** 2026-01-31
|
||
**Document Version:** 1.0
|
||
**Status:** Active Documentation
|
||
|
||
---
|
||
|
||
**Date**: 2026-01-28
|
||
**Status**: Active
|
||
**Purpose**: Authoritative list of public ChainID 138 RPCs, Proxmox VM / NPMplus mapping, and Ledger App-Ethereum access.
|
||
|
||
---
|
||
|
||
## Public RPCs for ChainID 138
|
||
|
||
| Domain | Protocol | Target VMID | Target IP:Port | Backend | WebSocket |
|
||
|--------|----------|-------------|----------------|---------|-----------|
|
||
| `rpc-http-pub.d-bis.org` | HTTPS | 2201 | 192.168.11.221:8545 | besu-rpc-public-1 (Besu) | ✅ |
|
||
| `rpc-ws-pub.d-bis.org` | WSS | 2201 | 192.168.11.221:8546 | besu-rpc-public-1 (Besu) | ✅ |
|
||
| `rpc.d-bis.org` | HTTPS | 2201 | 192.168.11.221:8545 | besu-rpc-public-1 (Besu) | ✅ |
|
||
| `rpc2.d-bis.org` | HTTPS | 2201 | 192.168.11.221:8545 | besu-rpc-public-1 (Besu) | ✅ |
|
||
| `ws.rpc.d-bis.org` | WSS | 2201 | 192.168.11.221:8546 | besu-rpc-public-1 (Besu) | ✅ |
|
||
| `ws.rpc2.d-bis.org` | WSS | 2201 | 192.168.11.221:8546 | besu-rpc-public-1 (Besu) | ✅ |
|
||
| `rpc.public-0138.defi-oracle.io` | HTTPS | 2400 | 192.168.11.240:443 | thirdweb-rpc-1 (Nginx + RPC Translator) | ✅ |
|
||
| `rpc.defi-oracle.io` | HTTPS | 2201 | 192.168.11.221:8545 | besu-rpc-public-1 (same as rpc-http-pub) | ✅ |
|
||
| `wss.defi-oracle.io` | WSS | 2201 | 192.168.11.221:8546 | besu-rpc-public-1 (same as rpc-ws-pub) | ✅ |
|
||
|
||
- **d-bis.org** endpoints: direct Besu RPC (VMID 2201).
|
||
- **defi-oracle.io** endpoints: Nginx on VMID 2400 fronts RPC Translator, which proxies to Besu.
|
||
|
||
---
|
||
|
||
## Proxmox VM and NPMplus Mapping
|
||
|
||
### NPMplus (VMID 10233)
|
||
|
||
- **IP**: 192.168.11.167
|
||
- **FQDN**: npmplus
|
||
- **Role**: Reverse proxy for all public-facing services (including RPC).
|
||
|
||
### Routing
|
||
|
||
```
|
||
Internet (DNS → 76.53.10.36) → NPMplus (10233) → Backend RPC
|
||
```
|
||
|
||
| Public URL | NPMplus forwards to | Backend VMID |
|
||
|------------|---------------------|--------------|
|
||
| `https://rpc-http-pub.d-bis.org` | `http://192.168.11.221:8545` | 2201 |
|
||
| `wss://rpc-ws-pub.d-bis.org` | `http://192.168.11.221:8546` | 2201 |
|
||
| `https://rpc.d-bis.org` | `http://192.168.11.221:8545` | 2201 |
|
||
| `https://rpc2.d-bis.org` | `http://192.168.11.221:8545` | 2201 |
|
||
| `wss://ws.rpc.d-bis.org` | `http://192.168.11.221:8546` | 2201 |
|
||
| `wss://ws.rpc2.d-bis.org` | `http://192.168.11.221:8546` | 2201 |
|
||
| `https://rpc.public-0138.defi-oracle.io` | `https://192.168.11.240:443` | 2400 |
|
||
| `https://rpc.defi-oracle.io` | `http://192.168.11.221:8545` | 2201 |
|
||
| `wss://wss.defi-oracle.io` | `http://192.168.11.221:8546` | 2201 |
|
||
|
||
**WebSocket**: Enabled in NPMplus for all RPC hosts above.
|
||
|
||
---
|
||
|
||
## Ledger App-Ethereum and ChainID 138
|
||
|
||
- **Ledger app**: `pr-workspace/app-ethereum` (Ledger HQ App-Ethereum).
|
||
- **ChainID 138**: Configured in app (e.g. `makefile_conf/chain/defi_oracle.mk`, `src/network.c`) as **Defi Oracle Meta**.
|
||
- **RPC**: Not configured in the app firmware. Wallets (Ledger Live, MetaMask, etc.) supply RPC URLs when using ChainID 138.
|
||
|
||
### RPC URLs for Ledger / Wallets
|
||
|
||
Use these when adding ChainID 138 in Ledger Live, MetaMask, or other wallets:
|
||
|
||
| Use | URL |
|
||
|-----|-----|
|
||
| **HTTP RPC** | `https://rpc-http-pub.d-bis.org` or `https://rpc.d-bis.org` or `https://rpc2.d-bis.org` |
|
||
| **WebSocket RPC** | `wss://rpc-ws-pub.d-bis.org` or `wss://ws.rpc.d-bis.org` or `wss://ws.rpc2.d-bis.org` |
|
||
|
||
Alternatively (defi-oracle.io):
|
||
|
||
- `https://rpc.public-0138.defi-oracle.io`
|
||
- `wss://rpc.public-0138.defi-oracle.io`
|
||
- `https://rpc.defi-oracle.io` (HTTP RPC)
|
||
- `wss://wss.defi-oracle.io` (WebSocket RPC)
|
||
|
||
Chainlist / `pr-workspace/chains` (`eip155-138`) includes d-bis.org and defi-oracle.io RPCs so Ledger Live and other clients can discover them.
|
||
|
||
---
|
||
|
||
## Apply NPMplus Configuration
|
||
|
||
**New domains** (`rpc.d-bis.org`, `rpc2.d-bis.org`, `ws.rpc.d-bis.org`, `ws.rpc2.d-bis.org`, `rpc.defi-oracle.io`, `wss.defi-oracle.io`): Create proxy hosts with `scripts/nginx-proxy-manager/create-npmplus-rpc-d-bis-hosts.sh` and `create-npmplus-defi-oracle-hosts.sh`, or in NPMplus UI (Hosts → Proxy Hosts → Add), then run the update script or fix-all. The API script only updates existing hosts.
|
||
|
||
1. **Fix-all** (recommended; applies NPMplus config + verifies RPC):
|
||
|
||
```bash
|
||
# Run from repo root. Use same network as NPMplus (192.168.11.x) for updates.
|
||
./scripts/fix-rpc-chain138-npmplus.sh
|
||
```
|
||
|
||
2. **API-based update** only:
|
||
|
||
```bash
|
||
# Ensure .env has NPM_URL, NPM_EMAIL, NPM_PASSWORD
|
||
./scripts/nginx-proxy-manager/update-npmplus-proxy-hosts-api.sh
|
||
```
|
||
|
||
3. **Browser automation** (if API not used):
|
||
|
||
```bash
|
||
node scripts/nginx-proxy-manager/configure-npmplus-domains.js
|
||
```
|
||
|
||
4. **Verify** RPC and chain ID:
|
||
|
||
```bash
|
||
curl -s -X POST https://rpc-http-pub.d-bis.org \
|
||
-H "Content-Type: application/json" \
|
||
-d '{"jsonrpc":"2.0","method":"eth_chainId","params":[],"id":1}'
|
||
# Expect: {"jsonrpc":"2.0","id":1,"result":"0x8a"}
|
||
```
|
||
|
||
---
|
||
|
||
## References
|
||
|
||
- [NEXT_STEPS_CHAIN138_RPC.md](./NEXT_STEPS_CHAIN138_RPC.md) – Complete next steps using .env and scripts
|
||
- [RPC_ENDPOINTS_MASTER.md](./RPC_ENDPOINTS_MASTER.md) – All RPC endpoints
|
||
- [NPMPLUS_CORRECT_CONFIGURATION.md](./NPMPLUS_CORRECT_CONFIGURATION.md) – NPMplus domain config
|
||
- [RPC_NODE_TYPES_ARCHITECTURE.md](../05-network/RPC_NODE_TYPES_ARCHITECTURE.md) – RPC node types
|
||
- [TASK9_LEDGER_RPC_VERIFICATION.md](../../smom-dbis-138/docs/deployment/TASK9_LEDGER_RPC_VERIFICATION.md) – Ledger ChainID 138 verification
|
||
|
||
---
|
||
|
||
**Last Updated**: 2026-01-28
|