Dokumentation
Knoten betreiben
tintd ist das Validator-Programm. Diese Seite behandelt ein lokales Testnetz, die Befehle und den Aufbau des öffentlichen Testknotens.
Testnetz: Die Coins haben keinen Wert
Die Befehle
| Befehl | Was er tut |
|---|---|
tintd testnet | Erstellt die Dateien eines lokalen Testnetzes. |
tintd run | Betreibt einen Validator. |
tintd pay | Sendet Coins aus der Wallet einer Seed-Datei. |
tintd swap | Tauscht über den Pool einen Coin der Wallet einer Seed-Datei gegen einen anderen. |
Ein lokales Testnetz auf einem Rechner
Erstellen Sie die Dateien für vier Validatoren und starten Sie dann jeden in einem eigenen Terminal.
tintd testnet --dir net --addresses 127.0.0.1:4100,127.0.0.1:4101,127.0.0.1:4102,127.0.0.1:4103tintd run --local \
--genesis net/genesis.bin \
--validators net/validators.txt \
--key net/validator-0/key \
--data net/validator-0/data \
--rpc 127.0.0.1:4200Wiederholen Sie das für die Validatoren 1 bis 3 mit eigenem --key, --data und, falls Sie auch deren Wallet-Schnittstelle möchten, einem anderen --rpc-Port. --local akzeptiert private Adressen, die ein Netzwerk auf einem Rechner braucht.
testnet schreibt genesis.bin, validators.txt, einen Ordner mit dem Schlüssel jedes Validators und faucet.seed, den Seed der Wallet, die alle Testcoins hält. Halten Sie den Seed privat.
Coins senden und tauschen über die Kommandozeile
tintd pay --node http://127.0.0.1:4200 --seed net/faucet.seed --to tint1... --amount 100tintd pay --node http://127.0.0.1:4200 --seed net/faucet.seed --to tint1... --amount 50 --coin TUSDtintd swap --node http://127.0.0.1:4200 --seed net/faucet.seed --amount 10 --buy TUSDOhne --coin sendet pay den nativen Coin. swap zahlt mit dem nativen Coin, solange Sie nicht mit --pay einen anderen nennen; einer der beiden Coins eines Tauschs ist immer der native.
Optionen von tintd run
| Option | Bedeutung |
|---|---|
--genesis | Die Datei des Genesis-Blocks. |
--validators | Die Datei der Validatorliste. |
--key | Die Datei mit dem privaten Schlüssel dieses Validators. |
--data | Verzeichnis für die Blöcke dieses Validators. |
--listen | Adresse, auf der gelauscht wird; standardmäßig die aus der Validatorliste. |
--metrics | Adresse, unter der Metriken bereitgestellt werden. Aus, solange Sie sie nicht angeben. |
--rpc | Adresse, unter der Wallets über HTTP bedient werden. Aus, solange Sie sie nicht angeben. |
--rpc-behind-proxy | Wallets erreichen --rpc über einen Reverse-Proxy auf diesem Rechner: Clients werden nach X-Forwarded-For gezählt. |
--local | Private Adressen akzeptieren, für ein Netzwerk auf einem Rechner. |
--log-json | Protokolle als JSON-Zeilen schreiben. |
--log-level | error, warn, info (Standard), debug oder trace. |
--idle-block-ms | Millisekunden, die eine Chain ohne wartende Zahlungen zwischen Blöcken ruht. Standard 5000, höchstens 60000. Geben Sie jedem Validator denselben Wert. |
Wie der öffentliche Testknoten aufgebaut ist
Der öffentliche Knoten unter https://node.tint.top ist ein Server mit vier Validatoren. Er testet also, dass das Netzwerk funktioniert, und beweist nichts über Dezentralisierung.
| Was | Wo |
|---|---|
| Vier Validatoren | systemd-Units tint-validator@0 bis @3, die über 127.0.0.1:4100 bis 4103 sprechen |
| Wallet-Schnittstelle | Validator 0, auf 127.0.0.1:4200, von außen nicht erreichbar |
| HTTPS | Caddy auf Port 443, leitet /v1/* an die Wallet-Schnittstelle weiter |
| Chain-Daten | /var/lib/tint/validator-N/data |
- Der Proxy führt kein Zugriffsprotokoll: Eine Aufzeichnung, wer was von welcher Adresse angefragt hat, sollte ein Privatsphäre-Netzwerk nicht führen.
- Es gibt keinen Metrik-Port und keinen offenen Validator-Port; die Validatoren sprechen über die Loopback-Schnittstelle miteinander.
- Ein Validator behält jeden Block dauerhaft. Messen Sie den Speicherplatz mit
du -sh /var/lib/tint/validator-*/data. - Auf einem Server mit 1 vCPU und 2 GB brauchte jeder Validator direkt nach dem ersten Start etwa 92 MB Arbeitsspeicher; die Service-Datei begrenzt einen auf 1 GB.
Einen laufenden Knoten ansehen
curl -s http://127.0.0.1:4200/v1/statusAuf einem mit systemd verwalteten Server zeigt systemctl status 'tint-validator@*' die Units und journalctl -u 'tint-validator@*' -n 50 die letzten Protokollzeilen.
Die Wallet auf Ihren Knoten richten
In den Einstellungen der Wallet können Sie den gemeinsamen Knoten durch Ihren eigenen ersetzen. Der Knoten muss die Wallet-Schnittstelle über HTTPS bereitstellen und zum selben Netzwerk gehören, also denselben ersten Block haben wie die übrigen Daten der Wallet. Trifft eine Wallet auf einen neuen ersten Block, liest sie die neue Chain von Anfang an.