Zum Hauptinhalt springen
Die RPC-Methode getClusterNodes gibt eine Liste aller bekannten nodes zurück, die derzeit am Solana-cluster teilnehmen. Diese Informationen helfen dir bei der Netzwerkanalyse, beim Ermitteln alternativer RPC endpoint und beim Verständnis der aktuellen Netzwerktopologie aus Sicht des abgefragten node.

Häufige Anwendungsfälle

  • Netzwerktopologie analysieren: Rufe eine Momentaufnahme der bekannten nodes im cluster ab, einschließlich ihrer öffentlichen Schlüssel und Netzwerkadressen (Gossip, TPU, RPC).
  • RPC endpoint ermitteln: Identifiziere weitere potenzielle RPC-Server im cluster. Verfügbarkeit und rate limits können jedoch variieren.
  • Node-Versionen überwachen: Prüfe, welche Softwareversionen auf den verschiedenen nodes im cluster ausgeführt werden.

Request-Parameter

Diese Methode akzeptiert keine Parameter.

Response-Struktur

Das Feld result der JSON-RPC-response ist ein Array aus Objekten. Jedes Objekt stellt einen node dar und enthält die folgenden Felder:
  • pubkey (string): Der Base58-codierte öffentliche Schlüssel (Identität) des node.
  • gossip (string | null): Die IP-Adresse und der Port für den Gossip-Dienst des node. Kann null sein, wenn diese Angabe nicht verfügbar ist.
  • tpu (string | null): Die IP-Adresse und der Port für die Transaction Processing Unit (TPU) des node. Sie dient dazu, Transaktionen direkt zu übermitteln. Kann null sein.
  • rpc (string | null): Die IP-Adresse und der Port für den JSON-RPC-Dienst des node. Kann null sein, wenn der RPC-Dienst auf diesem node nicht aktiviert ist oder nicht angekündigt wird.
  • version (string | null): Die Softwareversion des node. Kann null sein, wenn keine Versionsinformationen verfügbar sind.
  • featureSet (u32 | null): Die eindeutige Kennung des Feature-Sets des node. Kann null sein.
  • shredVersion (u16 | null): Die Version der Datenstruktur, mit der dieser node Blöcke (shred) speichert und überträgt. Kann null sein.

Beispiele

1. Alle bekannten Cluster-Nodes abrufen

Dieses Beispiel ruft die Liste aller nodes ab, die dem abgefragten RPC endpoint bekannt sind.

Tipps für Entwickler

  • Perspektive des node: Die zurückgegebene Liste enthält die nodes, die dem abgefragten RPC node bekannt sind. Verschiedene RPC nodes können den cluster geringfügig unterschiedlich sehen, insbesondere bei Änderungen im Netzwerk.
  • RPC-Verfügbarkeit: Nicht alle aufgeführten nodes haben zwingend offene oder öffentlich zugängliche RPC-Ports. Wenn das Feld rpc nicht null ist, wurde ein RPC endpoint angekündigt. Das garantiert jedoch weder Erreichbarkeit noch Leistung.
  • Dynamische Liste: Die Topologie des cluster ist dynamisch. Nodes können hinzukommen oder ihn verlassen. Daher kann sich die Liste im Laufe der Zeit ändern.
  • Umfangreiche Response: In einem großen Netzwerk wie Mainnet Beta kann die response sehr umfangreich sein und viele nodes auflisten.
Dieser Leitfaden enthält alle nötigen Informationen, um mit der RPC-Methode getClusterNodes die nodes in einem Solana-cluster zu ermitteln und zu verstehen.