Versions in this module Expand all Collapse all v0 v0.0.2 Dec 9, 2025 Changes in this version + type Config struct + BindIP net.IP + BindPort uint16 + CLBootnodes []string + CLConfig *clconfig.Config + Database *db.Database + ELBootnodes []string + ELConfig *elconfig.ChainConfig + ELGenesisHash [32]byte + ELGenesisTime uint64 + ENRIP net.IP + ENRIP6 net.IP + ENRPort uint16 + EnableDiscv4 bool + EnableDiscv5 bool + EnableIPDiscovery bool + GracePeriod time.Duration + Logger logrus.FieldLogger + MaxActiveNodes int + MaxFailures int + MaxNodeAge time.Duration + MaxNodesPerIP int + MaxSessions int + PingInterval time.Duration + PrivateKey *ecdsa.PrivateKey + SessionLifetime time.Duration + func DefaultConfig() *Config + func (c *Config) ApplyDefaults() + func (c *Config) HasCL() bool + func (c *Config) HasEL() bool + func (c *Config) Validate() error + type ENRManager struct + func NewENRManager(cfg *Config, localNode *v5node.Node) *ENRManager + func (m *ENRManager) FilterCLNode(record *enr.Record) bool + func (m *ENRManager) FilterELNode(record *enr.Record) (bool, elconfig.ForkID) + func (m *ENRManager) GetCLFilter() *clconfig.ForkDigestFilter + func (m *ENRManager) GetELFilter() *elconfig.ForkFilter + func (m *ENRManager) UpdateENR(currentBlock, currentTime uint64) error + func (m *ENRManager) UpdateENRWithIP(ip net.IP, port uint16) error + func (m *ENRManager) UpdateENRWithIP6(ip net.IP, port uint16) error + type Service struct + func New(cfg *Config) (*Service, error) + func (s *Service) CLConfig() *clconfig.Config + func (s *Service) CLNodeDB() *nodes.NodeDB + func (s *Service) CLTable() *nodes.FlatTable + func (s *Service) ELConfig() *elconfig.ChainConfig + func (s *Service) ELNodeDB() *nodes.NodeDB + func (s *Service) ELTable() *nodes.FlatTable + func (s *Service) ENRManager() *ENRManager + func (s *Service) LocalNode() *v5node.Node + func (s *Service) Start() error + func (s *Service) Stop() error