<div dir="ltr"><div>I believe the requests Jeff is seeing came from my crawler although anyone could be running it (<a href="https://github.com/ayeowch/bitnodes" target="_blank">https://github.com/ayeowch/bitnodes</a>) since there is no IP address in the log to confirm the source of the requests.</div>
<div><br></div><div>This is a sample log of an actual request from my crawler at <a href="http://148.251.238.178">148.251.238.178</a>:</div><div><i>2014-07-30 22:43:54 receive version message: /getaddr.bitnodes.io:0.1/: version 70001, blocks=313244, us=X.X.X.X:8333, them=<a href="http://0.0.0.0:0">0.0.0.0:0</a>, peer=<b>148.251.238.178</b>:47635</i></div>
<div>
<p class="">Currently, the crawler takes a full snapshot of the network of reachable nodes as soon as it is done with previous snapshot. I want to be able to diff between the snapshots to get the join and leave nodes periodically. Each full snapshot is taken on average between 3 to 4 minutes hence the requests that you see from the crawler every 3 to 4 minutes.</p>
</div><div>I have a task in my schedule (<a href="https://github.com/ayeowch/bitnodes/wiki/Schedule#crawlpypingpy">https://github.com/ayeowch/bitnodes/wiki/Schedule#crawlpypingpy</a>) to improve upon this method by skipping a new connection with currently reachable nodes while still being able to perform the diff.</div>
</div><div class="gmail_extra"><br><br><div class="gmail_quote">On Wed, Jul 30, 2014 at 11:22 PM, Jeff Garzik <span dir="ltr">&lt;<a href="mailto:jgarzik@bitpay.com" target="_blank">jgarzik@bitpay.com</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Seeing this on one of my public nodes:<br>
2014-07-30 13:13:26 receive version message:<br>
/getaddr.bitnodes.io:0.1/: version 70001, blocks=313169,<br>
us=<a href="http://162.219.2.72:8333" target="_blank">162.219.2.72:8333</a>, peer=11847<br>
2014-07-30 13:13:33 receive version message:<br>
/getaddr.bitnodes.io:0.1/: version 70001, blocks=290000,<br>
us=<a href="http://162.219.2.72:8333" target="_blank">162.219.2.72:8333</a>, peer=11848<br>
2014-07-30 13:14:21 receive version message:<br>
/getaddr.bitnodes.io:0.1/: version 70001, blocks=313169,<br>
us=<a href="http://162.219.2.72:8333" target="_blank">162.219.2.72:8333</a>, peer=11849<br>
<br>
That is abusive, taking up public slots.  There is no reason to<br>
connect so rapidly to the same node.<br>
<br>
Other seeders are also rapidly reconnect&#39;ers, though the time window<br>
is slightly more wide:<br>
2014-07-30 13:09:35 receive version message: /bitcoinseeder:0.01/:<br>
version 60000, blocks=230000, us=<a href="http://162.219.2.72:8333" target="_blank">162.219.2.72:8333</a>, peer=11843<br>
2014-07-30 13:12:42 receive version message: /bitcoinseeder:0.01/:<br>
version 60000, blocks=230000, us=<a href="http://162.219.2.72:8333" target="_blank">162.219.2.72:8333</a>, peer=11846<br>
<br>
The version message helpfully tells me my own IP address but not theirs ;p<br>
<span class="HOEnZb"><font color="#888888"><br>
--<br>
Jeff Garzik<br>
Bitcoin core developer and open source evangelist<br>
BitPay, Inc.      <a href="https://bitpay.com/" target="_blank">https://bitpay.com/</a><br>
</font></span></blockquote></div><br></div>