Hello,
We've recently run into issues syncing our Mythos nodes, and have tracked it down to the chainspec files' bootnodes simply not working any longer.
For each multiaddr in chainspecs/mythos-raw.json's bootNodes list, we performed a liveness probe:
/tcp/ endpoints: resolve the DNS name and attempt a TCP handshake to the advertised port.
/wss/ (and /tls/ws/) endpoints: resolve the DNS name, complete the TLS handshake against the advertised port, then send an HTTP Upgrade: websocket request and expect 101 Switching Protocols.
This is intentionally a lower bar than a real libp2p connection — it does not perform the Noise handshake or Identify exchange, so a "pass" only means "reachable and speaks WS." That makes the failure modes below unambiguous: they fail well before any libp2p-level negotiation would even start.
Script output if interesting to know:
./polkadot-bootnode-checker.py --spec-url https://raw.githubusercontent.com/paritytech/project-mythical/refs/heads/main/chainspecs/mythos-raw.json
[FAIL] net: [Errno -5] No address associated with hostname /dns/polkadot-mythos-connect-0.polkadot.io/tcp/30333/p2p/12D3KooWJ3zJMjcReodmHx5KLm9LwbFtLvScncqj89UX5j8VYMUf
[FAIL] net: [Errno -5] No address associated with hostname /dns/polkadot-mythos-connect-0.polkadot.io/tcp/443/wss/p2p/12D3KooWJ3zJMjcReodmHx5KLm9LwbFtLvScncqj89UX5j8VYMUf
[FAIL] net: [Errno -5] No address associated with hostname /dns/polkadot-mythos-connect-1.polkadot.io/tcp/30333/p2p/12D3KooWLin9rPs8irgJZgFTab6nhQjFSVp6xYTPTrLGrbjZypeu
[FAIL] net: [Errno -5] No address associated with hostname /dns/polkadot-mythos-connect-1.polkadot.io/tcp/443/wss/p2p/12D3KooWLin9rPs8irgJZgFTab6nhQjFSVp6xYTPTrLGrbjZypeu
[FAIL] net: [Errno 113] Connect call failed ('104.247.178.10', 8710) /dns/boot.helikon.io/tcp/8710/p2p/12D3KooWJkp1w3AqnppvoZWvUv393PwaNA5MfDc1LceaLvqwZgwr
[FAIL] net: [Errno 111] Connect call failed ('104.247.178.10', 8712) /dns/boot.helikon.io/tcp/8712/wss/p2p/12D3KooWJkp1w3AqnppvoZWvUv393PwaNA5MfDc1LceaLvqwZgwr
[FAIL] net: [Errno 113] Connect call failed ('195.144.22.130', 11433) /dns/boot.metaspan.io/tcp/11433/p2p/12D3KooWQyZLieszShULfKAM6Ju9txiv2u9a6QYS5uQd1sEJc3HZ
[FAIL] timeout after 8.0s /dns/boot.metaspan.io/tcp/11436/wss/p2p/12D3KooWQyZLieszShULfKAM6Ju9txiv2u9a6QYS5uQd1sEJc3HZ
[FAIL] RuntimeError: WS upgrade rejected: 'HTTP/1.0 503 Service Unavailable' /dns/mythos-boot-ng.dwellir.com/tcp/443/wss/p2p/12D3KooWNXgPTbaAARxVMX9aSLygkqhcWqdbA318tyC3rdy4bgB2
[FAIL] net: [Errno 113] Connect call failed ('102.69.240.202', 30376) /dns/mythos-boot-ng.dwellir.com/tcp/30376/p2p/12D3KooWNXgPTbaAARxVMX9aSLygkqhcWqdbA318tyC3rdy4bgB2
[FAIL] timeout after 8.0s /dns/mythos-bootnode.radiumblock.com/tcp/30333/p2p/12D3KooWN2F6hiks7re1Y4pxQQvzCyrnCCX8vyhfRrU4xqky6LD5
[FAIL] timeout after 8.0s /dns/mythos-bootnode.radiumblock.com/tcp/30336/wss/p2p/12D3KooWN2F6hiks7re1Y4pxQQvzCyrnCCX8vyhfRrU4xqky6LD5
0/12 bootnodes reachable (shallow)
Hello,
We've recently run into issues syncing our Mythos nodes, and have tracked it down to the chainspec files' bootnodes simply not working any longer.
For each multiaddr in
chainspecs/mythos-raw.json'sbootNodeslist, we performed a liveness probe:/tcp/endpoints: resolve the DNS name and attempt a TCP handshake to the advertised port./wss/(and/tls/ws/) endpoints: resolve the DNS name, complete the TLS handshake against the advertised port, then send an HTTPUpgrade: websocketrequest and expect 101 Switching Protocols.This is intentionally a lower bar than a real libp2p connection — it does not perform the Noise handshake or Identify exchange, so a "pass" only means "reachable and speaks WS." That makes the failure modes below unambiguous: they fail well before any libp2p-level negotiation would even start.
Script output if interesting to know: