Hacktoberfest 2026: as issues que os mantenedores marcaram para outubro, abertas e boas para iniciantes. Ver issues do Hacktoberfest

p2p: allowed_peers list propagated network-wide instead of being local to the node

Aberta
#3,254 0 comentários 0 reações 0 responsáveis Ver no GitHub

Mantenedores costumam responder em até 2 dias

Ninguém assumiu esta issue ainda.

Avaliação

Dificuldade
4/5
Tempo estimado
3-5 dias
Facilidade para iniciantes
48/100
Tipo de issue
Bug
Clareza
Razoavelmente clara
Status de atividade
Pouca atividade
Stack de tecnologia
go
Domínio
networking

Direção de pesquisa

Comece rastreando a configuração de CLI --allowed_peers pelos caminhos de anúncio de peers P2P e de tratamento de conexões. Reproduza a topologia sequencer/fullnode descrita na issue e, em seguida, verifique se a restrição é aplicada somente pelo node que a definiu e se fullnodes sem restrições aceitam novos peers.

Escrita pelo modelo de indexação a partir do texto da issue.

Descrição

C:p2p

Sequencer version : v1.1.0-rc.1

Description

When running a sequencer node with --allowed_peers=fullnode-1,fullnode-2, the allowed peers list appears to be propagated to the rest of the network. As a result, other fullnodes that try to connect via P2P to fullnode-1 or fullnode-2 are rejected, even though those fullnodes never set allowed_peers themselves.

Expected Behavior

The allowed_peers configuration should be local to the node that runs the argument. It should only restrict which peers that specific node accepts connections from. It must not be advertised or enforced on other nodes in the network.

Actual Behavior

The allowed_peers list set on the sequencer is propagated across the network. Nodes that did not set allowed_peers still refuse connections from nodes not on the sequencer's list.

Network Topology

The following diagram illustrates the affected network and the expected isolation of the allowed_peers constraint:

                        Eden Testnet Network
  ┌─────────────────────────────────────────────────────────────────────┐
  │                                                                     │
  │   ┌───────────────────────────────┐                                 │
  │   │  Sequencer                    │                                 │
  │   │  allowed_peers=fullnode-1,    │                                 │
  │   │             fullnode-2        │                                 │
  │   └──────────────┬────────────────┘                                │
  │                  │ P2P                                              │
  │         ┌────────┴────────┐                                        │
  │         │                 │                                        │
  │   ┌─────▼──────┐   ┌──────▼─────┐                                 │
  │   │ fullnode-1 │   │ fullnode-2 │                                  │
  │   └─────┬──────┘   └──────┬─────┘                                 │
  │         │                 │                                        │
  │         │ P2P  (EXPECTED) │ P2P  (EXPECTED)                       │
  │         │                 │                                        │
  │   ┌─────▼─────────────────▼─────┐                                 │
  │   │     new-fullnode-N ...       │                                 │
  │   │  (unable to connect — BUG)  │                                 │
  │   └─────────────────────────────┘                                 │
  │                                                                     │
  └─────────────────────────────────────────────────────────────────────┘

  Legend:
    ──►  P2P connection (established / expected)
    BUG: new-fullnode-N cannot connect to fullnode-1 or fullnode-2
         because the sequencer's allowed_peers list is enforced there
Intended behavior (allowed_peers should be local)
  Sequencer  ←──(only accepts fullnode-1, fullnode-2)──►  fullnode-1
                                                       ──►  fullnode-2

  fullnode-1  ←──(no restriction; accepts any peer)──►  new-fullnode-N
  fullnode-2  ←──(no restriction; accepts any peer)──►  new-fullnode-N

Steps to Reproduce

  1. Start a network with: sequencer, fullnode-1, fullnode-2.
  2. Run the sequencer with --allowed_peers=fullnode-1,fullnode-2.
  3. Attempt to join a new fullnode that connects via P2P to fullnode-1 or fullnode-2.
  4. Observe: the new fullnode is rejected by fullnode-1/fullnode-2 despite them not having allowed_peers set.

Environment

  • Network: eden-testnet
  • Observed: week of 2026-04-14

Impact

Any new node attempting to sync via fullnode-1 or fullnode-2 is silently blocked, making fullnode only syncing through DA unless modifying the sequencer's allowed_peers list.

Linguagem predominante
Go
Estrelas
361
Forks
287
Merge médio
3d 11h
PRs com merge (30d)
11

Preparar o ambiente

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Mais de evstack/ev-node

Todas as issues de evstack/ev-node

Issues semelhantes

Mais issues de Go

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.