Author

Topic: Missing params desc. in wiki + selective binding ports to ip adresses not work. (Read 1282 times)

full member
Activity: 196
Merit: 103
gmaxwell:

First: Thank you for the sacrifice you do for bitcoin, it's not little. Much appreciated.

Can you confirm that binding to specific ports works with v0.9.3.0-g40d2041-beta? What exact commands are you using?

Code:
bitcoind --help | grep white
on v0.9.3.0-g40d2041-beta gives no ouput. I take it's because it wasn't in that version. Smiley

Thank you!
staff
Activity: 4284
Merit: 8808
It seems like -whitelist and -whitebind is missing from the wiki:
https://en.bitcoin.it/wiki/Running_Bitcoin
They are not yet in a released version of the software.

Quote
they also seem to be missing from the help output in --bitcoind
Yes they are,
$ ./bitcoind -help | grep white
  -whitebind=      Bind to given address and whitelist peers connecting to it. Use [host]:port notation for IPv6
  -whitelist=   Whitelist peers connecting from the given netmask or ip. Can be specified multiple times.


Quote
It's however not present in "bitcoind --help" output of Bitcoin Core Daemon version v0.9.3.0-g40d2041-beta.
Because it isn't in that version of the software.

Quote
In addition, I notice that the bitcoin core daemon by default binds to all interfaces? Would it be possible to bind only to one interface. For example, if you have a machine with several interfaces, you might want bitcoind only to bind to one or two of them.

Yes,
./bitcoind -help | grep bind
  -bind=           Bind to given address and always listen on it. Use [host]:port notation for IPv6
  -whitebind=      Bind to given address and whitelist peers connecting to it. Use [host]:port notation for IPv6
  -rpcbind=        Bind to given address to listen for JSON-RPC connections. Use [host]:port notation for IPv6. This option can be specified multiple times (default: bind to all interfaces)


Quote
For example, if you have lo,venet0:0 and venet0:1, you might only want to bind to lo and venet0:0, for example 127.0.0.1 and 222.222.222.222. I've played around with -bind and -externalip, but still the daemon is binding its port 8333 to all interfaces. I'd like to be able to control that behaviour. Is that possible as of yet?
Works for me, what are you setting, precisely?

Quote
And lastly from bitcoind -testnet getinfo on Bitcoin Core Daemon version v0.9.3.0-g40d2041-beta:
"errors" : "Warning: This version is obsolete, upgrade required!"
Is there no point in running a testnet node with this version number?
This is just caused because of people using weird version numbers on blocks in testnet, it's harmless.

Quote
Also, regarding the version number v0.9.3.0-g40d2041-beta, what does the g40d2041 part mean? And how is it decided what this value should be, is there any logical meaning to it?
The value there is the git commit id of the code being used.
full member
Activity: 196
Merit: 103
https://github.com/bitcoin/bitcoin/blob/f984c7d7adf40e8517437f7b8c3704a63e1ca034/src/init.cpp

See line 865:
 if (mapArgs.count("-bind") || mapArgs.count("-whitebind")) {

Also:

https://github.com/bitcoin/bitcoin/pull/4378

It seems like -whitelist and -whitebind is missing from the wiki:
https://en.bitcoin.it/wiki/Running_Bitcoin

they also seem to be missing from the help output in --bitcoind

Should that not be fixed? If someone with wiki access and having a github account would fix it, it would be nice. It should be included, no? The 2nd link in this post is dated july 14 2014.

If someone haven't fixed it until I get back, I will see if I can fix it myself.

However, it seems it's added to the bitcoind --help output:
https://github.com/bitcoin/bitcoin/blob/f984c7d7adf40e8517437f7b8c3704a63e1ca034/src/init.cpp

Line 278 onwards.

It's however not present in "bitcoind --help" output of Bitcoin Core Daemon version v0.9.3.0-g40d2041-beta.

I was trying to see when line 278 onwards in init.cpp was added, is there some easy way to see when it was last changed and by whom?

I think it should be a rule to update both the wiki and the help output in the source once for anyone adding a new parameter.

In addition, I notice that the bitcoin core daemon by default binds to all interfaces? Would it be possible to bind only to one interface. For example, if you have a machine with several interfaces, you might want bitcoind only to bind to one or two of them.

For example, if you have lo,venet0:0 and venet0:1, you might only want to bind to lo and venet0:0, for example 127.0.0.1 and 222.222.222.222. I've played around with -bind and -externalip, but still the daemon is binding its port 8333 to all interfaces. I'd like to be able to control that behaviour. Is that possible as of yet?

I will look into the source code and see what I can find out when I get back, unless some other bright heads have already figured it out.

And lastly from bitcoind -testnet getinfo on Bitcoin Core Daemon version v0.9.3.0-g40d2041-beta:

"errors" : "Warning: This version is obsolete, upgrade required!"

Is there no point in running a testnet node with this version number?

Also, regarding the version number v0.9.3.0-g40d2041-beta, what does the g40d2041 part mean? And how is it decided what this value should be, is there any logical meaning to it?
Jump to: