Giter Club home page Giter Club logo

Comments (4)

meowsbits avatar meowsbits commented on June 20, 2024

Looks like you're using a config file -- can you please show the relevant lines as you have them configured? This will help us replicate and better understand your issue.

I'm confused because the DNS lines are EthDiscoveryURLs and SnapDiscoveryURLs, and your screenshot shows BootstrapNodes.

from core-geth.

meowsbits avatar meowsbits commented on June 20, 2024

Thanks to @ziogaschr's investigation, we've reproduced your report with

BootstrapNodes = ["enode://6b6ea53a498f0895c10269a3a74b777286bd467de6425c3b512740fcc7fbc8cd281dca4ab041dd97d62b38f3d0b5b05e71f48d28a3a2f4b5de40fe1f6bf05531@mai829.ddnssdsadsa.net:30303"]

This host is unreachable:

dig mai829.ddnssdsadsa.net

; <<>> DiG 9.16.1-Ubuntu <<>> mai829.ddnssdsadsa.net
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 7985
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 65494
;; QUESTION SECTION:
;mai829.ddnssdsadsa.net.                IN      A

;; Query time: 131 msec
;; SERVER: 127.0.0.53#53(127.0.0.53)
;; WHEN: Mon Feb 05 11:46:42 MST 2024
;; MSG SIZE  rcvd: 51

Geth is exiting because it can't resolve the host name in your configuration, which its treating like an invalid enode address. You can avoid this error by replacing the host name with an IP, and geth should then tolerate even unavailable bootnodes.

// Parse the IP address.
    ip := net.ParseIP(u.Hostname())
    if ip == nil {
        ips, err := lookupIPFunc(u.Hostname())
        if err != nil {
            return nil, err
        }
        ip = ips[0]
    }

https://github.com/etclabscore/core-geth/blob/master/p2p/enode/urlv4.go#L110

from core-geth.

LordExodus avatar LordExodus commented on June 20, 2024

Isn't it possible for GETH to skip the nodes that are not reachable even with DNS names? Just like it is with an IP?

from core-geth.

ziogaschr avatar ziogaschr commented on June 20, 2024

This is by design based on the specification.

The hostname can only be given as an IP address; DNS names are not allowed.

Source: https://ethereum.org/developers/docs/networking-layer/network-addresses#enode

p.s.: I can't find the exact specification, still I was able to find mentions of it on all major clients documentation.

from core-geth.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.