Connection #0 to host icp0.io left intact

I am encountering an issue while attempting to register a custom domain. When I run the following command:

// curl -sLv -X POST
// -H ‘Content-Type: application/json’
// https://icp0.io/registrations
// --data @- <<‘EOF’
// {
// “name”: “jeevankumar.me
// }
// EOF

I receive an error message indicating that the domain is missing from the canister’s list of known domains. The specific error is:

domain is missing from canister l6urk-aiaaa-aaaal-ajo6a-cai list of known domains

  • Trying 147.28.156.118:443…
  • Trying 2604:1380:40e1:4704:5000:48ff:fedf:c138:443…
  • Immediate connect fail for 2604:1380:40e1:4704:5000:48ff:fedf:c138: Network is unreachable
  • Trying 2604:1380:40e1:4701:5000:59ff:fe4d:3ea2:443…
  • Immediate connect fail for 2604:1380:40e1:4701:5000:59ff:fe4d:3ea2: Network is unreachable
  • Trying 2604:1380:40e1:4703:5000:48ff:fedf:c137:443…
  • Immediate connect fail for 2604:1380:40e1:4703:5000:48ff:fedf:c137: Network is unreachable
  • Trying 2604:1380:40e1:4702:5000:48ff:fedf:c136:443…
  • Immediate connect fail for 2604:1380:40e1:4702:5000:48ff:fedf:c136: Network is unreachable
  • Connected to icp0.io (147.28.156.118) port 443 (#0)
  • ALPN, offering h2
  • ALPN, offering http/1.1
  • CAfile: /etc/ssl/certs/ca-certificates.crt
  • CApath: /etc/ssl/certs
  • TLSv1.0 (OUT), TLS header, Certificate Status (22):
  • TLSv1.3 (OUT), TLS handshake, Client hello (1):
  • TLSv1.2 (IN), TLS header, Certificate Status (22):
  • TLSv1.3 (IN), TLS handshake, Server hello (2):
  • TLSv1.2 (OUT), TLS header, Finished (20):
  • TLSv1.3 (OUT), TLS change cipher, Change cipher spec (1):
  • TLSv1.2 (OUT), TLS header, Certificate Status (22):
  • TLSv1.3 (OUT), TLS handshake, Client hello (1):
  • TLSv1.2 (IN), TLS header, Finished (20):
  • TLSv1.2 (IN), TLS header, Certificate Status (22):
  • TLSv1.3 (IN), TLS handshake, Server hello (2):
  • TLSv1.2 (IN), TLS header, Supplemental data (23):
  • TLSv1.3 (IN), TLS handshake, Encrypted Extensions (8):
  • TLSv1.2 (IN), TLS header, Supplemental data (23):
  • TLSv1.3 (IN), TLS handshake, Certificate (11):
  • TLSv1.2 (IN), TLS header, Supplemental data (23):
  • TLSv1.3 (IN), TLS handshake, CERT verify (15):
  • TLSv1.2 (IN), TLS header, Supplemental data (23):
  • TLSv1.3 (IN), TLS handshake, Finished (20):
  • TLSv1.2 (OUT), TLS header, Supplemental data (23):
  • TLSv1.3 (OUT), TLS handshake, Finished (20):
  • SSL connection using TLSv1.3 / TLS_AES_256_GCM_SHA384
  • ALPN, server accepted to use h2
  • Server certificate:
  • subject: CN=boundary.dfinity.network
  • start date: Jul 16 17:08:26 2024 GMT
  • expire date: Oct 14 17:08:25 2024 GMT
  • subjectAltName: host “icp0.io” matched cert’s “icp0.io
  • issuer: C=US; O=Let’s Encrypt; CN=R10
  • SSL certificate verify ok.
  • Using HTTP2, server supports multiplexing
  • Connection state changed (HTTP/2 confirmed)
  • Copying HTTP/2 data in stream buffer to connection buffer after upgrade: len=0
  • TLSv1.2 (OUT), TLS header, Supplemental data (23):
  • TLSv1.2 (OUT), TLS header, Supplemental data (23):
  • TLSv1.2 (OUT), TLS header, Supplemental data (23):
  • Using Stream ID: 1 (easy handle 0x5605771ceec0)
  • TLSv1.2 (OUT), TLS header, Supplemental data (23):

POST /registrations HTTP/2
Host: icp0.io
user-agent: curl/7.81.0
accept: /
content-type: application/json
content-length: 30

  • TLSv1.2 (OUT), TLS header, Supplemental data (23):
  • We are completely uploaded and fine
  • TLSv1.2 (IN), TLS header, Supplemental data (23):
  • TLSv1.3 (IN), TLS handshake, Newsession Ticket (4):
  • TLSv1.2 (IN), TLS header, Supplemental data (23):
  • TLSv1.3 (IN), TLS handshake, Newsession Ticket (4):
  • old SSL session ID is stale, removing
  • TLSv1.2 (IN), TLS header, Supplemental data (23):
  • TLSv1.2 (OUT), TLS header, Supplemental data (23):
  • TLSv1.2 (IN), TLS header, Supplemental data (23):
  • TLSv1.2 (IN), TLS header, Supplemental data (23):
    < HTTP/2 400
    < server: nginx
    < date: Sat, 03 Aug 2024 14:30:34 GMT
    < content-length: 81
    < x-request-id: ab0bf6b4-d100-7de7-1c51-046a3543642f
    < access-control-allow-origin: *
    < access-control-allow-methods: HEAD, POST
    < access-control-allow-headers: DNT,User-Agent,X-Requested-With,If-None-Match,If-Modified-Since,Cache-Control,Content-Type,Range,Cookie,X-Ic-Canister-Id
    < access-control-expose-headers: Accept-Ranges,Content-Length,Content-Range,X-Request-Id,X-Ic-Canister-Id
    < access-control-max-age: 600
    <
  • TLSv1.2 (IN), TLS header, Supplemental data (23):
  • Connection #0 to host icp0.io left intact
    domain is missing from canister l6urk-aiaaa-aaaal-ajo6a-cai list of known domains

folder structure:

Public
.well-known
ic-domains
.ic-assets.json

ic-assets.json:

[
{
“match”: “.well-known”,
“ignore”: false
}
]

ic-domains:
jeevankumar.me
www.jeevankumar .me

Hello @jeevan42

The error you are receiving means that your canister is missing the file/the domain is not listed. You can check whether the file is there by issuing a simple curl command:

$ curl -s https://l6urk-aiaaa-aaaal-ajo6a-cai.icp0.io/.well-known/ic-domains

When I do it for your canister, I get the index.html back:

<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8" />
  <meta name="viewport" content="width=device-width" />
  <title>Jeevan Kumar Portfolio</title>
  <base href="/" />
  <link rel="icon" href="/favicon.ico" />
  <script type="module" crossorigin src="/assets/index-7b17def4.js"></script>
</head>

<body>
  <div id="root"></div>

</body>

</html>%

This means the file doesn’t actually exist and it just falls back to that. Make sure you follow the structure outlined in the docs here.

Thanks for the reply, i deployed it first on main net then requested for registration. and it works now. https://jeevankumar.me working now.

1 Like