diff options
author | Péter Szilágyi <peterke@gmail.com> | 2016-11-09 22:35:04 +0800 |
---|---|---|
committer | Péter Szilágyi <peterke@gmail.com> | 2016-11-15 00:00:14 +0800 |
commit | b61f48e5aad9cf897f5655a0db002a3349109c67 (patch) | |
tree | 32b0d7d4a126ee444e1cd563c5d4d8ebadef09ec /node | |
parent | de4b39a1a32a61a9683a036b2e27e8df7cd4c9ff (diff) | |
download | go-tangerine-b61f48e5aad9cf897f5655a0db002a3349109c67.tar go-tangerine-b61f48e5aad9cf897f5655a0db002a3349109c67.tar.gz go-tangerine-b61f48e5aad9cf897f5655a0db002a3349109c67.tar.bz2 go-tangerine-b61f48e5aad9cf897f5655a0db002a3349109c67.tar.lz go-tangerine-b61f48e5aad9cf897f5655a0db002a3349109c67.tar.xz go-tangerine-b61f48e5aad9cf897f5655a0db002a3349109c67.tar.zst go-tangerine-b61f48e5aad9cf897f5655a0db002a3349109c67.zip |
cmd, mobile, node, p2p: surface the discovery V5 bootnodes
Diffstat (limited to 'node')
-rw-r--r-- | node/config.go | 14 | ||||
-rw-r--r-- | node/node.go | 31 |
2 files changed, 27 insertions, 18 deletions
diff --git a/node/config.go b/node/config.go index dbefcb8a5..62655f237 100644 --- a/node/config.go +++ b/node/config.go @@ -32,6 +32,7 @@ import ( "github.com/ethereum/go-ethereum/logger" "github.com/ethereum/go-ethereum/logger/glog" "github.com/ethereum/go-ethereum/p2p/discover" + "github.com/ethereum/go-ethereum/p2p/discv5" "github.com/ethereum/go-ethereum/p2p/nat" ) @@ -95,16 +96,23 @@ type Config struct { // or not. Disabling is usually useful for protocol debugging (manual topology). NoDiscovery bool + // DiscoveryV5 specifies whether the the new topic-discovery based V5 discovery + // protocol should be started or not. DiscoveryV5 bool - // Bootstrap nodes used to establish connectivity with the rest of the network. + // Listener address for the V5 discovery protocol UDP traffic. + DiscoveryV5Addr string + + // BootstrapNodes used to establish connectivity with the rest of the network. BootstrapNodes []*discover.Node + // BootstrapNodesV5 used to establish connectivity with the rest of the network + // using the V5 discovery protocol. + BootstrapNodesV5 []*discv5.Node + // Network interface address on which the node should listen for inbound peers. ListenAddr string - ListenAddrV5 string - // If set to a non-nil value, the given NAT port mapper is used to make the // listening port available to the Internet. NAT nat.Interface diff --git a/node/node.go b/node/node.go index fb11696fa..d49ae3a45 100644 --- a/node/node.go +++ b/node/node.go @@ -154,21 +154,22 @@ func (n *Node) Start() error { // Initialize the p2p server. This creates the node key and // discovery databases. n.serverConfig = p2p.Config{ - PrivateKey: n.config.NodeKey(), - Name: n.config.NodeName(), - Discovery: !n.config.NoDiscovery, - DiscoveryV5: n.config.DiscoveryV5, - BootstrapNodes: n.config.BootstrapNodes, - StaticNodes: n.config.StaticNodes(), - TrustedNodes: n.config.TrusterNodes(), - NodeDatabase: n.config.NodeDB(), - ListenAddr: n.config.ListenAddr, - ListenAddrV5: n.config.ListenAddrV5, - NAT: n.config.NAT, - Dialer: n.config.Dialer, - NoDial: n.config.NoDial, - MaxPeers: n.config.MaxPeers, - MaxPendingPeers: n.config.MaxPendingPeers, + PrivateKey: n.config.NodeKey(), + Name: n.config.NodeName(), + Discovery: !n.config.NoDiscovery, + DiscoveryV5: n.config.DiscoveryV5, + DiscoveryV5Addr: n.config.DiscoveryV5Addr, + BootstrapNodes: n.config.BootstrapNodes, + BootstrapNodesV5: n.config.BootstrapNodesV5, + StaticNodes: n.config.StaticNodes(), + TrustedNodes: n.config.TrusterNodes(), + NodeDatabase: n.config.NodeDB(), + ListenAddr: n.config.ListenAddr, + NAT: n.config.NAT, + Dialer: n.config.Dialer, + NoDial: n.config.NoDial, + MaxPeers: n.config.MaxPeers, + MaxPendingPeers: n.config.MaxPendingPeers, } running := &p2p.Server{Config: n.serverConfig} glog.V(logger.Info).Infoln("instance:", n.serverConfig.Name) |