<p>i can receive the <code>version</code> message but node does not respond to my <code>getblocks</code> request.</p>
<p>this my constructed byte array :</p>
<pre><code>Magic = 249,190,180,217
Command = 103,101,116,98,108,111,99,107,115,0,0,0
Length = 69,0,0,0
Checksum = 11,166,179,194
Protocol Version = 127,17,1,0
Hash Number = 1
Hash = 246,46,200,160,107,31,59,39,28,106,42,100,234,54,127,244,57,
  225,56,86,30,165,128,201,134,109,145,0,0,0,0
StopHash = 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0&gt;&gt;

Request = Magic + Command + Length + Checksum + Protocol Version + Hash Number + Hash + StopHash
</code></pre>
<p>this is the <code>request</code> i send and the node and get no response and i don't know why.
i also read bitcoin developer guide and it did not help.</p>
<p>the version message :</p>
<pre><code>249,190,180,217 -&gt; magic
118,101,114,115,105,111,110,0,0,0,0,0 -&gt; command
85,0,0,0 -&gt; length
58,51,118,189, -&gt; checksum
127,17,1,0 -&gt; version
1,0,0,0,0,0,0,0 &gt; options
144,189,33,101,0,0,0 -&gt;timestamp
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 -&gt; src and dest addrs
230,85,204,238,180,118,227,128 -&gt; nonce
0 -&gt; user_agent
0,0,0,0 - height
</code></pre>
<p>thanks in advance.</p>

CC BY-SA 4.0
2023-10-07T20:47:31.067Z
Can you paste the full sequence of messages sent and received before this `getblocks` (including `version` and `verack` in particular).
Pieter Wuille
CC BY-SA 4.0
2023-10-07T20:49:41.767Z
should i send them first before this request? @PieterWuille
Monte Conte
CC BY-SA 4.0
2023-10-07T20:53:46.063Z
Yes, you must respond to the received version with a verack, and you must send a version message yourself. Without that, the connection is not considered fully established.
Pieter Wuille
CC BY-SA 4.0
2023-10-07T21:04:59.717Z
i just notice the response is not verack, its again a version  message. does that mean i'm sending it wrong? @PieterWuille
Monte Conte
CC BY-SA 4.0
2023-10-07T21:06:50.457Z
question updated @PieterWuille
Monte Conte
CC BY-SA 4.0
2023-10-07T21:12:09.247Z
When you connect to a node, you send them a "version" message first. They will send you their own "version", and will acknowledge your version with a verack. Then you send them a verack acknowledging their version. After that point, the connection is established.
Pieter Wuille
CC BY-SA 4.0
2023-10-07T21:29:53.220Z
thanks @PieterWuille that helped alot,
Monte Conte
<full-node>
Node Does not Response the GetBlocks Request
Monte Conte
# Node Does not Response the GetBlocks Request

(Asked by: username_0 on 2023-10-07)

i can receive the version message but node does not respond to my getblocks request.
this my constructed byte array :
Magic = 249,190,180,217
Command = 103,101,116,98,108,111,99,107,115,0,0,0
Length = 69,0,0,0
Checksum = 11,166,179,194
Protocol Version = 127,17,1,0
Hash Number = 1
Hash = 246,46,200,160,107,31,59,39,28,106,42,100,234,54,127,244,57,
  225,56,86,30,165,128,201,134,109,145,0,0,0,0
StopHash = 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0>>

Request = Magic + Command + Length + Checksum + Protocol Version + Hash Number + Hash + StopHash

this is the request i send and the node and get no response and i don't know why.
i also read bitcoin developer guide and it did not help.
the version message :
249,190,180,217 -> magic
118,101,114,115,105,111,110,0,0,0,0,0 -> command
85,0,0,0 -> length
58,51,118,189, -> checksum
127,17,1,0 -> version
1,0,0,0,0,0,0,0 > options
144,189,33,101,0,0,0 ->timestamp
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 -> src and dest addrs
230,85,204,238,180,118,227,128 -> nonce
0 -> user_agent
0,0,0,0 - height

thanks in advance.

**Tags:** full-node

> **Comments:**
> **username_1**: Can you paste the full sequence of messages sent and received before this `getblocks` (including `version` and `verack` in particular).  
> **username_0**: should i send them first before this request? @PieterWuille  
> **username_1**: Yes, you must respond to the received version with a verack, and you must send a version message yourself. Without that, the connection is not considered fully established.  
> **username_0**: i just notice the response is not verack, its again a version  message. does that mean i'm sending it wrong? @PieterWuille  
> **username_0**: question updated @PieterWuille  
> **username_1**: When you connect to a node, you send them a "version" message first. They will send you their own "version", and will acknowledge your version with a verack. Then you send them a verack acknowledging their version. After that point, the connection is established.  
> **username_0**: thanks @PieterWuille that helped alot,  

---

## 0 answers

