Ağ adresleri
Son düzenleme: @kaanmetu(opens in a new tab), Invalid DateTime
Ethereum düğümleri, eşlere bağlanmak için bazı temel bilgilerle kendilerini tanımlamalıdır. Herhangi bir potansiyel eşin bu bilgiyi yorumlayabilmesini sağlamak için, herhangi bir Ethereum düğümünün anlayabileceği üç standart formattan birinde iletilir: multiaddr, enode veya Ethereum Node Records (ENR'ler). ENR'ler, Ethereum ağ adresleri için geçerli standarttır.
Bu sayfayı anlamak için Ethereum'un ağ katmanı hakkında biraz bilgi sahibi olmak gerekir.
Orijinal Ethereum düğüm adresi formatı 'multiaddr' idi ('çoklu adresler'in kısaltması). Multiaddr, eşler arası ağlar için tasarlanmış evrensel bir biçimdir. Adresler, eğik çizgiyle ayrılmış anahtarlar ve değerlerle birlikte anahtar/değer çiftleri olarak temsil edilir. Örneğin, IPv4 adresi
192.168.22.27 olan bir düğüm için
33000 TCP bağlantı noktasını dinleyen multiaddr şöyle görünür:
/ip4/192.168.22.27/tcp/33000
Bir Ethereum düğümü için multiaddr, düğüm kimliğini (ortak anahtarlarının bir karması) içerir:
/ip4/192.168.22.27/tcp/33000/p2p/5t7Nv7dG2d6ffbvAiewVsEwWweU3LdebSqX2y1bPrW8br
Enode, bir URL adres formatı kullanarak bir Ethereum düğümünü tanımlamanın bir yoludur. Onaltılık düğüm kimliği, @ işareti kullanılarak ana bilgisayardan ayrılan URL'nin kullanıcı adı bölümünde kodlanır. Ana bilgisayar adı yalnızca bir IP adresi olarak verilebilir; DNS adlarına izin verilmez. Ana bilgisayar adı bölümündeki bağlantı noktası, TCP dinleme bağlantı noktasıdır. TCP ve UDP (keşif) bağlantı noktaları farklıysa, UDP bağlantı noktası "discport" sorgu parametresi olarak belirtilir
Aşağıdaki örnekte, düğüm URL'si, IP adresi
10.3.58.6, TCP bağlantı noktası
30303 ve UDP keşif bağlantı noktası
30301 olan bir düğümü tanımlar.
enode://email@example.com:30303?discport=30301
Ethereum Düğüm Kayıtları (ENR'ler), Ethereum'daki ağ adresleri için standart bir formattır. Çoklu adreslerin ve düğümlerin yerini alırlar. Bunlar özellikle yararlıdır çünkü düğümler arasında daha fazla bilgi alışverişine izin verirler. ENR; bir imza, sıra numarası ve imzaları oluşturup doğrulamak için kullanılan kimlik şemasını detaylandıran alanları içerir. ENR, anahtar/değer çiftleri olarak düzenlenen rastgele verilerle de doldurulabilir. Bu anahtar/değer çiftleri, düğümün IP adresini ve düğümün kullanabileceği alt protokoller hakkındaki bilgileri içerir. Consensus istemcileri, önyükleme düğümlerini tanımlamak için belirli bir ENR yapısı(opens in a new tab) kullanır ve ayrıca mevcut Ethereum çatalı ve doğrulama dedikodusu alt ağı hakkında bilgi içeren bir
eth2 alan içerir (bu, düğümü, onayları bir araya toplanmış belirli bir eşler grubuna bağlar).