When running geth --light the go-ethereum client somehow has to connect to full nodes to interact with.

Could geth connect to any full node on the network or does this require a special endpoint? How to run a "server" for light clients? And how do light clients discover my node?

2 Answers 2


A light server is a full node with "LES server" option enabled. This option is disabled by default (at least as long as the LES implementation is still in experimental stage), so light clients actually DO need a somewhat "special" endpoint. Run

geth --lightserv 25

to allocate max. 25% of CPU resources for serving clients.

Peer discovery is also experimental, LES uses a PoC test version of the planned new RLPx v5 discovery protocol that allows searching specifically for a certain kind of nodes (light servers in our case). It takes a few minutes for the server to start advertising itself on the network.


geth will connect to peers (up to 25 by default). There is no 'special endpoint.' In fact, that's the whole point.

I think you wording is a bit off when you say "How do you run a 'server' for light clients?" A geth node is a "server" (using your words). But I would rather say "Light nodes connect to full nodes." You don't have to do anything special, that's just how it works.

  • 1
    Well, that's why I'm asking, because Bitcoin light clients require servers to connect to which know how to deal with the light client requests.
    – q9f
    Commented Dec 31, 2016 at 7:29

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.