<p>Electrum has a list of default servers which you can find here: <a href="https://github.com/spesmilo/electrum/blob/afa1a4d22a31d23d088c6670e1588eed32f7114d/lib/network.py#L57" rel="nofollow noreferrer">https://github.com/spesmilo/electrum/blob/afa1a4d22a31d23d088c6670e1588eed32f7114d/lib/network.py#L57</a>. However there is no list of all Electrum servers just like there is no list of all Bitcoin nodes. This is because Electrum servers are distributed like Bitcoin nodes and anyone can run one. Electrum has a peer discovery protocol which you can read about here: <a href="https://github.com/kyuupichan/electrumx/blob/master/docs/PEER_DISCOVERY.rst" rel="nofollow noreferrer">https://github.com/kyuupichan/electrumx/blob/master/docs/PEER_DISCOVERY.rst</a>. The Electrum servers will connect to each other and ask each other for a list of other Electrum servers each peer knows about. So each Electrum server builds up its own database of other Electrum servers. Then when a client connects, it asks the servers it is connected to for a list of other Electrum servers and the client also builds up its own peer database. The message for getting a list of other Electrum servers is <code>servers.peers.subscribe</code> and you can read about that here: <a href="https://github.com/kyuupichan/electrumx/blob/master/docs/protocol-methods.rst#serverpeerssubscribe" rel="nofollow noreferrer">https://github.com/kyuupichan/electrumx/blob/master/docs/protocol-methods.rst#serverpeerssubscribe</a></p>
<p>So if you want to find available Electrum servers, you can begin with the default Electrum servers. Then ask each server for a list of other Electrum servers, connect to those, and so on and so forth. You do this to build up a local database of Electrum servers.</p>

CC BY-SA 4.0
2017-09-12T14:28:02.900Z
2020-11-27T01:34:15.623Z
2020-11-27T01:34:15.623Z
Ava Chow
<p>I'm developing software that will connect to &quot;Electrum Servers&quot;, the same public servers that Electrum Wallet connects to. The user will be able to specify a custom host if  they want, so it will be possible create a server and use it.</p>
<p>The main question is… How can I find the list of all the Electrum servers? I found <a href="https://1209k.com/bitcoin-eye/ele.php?chain=btc" rel="nofollow noreferrer">this page that lists all the servers</a>. How did this website get this information?</p>
<p>How can I create something to automatically get the all the Electrum servers? If I want to create a Website/API to provide this information, how can I get it?</p>

<electrum><stratum>
How do I find a list of all Electrum public servers?
Inkeliz
# How do I find a list of all Electrum public servers?

(Asked by: username_0 on 2017-09-06)

I'm developing software that will connect to "Electrum Servers", the same public servers that Electrum Wallet connects to. The user will be able to specify a custom host if they want, so it will be possible create a server and use it.

The main question is… How can I find the list of all the Electrum servers? I found [this page that lists all the servers](https://1209k.com/bitcoin-eye/ele.php?chain=btc). How did this website get this information?

How can I create something to automatically get the all the Electrum servers? If I want to create a Website/API to provide this information, how can I get it?

**Tags:** electrum, stratum


---

## 1 answers

### Answer by username_1 on 2017-09-12. Score: 9 | Accepted answer

Electrum has a list of default servers which you can find here: <https://github.com/spesmilo/electrum/blob/afa1a4d22a31d23d088c6670e1588eed32f7114d/lib/network.py#L57>. However there is no list of all Electrum servers just like there is no list of all Bitcoin nodes. This is because Electrum servers are distributed like Bitcoin nodes and anyone can run one. Electrum has a peer discovery protocol which you can read about here: <https://github.com/kyuupichan/electrumx/blob/master/docs/PEER_DISCOVERY.rst>. The Electrum servers will connect to each other and ask each other for a list of other Electrum servers each peer knows about. So each Electrum server builds up its own database of other Electrum servers. Then when a client connects, it asks the servers it is connected to for a list of other Electrum servers and the client also builds up its own peer database. The message for getting a list of other Electrum servers is `servers.peers.subscribe` and you can read about that here: <https://github.com/kyuupichan/electrumx/blob/master/docs/protocol-methods.rst#serverpeerssubscribe>

So if you want to find available Electrum servers, you can begin with the default Electrum servers. Then ask each server for a list of other Electrum servers, connect to those, and so on and so forth. You do this to build up a local database of Electrum servers.


---

