Connexion d'abonné Edge (CLI)
Abonnement CLI legacy — mis hors service le 30 août 2026
Cette page s'adresse aux utilisateurs déjà sur l'abonnement CLI / siège onchain (doublezero-solana shreds pay). Ce système sera mis hors service le 30 août 2026.
Les nouveaux abonnements utilisent le flux via le portail sur S'abonner aux shreds (Edge).
En me connectant à DoubleZero, j'accepte les Conditions d'utilisation de DoubleZero. Veuillez noter que les données sont destinées uniquement à votre usage interne et ne peuvent pas être retransmises (voir Section 2(e)).
Étape 1 : Configuration de DoubleZero
1. Terminer la configuration
Installez le Solana CLI.
Suivez les instructions de configuration pour installer et configurer le client DoubleZero.
Si vous avez précédemment configuré DoubleZero, assurez-vous d'avoir la dernière version du CLI Doublezero-Solana avec sudo apt update && sudo apt install doublezero-solana
2. Configurer le pare-feu
Autorisez le trafic GRE, BGP, PIM et shred.
iptables :
sudo iptables -A OUTPUT -p gre -j ACCEPT
sudo iptables -A INPUT -i doublezero1 -s 169.254.0.0/16 -d 169.254.0.0/16 -p tcp --dport 179 -j ACCEPT
sudo iptables -A OUTPUT -o doublezero1 -s 169.254.0.0/16 -d 169.254.0.0/16 -p tcp --dport 179 -j ACCEPT
sudo iptables -A OUTPUT -o doublezero1 -p pim -j ACCEPT
sudo iptables -A INPUT -i doublezero1 -p udp --dport 7733 -j ACCEPT
sudo iptables -A INPUT -i doublezero0 -p udp --dport 44880 -j ACCEPT
UFW :
sudo ufw allow proto gre from any to any
sudo ufw allow in on doublezero1 from 169.254.0.0/16 to 169.254.0.0/16 port 179 proto tcp
sudo ufw allow out on doublezero1 from 169.254.0.0/16 to 169.254.0.0/16 port 179 proto tcp
sudo ufw allow out on doublezero1 proto pim from any to any
sudo ufw allow in on doublezero1 to any port 7733 proto udp
sudo ufw allow in on doublezero0 to any port 44880 proto udp
3. Activer le réconciliateur
Le réconciliateur surveille l'état onchain et provisionne automatiquement les tunnels lorsque votre siège est attribué. Il n'est pas activé par défaut.
doublezero enable
Étape 2 : Configurer votre portefeuille
1. Créer une paire de clés Solana
Le CLI doublezero-solana utilise une paire de clés Solana standard pour la gestion des sièges onchain. Si vous n'en avez pas :
solana-keygen new
Cela écrit dans ~/.config/solana/id.json. Pour utiliser un chemin différent, passez --keypair <path> à n'importe quelle commande doublezero-solana.
Affichez l'adresse de votre portefeuille :
solana address
2. Approvisionner votre portefeuille
Votre portefeuille a besoin de deux jetons :
- SOL — pour les frais de transaction Solana. Transférez des SOL à l'adresse du portefeuille affichée ci-dessus.
- USDC — pour le financement du siège. Le CLI prélève depuis le compte de jetons associé (ATA) de votre portefeuille pour le mint USDC mainnet (
EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v).
Étape 3 : Acheter un siège
1. Trouver votre appareil le plus proche
Avant d'acheter un siège, identifiez l'appareil avec la latence la plus faible depuis votre machine :
doublezero latency
Notez le code de l'appareil avec le résultat de latence le plus bas (par ex., <Device_Name>). Vous l'utiliserez lors de l'achat d'un siège.
2. Vérifier les tarifs
Consultez les tarifs actuels des appareils avant d'engager des fonds. La tarification comporte deux composantes : un prix de base métropolitain et une prime par appareil. Vous pouvez également consulter les tarifs et la disponibilité ici.
Tous les appareils :
doublezero-solana shreds price
Appareil spécifique :
doublezero-solana shreds price --device-code <Device_Name>
doublezero-solana shreds price --device <PUBKEY>
Tous les appareils dans une métropole :
doublezero-solana shreds price --metro <PUBKEY>
Colonnes de sortie : Device Code, Metro Code, Metro Name, Status, Settled Seats, Available Seats, Base Price (USDC), Premium (USDC), Epoch Price (USDC).
Le prix par epoch est le coût total par epoch pour un siège sur cet appareil (base + prime). Utilisez --wide pour afficher les clés publiques complètes, ou --json pour une sortie JSON.
3. Acheter un siège
Achetez un siège avec une seule commande. Cela initialise votre siège, finance le séquestre et demande l'attribution :
doublezero-solana shreds pay \
--device-code <Device_Name> \
--client-ip <Target_IP> \
--amount <Cost_Of_Seat>
Paramètres :
| Indicateur | Description |
|---|---|
--device <PUBKEY> |
Appareil cible par clé publique (mutuellement exclusif avec --device-code) |
--device-code <CODE> |
Appareil cible par code lisible (par ex., <Device_Name>) |
--client-ip <IP> |
Adresse IPv4 publique de votre machine |
--amount <USDC> |
USDC à financer (format décimal, par ex. 100 = 100 USDC). Doit atteindre le prix minimum par epoch. |
--source-token-account <PUBKEY> |
Compte source USDC personnalisé (par défaut l'ATA de votre portefeuille) |
--accept-partial-epoch |
Ignorer l'avertissement d'epoch restant (voir ci-dessous) |
--fee-payer <PATH> |
Utiliser un portefeuille différent pour les frais de transaction SOL |
--dry-run |
Simuler la transaction sans l'exécuter |
--with-compute-unit-price <PRICE> |
Définir un prix d'unité de calcul pour une inclusion plus rapide en cas de congestion |
Une fois votre siège attribué, le daemon établit automatiquement le tunnel GRE. Vérifiez votre connexion avec :
doublezero status
Timing des epochs
Les sièges sont attribués par epoch Solana (~2 jours). S'il reste moins de 10 % de l'epoch en cours lorsque vous payez, le CLI vous avertit que votre siège sera attribué immédiatement mais ne couvre que le reste de l'epoch en cours. Un paiement séparé sera déduit de votre séquestre lorsque l'epoch suivant commencera.
Il est conseillé de financer pour plus d'un epoch à la fois afin de ne pas perdre votre siège. Vous pouvez vérifier le temps restant dans un epoch ici.
Vous pouvez contourner cet avertissement avec --accept-partial-epoch.
Maintenir votre séquestre approvisionné
Si le solde de votre séquestre est inférieur au prix de l'epoch lors du règlement, votre siège ne sera pas attribué, le tunnel sera démonté et vous perdrez votre ancienneté accumulée. L'ancienneté détermine votre priorité pour les epochs futurs — la perdre signifie que vous êtes à nouveau en concurrence comme nouvel arrivant.
Vous pouvez sur-approvisionner ce compte pour financer plusieurs epochs. Chaque règlement déduit le prix d'un epoch de votre séquestre, et le solde restant est reporté. Par exemple, financer 5 fois le prix par epoch maintient votre siège actif pendant jusqu'à 5 epochs sans ré-approvisionnement.
Pour compléter votre séquestre, exécutez à nouveau shreds pay à tout moment :
doublezero-solana shreds pay \
--device-code <Device_Name> \
--client-ip <Target_IP> \
--amount 500
Notez que le Target_IP doit être une adresse IPv4 publique sur la machine qui recevra les shreds. Vous pouvez la trouver en exécutant une commande comme curl -4 ifconfig.me sur la machine cible.
Surveiller les sièges
Cette section détaille comment visualiser les sièges via le CLI. Vous pouvez également utiliser https://data.doublezero.xyz/api/v1/docs pour surveiller les sièges et vous aider à gérer votre compte de séquestre.
Visualisez vos sièges actifs et soldes de séquestre :
Tous vos sièges :
doublezero-solana shreds list
Filtrer par appareil :
doublezero-solana shreds list --device-code <Device_Name>
Filtrer par IP client :
doublezero-solana shreds list --client-ip <Target_IP>
Filtrer par portefeuille :
doublezero-solana shreds list --withdraw-authority <PUBKEY>
Colonnes de sortie : Device Code, Client IP, Tenure, Balance (USDC), Est. Epochs Paid.
La colonne « Est. Epochs Paid » indique combien d'epochs votre solde actuel couvre aux tarifs en vigueur. Si les prix changent, cette estimation s'ajuste.
Retirer le siège et le séquestre
Cette commande libère votre siège et ferme le séquestre. Vous recevez un remboursement au prorata pour la portion inutilisée de l'epoch en cours, plus tout solde de séquestre restant, retourné à votre portefeuille. Vous perdez le siège et toute ancienneté accumulée.
doublezero-solana shreds withdraw \
--device-code <Device_Name> \
--client-ip <Target_IP>
Vous pouvez identifier l'appareil soit par --device <PUBKEY> soit par --device-code <CODE>, comme pour les autres commandes.
Pour envoyer le remboursement USDC vers un compte de jetons différent :
doublezero-solana shreds withdraw \
--device-code <Device_Name> \
--client-ip <Target_IP> \
--refund-token-account <PUBKEY>
Cette action est irréversible. Après le retrait, votre siège est perdu et l'ancienneté est réinitialisée.
Adresses de shreds (IP vs Port)
Les shreds de leader et les shreds de retransmission à fort enjeu arriveront sur le port 7733, via l'interface doublezero1. L'interface doublezero0 est destinée au trafic unicast. Le port 5765 est un moniteur de battement de cœur provenant des éditeurs de shreds — il ne contiendra pas de shreds.
Pour la consommation de shreds, l'adresse IP identifie le flux multicast et le port identifie le service UDP sur ce flux.
Tous les flux de shreds ci-dessous utilisent le port UDP 7733 sur doublezero1.
Vous pouvez examiner les IP de n'importe quel groupe multicast avec :
doublezero multicast group list
Shreds de leader
edge-solana-shreds:233.84.178.1:7733
Shreds root
edge-solana-root:233.84.178.16:7733
Shreds de retransmission
edge-solana-retrans-eu:233.84.178.12:7733edge-solana-retrans-apac:233.84.178.13:7733edge-solana-retrans-amer:233.84.178.14:7733
En-tête de tunnel GRE — XDP
Le trafic de shreds livré sur le réseau est encapsulé en GRE. Vous devrez peut-être retirer l'en-tête GRE avant d'injecter les données dans votre pipeline existant (par ex. un deshredder basé sur XDP).
Outils et tableaux de bord
Tableau de classement Edge
Le tableau de classement évalue la vitesse de livraison des shreds entre DoubleZero Edge et d'autres fournisseurs, en utilisant des données au niveau des slots pour comparer les performances en temps réel. Utilisez ce tableau de bord pour voir les taux de victoire des shreds Edge par rapport aux autres fournisseurs. Vous pouvez consulter les résultats pour les shreds de leader uniquement, en plus de la comparaison du flux complet. Vous pouvez également explorer par région pour voir les performances attendues.
Éditeurs Edge
La métrique « Publishing Shreds » en haut à gauche du tableau de bord montre le pourcentage total du poids de stake de tous les validateurs Solana publiant des shreds de leader sur DoubleZero Edge. Vous pouvez voir les détails de chaque éditeur sur le réseau.
Abonnés, appareils et activité Edge
Vous pouvez facilement rechercher votre IP client sur cette page pour les sièges souscrits et voir leur statut. Cliquez sur des abonnements de sièges spécifiques pour voir l'historique des paiements et l'activité. Vous pouvez également consulter les appareils disponibles sur la page Appareils et toute l'activité récente sur la page Activité.
Documentation de l'API de données
Pour un accès programmatique aux points de terminaison de données, consultez la documentation de l'API : https://data.doublezero.xyz/api/v1/docs.
Dépannage
Si vous rencontrez un problème non couvert ici, veuillez nous contacter via votre canal existant avant de tenter un contournement. Si vous n'avez pas de canal, veuillez chercher sur Discord et ouvrir un ticket si nécessaire.
Assurez-vous que votre client est à jour :
Exécutez : sudo apt update && sudo apt install doublezero-solana
Solde de séquestre insuffisant
Si le solde de votre séquestre est inférieur au prix de l'epoch lors du règlement, le siège n'est pas attribué, le tunnel est démonté et l'ancienneté est perdue. Complétez avec shreds pay avant le prochain règlement.
Siège non attribué après le paiement
- Vous avez peut-être payé tard dans l'epoch — le siège prend effet à l'epoch suivant.
- Tous les sièges sur l'appareil peuvent être pris par des titulaires ayant une ancienneté plus élevée. Vérifiez les sièges disponibles avec
shreds price. - Si vous avez retiré avant le règlement, le siège n'était pas éligible.
Le tunnel ne s'établit pas
- Vérifiez que le daemon est en cours d'exécution :
sudo systemctl status doublezerod - Vérifiez que le réconciliateur est activé :
doublezero enable - Vérifiez que les règles de pare-feu sont en place (GRE, BGP, PIM, trafic de shreds sur
doublezero1, port 44880 surdoublezero0) - Vérifiez que votre siège est actif pour l'epoch en cours :
doublezero-solana shreds list - Vérifiez l'état de votre connexion :
doublezero status
L'IP client du daemon est auto-découverte à partir de l'IP publique de votre hôte — vérifiez qu'elle correspond au --client-ip utilisé dans vos commandes de siège.
Avertissement de l'invite d'epoch
Le CLI avertit lorsqu'il reste moins de 10 % de l'epoch. Vos options :
- Accepter avec
--accept-partial-epochsi vous voulez le siège immédiatement - Attendre l'epoch suivant pour obtenir une couverture complète d'un epoch
« Amount is below the current price »
La commande pay valide votre montant par rapport au prix minimum par epoch (base métropolitaine + prime de l'appareil). Utilisez shreds price pour vérifier les tarifs en vigueur et augmentez votre montant.
« Multicast user already exists »
Vous avez déjà un abonnement actif via un chemin différent. Déconnectez-vous d'abord avec doublezero disconnect, puis réessayez shreds pay.