Bitcoin-Core
比特幣核心如何建立點對點網路
我試圖在網上尋找答案,但沒有找到任何答案。我的問題是:比特幣如何建立點對點網路。在所有客戶端之間建立一個中間有伺服器的集中式網路是微不足道的。然而,建立一個完全對等網路並不容易。這主要是由於 NAT 和防火牆。比特幣核心如何繞過 NAT 和防火牆。它是否使用打孔,如果是,是否有一個中央伺服器可以動態更新公共和私有 IP/埠?我想我只是想知道點對點網路是如何建立的。
比特幣 P2P 協議是基於 TCP/IP 的特定應用層。
如果節點本身沒有開放埠,則它們只能進行傳出連接。節點軟體使用 UPnP 之類的東西來請求 NAT 以打開埠,但如果失敗,節點的連接將是單向的。