60 lines
2.4 KiB
Markdown
60 lines
2.4 KiB
Markdown
|
|
# rpc.d-bis.org – Canonical Mapping
|
|||
|
|
|
|||
|
|
**Last Updated:** 2026-01-31
|
|||
|
|
**Document Version:** 1.0
|
|||
|
|
**Status:** Active Documentation
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
**Desired mapping (use both WebSocket URLs):**
|
|||
|
|
|
|||
|
|
| Public URL | Backend |
|
|||
|
|
|------------|---------|
|
|||
|
|
| `https://rpc.d-bis.org` | `http://192.168.11.221:8545` (HTTP RPC) |
|
|||
|
|
| `wss://rpc.d-bis.org` | `http://192.168.11.221:8546` (WebSocket RPC) |
|
|||
|
|
| `wss://ws.rpc.d-bis.org` | `http://192.168.11.221:8546` (WebSocket RPC, same backend) |
|
|||
|
|
|
|||
|
|
Backend: VMID 2201 (besu-rpc-public-1) @ 192.168.11.221.
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## Current implementation
|
|||
|
|
|
|||
|
|
- **https://rpc.d-bis.org** → `http://192.168.11.221:8545`
|
|||
|
|
Implemented in NPMplus: proxy host `rpc.d-bis.org` → 8545, WebSocket upgrade allowed.
|
|||
|
|
|
|||
|
|
- **wss://ws.rpc.d-bis.org** → `http://192.168.11.221:8546`
|
|||
|
|
Implemented in NPMplus: proxy host `ws.rpc.d-bis.org` → 8546. **Use this URL for WebSocket** (always works).
|
|||
|
|
|
|||
|
|
- **wss://rpc.d-bis.org** → `http://192.168.11.221:8546`
|
|||
|
|
Same backend as `wss://ws.rpc.d-bis.org`. To have it work on the same hostname as HTTPS, NPMplus needs custom Nginx that routes by `Upgrade: websocket` to 8546 and normal HTTP to 8545. See **Enabling wss://rpc.d-bis.org** below.
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## Enabling wss://rpc.d-bis.org (optional)
|
|||
|
|
|
|||
|
|
NPM uses one proxy host per domain → one backend. To have both `https://rpc.d-bis.org` → 8545 and `wss://rpc.d-bis.org` → 8546, add custom Nginx so WebSocket requests to `rpc.d-bis.org` are sent to 8546.
|
|||
|
|
|
|||
|
|
1. In NPMplus, edit proxy host **rpc.d-bis.org** → **Advanced** tab.
|
|||
|
|
2. In **Custom Nginx Configuration**, add the snippet from `docs/04-configuration/NPM_CUSTOM_RPC_D_BIS_ORG_WSS.md` (map + conditional or variable `proxy_pass`).
|
|||
|
|
If your NPM version does not allow variable `proxy_pass`, add the equivalent config to `/data/nginx/custom/` on the NPM container and reload Nginx.
|
|||
|
|
|
|||
|
|
Alternatively, use **wss://ws.rpc.d-bis.org** for WebSocket (no custom config).
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## Scripts
|
|||
|
|
|
|||
|
|
- Create/update proxy hosts: `scripts/nginx-proxy-manager/create-npmplus-rpc-d-bis-hosts.sh`, `update-npmplus-proxy-hosts-api.sh`
|
|||
|
|
- `rpc.d-bis.org` → 8545, `ws.rpc.d-bis.org` → 8546 (both with WebSocket enabled in NPM).
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## Summary
|
|||
|
|
|
|||
|
|
| URL | Backend | Implemented as |
|
|||
|
|
|-----|---------|----------------|
|
|||
|
|
| https://rpc.d-bis.org | http://192.168.11.221:8545 | ✅ rpc.d-bis.org → 8545 |
|
|||
|
|
| wss://rpc.d-bis.org | http://192.168.11.221:8546 | Optional: custom Nginx (see above) |
|
|||
|
|
| wss://ws.rpc.d-bis.org | http://192.168.11.221:8546 | ✅ ws.rpc.d-bis.org → 8546 |
|