Troppe poche connessioni, config.json?
-
-
Ilfile di configurazione è config.json,aggiorna la domandaper ridurre la confusione.The config file is config.json, please update the question to reduce confusion.
- 0
- 2019-08-29
- Phlogi
-
5 risposta
- voti
-
- 2019-05-23
Alcuni "nodi appena avviati" a voltefinisconoin una situazione delgeneree si lavorapereliminareilproblema. Lo scenario èil seguente:
- Ipeerbootstrap accettano ungrannumero di connessioni quindinon c'èmai alcunproblema a connettersi adessi
- Quindi,restituiscono sempre lo stesso sottoinsieme dei loropari.E questi coetaneinon accettano centinaia di connessioni cosìfinisconoperesseretutti saturoe quindinessuna risposta.
- Ilnodo èbloccatoin questafasefino a quandonongli vienefornitomanualmentetramite
admin-client connect address [...]
l'indirizzo di unnodonon saturo che accetta la connessionee fornisce alcuniindirizzi di alcunialtrinodinon saturatie tutto èfinalmente aposto.
Ci stiamo lavorando rendendoi nodi saturimentre rifiutiamo una connessione aggiuntiva,inviando comunque un sottoinsieme dei loropariperprovare ...
Some "just started node" sometime ends up in a situation like that and work is done to get rid of the problem. The scenario is the following:
- The bootstrap peers accept a big number of connection so there is never any problem to connect to them
- Then, they send back always the same subset of their peers. And these peers do not accept hundred of connection so they end up being all saturate and therefore none reply.
- The node is stuck in this stage until being given by hand via
admin-client connect address [...]
the address of a non saturated node that accepts the connection and gives some addresses of some other non saturated nodes and everything is finally fine.
We are working on it by making saturated nodes while refusing an extra connection sending back anyway a subset of their peers to try...
-
- 2019-02-15
Iltuonodo èin modalitàprivata?Èbizzarro avere solo 5 connessionimentre ci sono centinaia dipeernelle reti.Haiprovato a riavviareiltuonodo?e/opergenerare unanuovaidentità?Forsegli altrinodi hannoinseritoiltuonella listanera.
Puoi aggiungerepeer con l'opzione della riga di comando --peer ADDR: PORT o aggiungendolinelfile config.json.Tramiteilfile di configurazione,puoi adesempio aggiungerei peer come segue:
{ "p2p": { "bootstrap-peers": ["127.0.0.1:9731"], }
Is your node in private mode ? It's bizarre to only have 5 connections while there are hundreds of peers in the networks. Have you tried to restart your node ? and/or to generate a new identity ? Maybe the other nodes have blacklisted yours.
You can either add peers with command line option --peer ADDR:PORT, or by adding them in the config.json file. Via the config file, you can for instance add the peers as follows:
{ "p2p": { "bootstrap-peers": ["127.0.0.1:9731"], }
-
Nessunamodalitàprivata.E sì,hoprovato a riavviarepiù volte.Perché qualcuno dovrebbeinserirminella listanera?No private mode. And yes i've tried to restart several times. Why should somebody blacklist me?
- 0
- 2019-02-15
- Blindripper
-
Unopuòmettertinellablacklist se,adesempio,considera chenonti stai comportando come unnodo "normale": (ituoi datinon sonoben formati,cerchi diinondare l'altronodo con la stessa richiesta,....).Puoiprovare a stamparepiùtracce di debug (con -vvv)e vedereperché le connessioni vengono rifiutate/chiuse.One may blacklist you if, for instance, it considers that you are not behaving like a "normal" node: (your data are not well formed, you try to flood the other node with the same request, ....). You can try to print more debug traces (with -vvv) and see why connections are refused/closed.
- 2
- 2019-02-15
- iguerNL
-
Ok,nonpuòessereil caso,mi comportoin modo "normale" :)Ok that can't be the case, i behave "normal" :)
- 0
- 2019-02-15
- Blindripper
-
- 2019-02-16
Ok,hoprovato ad aprire leporte,generato unanuovaidentità,aggiuntoi peermanualmente (comeiguer) consigliato,manon è servito aniente.
Ma untizio chiamato "Krixt"nelprogramma di cottura Tezos ha scritto questo script:
#!/bin/bash # ottienii nodi difondazione peri in dubnodesfranodes sinnodesnrtnodespdxnodes;fare perj in `dig $i.tzbeta.net + short`;fare echo "Collegamento dellafondazione $j ..." Indirizzo di connessione ~/tezos/tezos-admin-client [$j]: 9732 fatto fatto #nodipubblici perj in 0 1;fare fori in "curl -s" http://api6.tzscan.io/v3/network?state=running&p=$j&number=50 "\ | jq -r '. []| .point_id '| xargs`;fare #gestisceipv4 oipv6 numparts=$ (echo $i | awk -F: '{print NF}') baseno=$ ((numparts-1)) porta=$ (echo $i | cut -d: -f $numparts) base=$ (echo $i | cut -d: -f1- $basenum) formatted="[$base]: $port" echo "Collegamento $formattato ..." ~/tezos/tezos-admin-client connect address $formattato fatto fatto Fonte: https://gist.github.com/utdrmac/2125a8514960e163837e86bc934f19b6
Questo script è un veropotenziatore di connessione :) Ora hopiù di 100 connessioni (da 5precedenti).
Spero che questo aiuti altri congli stessiproblemi di
"troppepoche connessioni"
;)Ok, i've tried to open ports, generated a new identity, added peers manually (like iguer) adviced, but nothing helped.
But a guy called "Krixt" in the Tezos Baking slack wrote this script:
#!/bin/bash # get foundation nodes for i in dubnodes franodes sinnodes nrtnodes pdxnodes; do for j in `dig $i.tzbeta.net +short`; do echo "Connecting foundation $j..." ~/tezos/tezos-admin-client connect address [$j]:9732 done done # public nodes for j in 0 1; do for i in `curl -s "http://api6.tzscan.io/v3/network?state=running&p=$j&number=50" \ | jq -r '.[] | .point_id' | xargs`; do # handle ipv4 or ipv6 numparts=$(echo $i | awk -F: '{print NF}') basenum=$((numparts-1)) port=$(echo $i | cut -d: -f$numparts) base=$(echo $i | cut -d: -f1-$basenum) formatted="[$base]:$port" echo "Connecting $formatted..." ~/tezos/tezos-admin-client connect address $formatted done done
Source: https://gist.github.com/utdrmac/2125a8514960e163837e86bc934f19b6
This script is a true connection booster :) I've now more than 100 connections (from 5 before).
I hope this will help others with the same
"too few connections"
problems ;)-
Bello !Anche se questonon spiegaperchéilnodonon sta scoprendo la rete da solo.Questo èforse un caso chenecessita diindaginie debug daparte delteam di sviluppo.Nice ! Although this does not explain why the node is not discovering the network by its own. This is maybe a case that needs investigation and debug by dev team.
- 1
- 2019-02-16
- iguerNL
-
Sì,corro dal ciclo 7 senzaproblemi omodifiche (trannegli aggiornamenti del codice).Weired.Yeah, i am running since cycle 7 without problems or changes (Except the code updates). Weired.
- 0
- 2019-02-16
- Blindripper
-
Sono contento che qualcosafunzioniperte.Ma ancora una volta,questo script crea connessioni congli altri.Ilproblema è sicuramente chegli altrinon riescono a connettersi ate,dovresti scavare dipiùinvece di usare un cerotto.Unnodonormale ottiene circa 50+ connessioni da solonel suo stato stabile,10+entroi primiminuti.I'm glad something works for you. But again, this script makes connections to others. The problem is surely that others can't connect to you, you should dig more into it instead of using a bandaid. A normal node gets about 50+ connections on its own in its stable state, 10+ within the first few minutes.
- 0
- 2019-02-16
- Frank
-
Ilproblema è stato sollevato anche dopo aver creato unanuovaidentità.Quindipenso chenonpossa averenulla a chefare con la listanera.E sarebbe strano setuttigli altrinodiimpiegasseropiù di 70 cicliperinserirminella listanera.The problem also raised after i've created a new identity. So I think it can not have anything to do with blacklisting. And it would be strange, if all other nodes took more than 70 cycles to blacklist me.
- 0
- 2019-02-17
- Blindripper
-
tzscannon èpiù disponibile.Siprega di controllare https://github.com/Phlogi/tezos-snapshots/blob/master/scripts/addpeers_2.0.shper un'alternativa.tzscan is not available anymore. Please check https://github.com/Phlogi/tezos-snapshots/blob/master/scripts/addpeers_2.0.sh for an alternative.
- 0
- 2020-01-23
- Phlogi
-
Non lavoro su carthagenet,l'output dello script è Errore: Connessionepeer rifiutata:nessunprotocollo di rete comune. > Fondazione di collegamento 34.246.245.155 ... Errore: Connessionepeer rifiutata:nessunprotocollo di rete comune. > Fondazione di collegamento 52.30.97.85 ... Errore: Connessionepeer rifiutata:nessunprotocollo di rete comune.I doesn't work on carthagenet, script output is Error: Rejected peer connection: no common network protocol. > Connecting foundation 34.246.245.155... Error: Rejected peer connection: no common network protocol. > Connecting foundation 52.30.97.85... Error: Rejected peer connection: no common network protocol.
- 0
- 2020-04-02
- saiwaixiaowangzi
-
- 2019-02-15
Come ha sottolineatoiguer,lamodalitàprivata sarebbe una delle ragioniper causare questo. Maperelaborare,ciò accadeprincipalmenteperchéi nodiin modalitàprivata sonomenofavorevoliper unnodopeer a cui connettersipoichéilnodoprivato èfondamentalmente una sanguisuga alla rete. Nontenterà dieseguireilbootstrap di altrinodi. Inodiprivati per lopiù si limitano amonitorareper ottenere lablockchaine riempireil suomempool,solo a volte condividono un'operazione come la cottura o latransazione.
Fondamentalmente,unnodoprivatonon consente ad altri di connettersi adesso. Per lo stessomotivo,seiltuonodopubbliconon consente ad altri di connettersi adesso,condividerài sintomi di "troppepoche connessioni". Non è un requisito delnodo consentire ad altri di connettersiperchéilnodo stessopuòprovare a connettersi apeernotie avviare la catenain questomodo. Ma lamiateoria è chei nodi chenon consentono connessioni da altri sono anche consideratimenofavorevoli,quindi alcuninodipotrebbero abbandonare o rifiutareiltuonodo comepariperchénon aiuta aespandere la loroportata alla rete. Certamente controllereiper assicurarmi che latuaporta
9732
sia collegabile attraversoiltuofirewall o router o altro. ( documentazioni ufficiali dice che è laporta19732
,ma credo che sia sbagliatoin base allamiaesperienza.)Ilterzomotivoper cuipossono verificarsi
too few connections
è raroma dovrebbeessere sottolineato. Seti trovi sulla rete o sulfork/chain o sulprotocollo sbagliato,ti collegherai solo ainodi compatibili. Tuttii nodi a cui sei connesso saranno anche sulla stessa configurazione. La cosa a cuiprestare attenzione è assicurarsi di compilarei propribinari conil ramomainnet
,non conmaster
. Inoltre,ricordati dieseguirei binari corretti (attualmente alprotocollo003
)e mantieni aggiornatii tuoibinari ricompilando ognitanto (onotificato difarlo su Riot o Slack).As iguer pointed out, private mode would be one reason to cause this. But to elaborate, this happens mostly because private mode nodes are less favorable for a peer node to connect to as the private node is basically a leech to the network. It will not try to bootstrap other nodes. Private nodes will mostly just monitor to get the blockchain and fill its mempool, only sometimes occasionally share an operation like baking or transaction.
Fundamentally, a private node does not allow others to connect to it. For the same reason, if your public node does not allow others to connect to it, it will share the "too few connections" symptoms. It's not a node requirement to allow others to connect because the node itself can try to connect to known peers and bootstrap the chain that way. But my theory is that nodes that does not allow connections from others are also considered less favorable, hence some nodes might drop or refuse your node as a peer because it doesn't help expand their reach to the network. I would certainly check to make sure your port
9732
is connectable through your firewall or router or whatever. (Official documentations says it's port19732
, but I believe that's wrong based on my experience.)Third reason why
too few connections
may happen is rare but should be pointed out. If you are on the wrong network or fork/chain or protocol, you will only connected to compatible nodes. All the nodes you are connected will be also on the same setup. Things to watch out for is to make sure to compile your binaries withmainnet
branch, notmaster
. Also, remember to run the correct binaries (currently at003
protocol) and keep your binaries up to date by recompiling every so often(or notified to do so on Riot or Slack).-
Ilterzoera validoperme :) Stavogirando su un docker/masterinvece che sumainnete ilnodononpoteva connettersi anessunpeer.Grazie!The third one was valid for me :) I was running on a docker/master instead of mainnet and the node could not connect to any peer. Thank you!
- 1
- 2019-02-20
- mitelone
-
- 2019-08-29
Questo èil comandoper aggiungerepermanentemente unpeer alfile config.jsonnella directory dei dati ditezos:
aggiornamento della configurazione ditezos-node --peer=13.251.160.63: 9732 --peer=...
Questo comandopurtropponon controlla le vocigiàesistenti.Quindipuoifinireper aggiungeregli stessipeerpiù volte.
This is the command to add a peer permanently to the config.json file in the tezos data directory:
tezos-node config update --peer=13.251.160.63:9732 --peer=...
This command does unfortunately not check for already existing entries. So you can end up adding the same peers multiple times.
Ricevo
too few connections (5)
da circa 2giorni. Penso che l'aggiunta dipeer almiofile ".tezos-node/config.json" dovrebbe aiutare,manon sono sicuro di come dovrebbe apparire.Posso semplicemente aggiungere l'IPe laporta a unfile vuotoe metterlonella cartella ./tezos-node?Oppureilfile config.js deve avere unformato specificoe contenereinformazioni specifiche (ulteriori)?