<p>Simnet is only available for btcd (bitcoin node) and lnd (lightning node) afaik, while regtest is also available for bitcoind (bitcoin node), lnd and eclair (lightning nodes). The two modes are similar, according to documenation of LND:</p>

<blockquote>
  <p><a href="https://github.com/lightningnetwork/lnd/blob/master/docs/INSTALL.md#simnet-vs-testnet-development" rel="nofollow noreferrer">Simnet is similar to regtest in that you'll be able to instantly mine blocks as needed to test lnd locally</a></p>
</blockquote>

<p>Both also are similar in the fact that the payment addresses are unique, to prevent confusion with the main network.</p>

<p>Where they differ, I think, is that simnet goes a bit further and also <a href="https://gist.github.com/davecgh/2992ed85d41307e794f6#file-using_btcd_simnet-md" rel="nofollow noreferrer">applies some network changes to disable things like peer discovery</a>.</p>

<p>But I couldn't find conclusive evidence for this. Since I do a lot of tests with multiple Lightning clients, I tend to use regtest, since that's more broadly supported.</p>

CC BY-SA 4.0
2022-03-18T18:48:30.990Z
How do I create a test network w/ 2 (or more ) physical nodes each on their own machine?
Can I do this w/ simnet or regtest??
JDOaktown
CC BY-SA 4.0
2022-03-19T07:53:50.037Z
Bitcoin nodes or Lightning nodes? Either way: yes you can do that with either simnet or regtest. But why are you thinking about doing tests with two *physical* machines? Tools like [Simverse](https://github.com/darwin/simverse) or [Polar](https://github.com/jamaljsr/polar) let you spin up multiple docker containers running Bitcoin core or one of the three main Lightning clients. You can do all the testing on a single machine. I've wrote a few blog posts on the former tool: https://www.gijsvandam.nl/topics/simverse/
gijswijs
CC BY-SA 4.0
2022-03-19T17:41:46.477Z
gisjswijs: Why would I choose simnet vs. regtest (or vice versa) for this?
JDOaktown
CC BY-SA 4.0
2022-03-19T17:41:55.757Z
Thanks, I know I can run everything on one machine. & I have.  I'd like to run 2 (or more) physical machines because it more closely models the real world.
JDOaktown
CC BY-SA 4.0
2022-03-21T02:11:18.367Z
@JDOaktown I would use regtest. Simnet is only supported by Lightning Labs products (lnd, btcd) so it might make sense to use it when you only use those products, but even then I would prefer regtest, just because it's more widely supported.
gijswijs
CC BY-SA 4.0
2019-07-29T00:13:47.150Z
2019-07-29T00:13:47.150Z
gijswijs
<p>btcd, and presumably other bitcoin node implementations, seem to have 4 network options:</p>

<ol>
<li>mainnet</li>
<li>testnet</li>
<li>regtest</li>
<li>simnet.</li>
</ol>

<p>I get that mainnet and testnet both are "public" in that your node will communicate with other nodes and that both have an existing blockchain and genesis block.</p>

<p>However, from what I can tell, both simenet and regtest both create a local only blockchain, and both will create a new genesis block. I this case, what is the difference, and which is better (easier) for developing bitcoin applications?</p>

<p>This is what the documentation has to say:</p>

<pre><code>--regtest             Use the regression test network
--simnet              Use the simulation test network
</code></pre>

<regtest>
bitcoin node: what is the difference between simnet and regtest?
John Little
# bitcoin node: what is the difference between simnet and regtest?

(Asked by: username_0 on 2018-11-21)

btcd, and presumably other bitcoin node implementations, seem to have 4 network options:

1. mainnet
2. testnet
3. regtest
4. simnet.

I get that mainnet and testnet both are "public" in that your node will communicate with other nodes and that both have an existing blockchain and genesis block.

However, from what I can tell, both simenet and regtest both create a local only blockchain, and both will create a new genesis block. I this case, what is the difference, and which is better (easier) for developing bitcoin applications?

This is what the documentation has to say:

```
--regtest             Use the regression test network
--simnet              Use the simulation test network

```

**Tags:** regtest


---

## 1 answers

### Answer by username_1 on 2019-07-29. Score: 2

Simnet is only available for btcd (bitcoin node) and lnd (lightning node) afaik, while regtest is also available for bitcoind (bitcoin node), lnd and eclair (lightning nodes). The two modes are similar, according to documenation of LND:

> [Simnet is similar to regtest in that you'll be able to instantly mine blocks as needed to test lnd locally](https://github.com/lightningnetwork/lnd/blob/master/docs/INSTALL.md#simnet-vs-testnet-development)

Both also are similar in the fact that the payment addresses are unique, to prevent confusion with the main network.

Where they differ, I think, is that simnet goes a bit further and also [applies some network changes to disable things like peer discovery](https://gist.github.com/davecgh/2992ed85d41307e794f6#file-using_btcd_simnet-md).

But I couldn't find conclusive evidence for this. Since I do a lot of tests with multiple Lightning clients, I tend to use regtest, since that's more broadly supported.

> **Comments:**
> **username_2**: How do I create a test network w/ 2 (or more ) physical nodes each on their own machine? Can I do this w/ simnet or regtest??  
> **username_1**: Bitcoin nodes or Lightning nodes? Either way: yes you can do that with either simnet or regtest. But why are you thinking about doing tests with two *physical* machines? Tools like [Simverse](https://github.com/darwin/simverse) or [Polar](https://github.com/jamaljsr/polar) let you spin up multiple docker containers running Bitcoin core or one of the three main Lightning clients. You can do all the testing on a single machine. I've wrote a few blog posts on the former tool: https://www.gijsvandam.nl/topics/simverse/  
> **username_2**: gisjswijs: Why would I choose simnet vs. regtest (or vice versa) for this?  
> **username_2**: Thanks, I know I can run everything on one machine. & I have.  I'd like to run 2 (or more) physical machines because it more closely models the real world.  
> **username_1**: @username_2 I would use regtest. Simnet is only supported by Lightning Labs products (lnd, btcd) so it might make sense to use it when you only use those products, but even then I would prefer regtest, just because it's more widely supported.  

---

