Domain: "relays-new.cardano-testnet.iohkdev.io" Unsupported remote target address [2a05:d01c:321:2101:0:1:0:3]:3001

We delete the DB, and then we restart the node after an update to 1.34.1.
We think our node works fine, and the error message are from the blockchain, specially from other nodes. Anybody an idea that’s wrong?

2022-04-09 11:14:47 UTC

WDomain: "relays-new.cardano-testnet.iohkdev.io" Unsupported remote target address [2a05:d01c:321:2101:0:1:0:3]:3001

2022-04-09 11:14:47 UTC

WDomain: "relays-new.cardano-testnet.iohkdev.io" Unsupported remote target address [2600:1f1c:d4f:6d02:0:1:0:3]:3001

2022-04-09 11:14:47 UTC

WDomain: "relays-new.cardano-testnet.iohkdev.io" Unsupported remote target address [2600:1f1c:d4f:6d00:0:1:0:2]:3001

2022-04-09 11:14:47 UTC

WDomain: "relays-new.cardano-testnet.iohkdev.io" Unsupported remote target address [2a05:d014:e00:a201:0:1:0:3]:3001

2022-04-09 11:14:47 UTC

WDomain: "relays-new.cardano-testnet.iohkdev.io" Unsupported remote target address [2a05:d014:e00:a202:0:1:0:2]:3001

2022-04-09 11:14:47 UTC

WDomain: "relays-new.cardano-testnet.iohkdev.io" Unsupported remote target address [2a05:d01c:321:2100:0:1:0:1]:3001

2022-04-09 11:14:47 UTC

WDomain: "relays-new.cardano-testnet.iohkdev.io" Unsupported remote target address [2a05:d01c:321:2101:0:1:0:1]:3001

2022-04-09 11:14:47 UTC

WDomain: "relays-new.cardano-testnet.iohkdev.io" Unsupported remote target address [2406:da18:99d:9200:0:1:0:2]:3001

Do you have IPv6 enabled for your network interface? It seems like your node cannot understand the ipV6 address.

Do a ip a | grep inet6 and see if it’ll return any results… or ip a and look for inet6 for the internet facing interface.

2 Likes

Yes, our node network interface has an ipv6, but we are not start our node with ipv6 support.

Details:

cardano-node-update run ... --host-addr 0.0.0.0 --port 3000

2: ens4: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1460 qdisc mq state UP group default qlen 1000
    link/ether 42:01:0a:84:00:02 brd ff:ff:ff:ff:ff:ff
    inet 10.132.0.2/32 scope global dynamic ens4
       valid_lft 3067sec preferred_lft 3067sec
    inet6 fe80::4001:aff:fe84:2/64 scope link 
       valid_lft forever preferred_lft forever

Hm, I’m not sure about the node internals but it seems that if the host address is ipv4 it’ll disable ipv6 behind the scene. This needs to be verified in code.

The question is where it got the ipv6 resolved from as your topology has just the FQDN relays-new.cardano-testnet.iohkdev.io.

Try dig relays-new.cardano-testnet.iohkdev.io and see if A records resolve to ipv4 or ipv6 addresses.

Maybe someone else would know more about Ipv6, DNS, cardano-node :slight_smile:

1 Like
dig relays-new.cardano-testnet.iohkdev.io

; <<>> DiG 9.16.1-Ubuntu <<>> relays-new.cardano-testnet.iohkdev.io
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 12833
;; flags: qr rd ra; QUERY: 1, ANSWER: 8, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 65494
;; QUESTION SECTION:
;relays-new.cardano-testnet.iohkdev.io. IN A

;; ANSWER SECTION:
relays-new.cardano-testnet.iohkdev.io. 300 IN A 3.72.137.52
relays-new.cardano-testnet.iohkdev.io. 300 IN A 18.198.216.177
relays-new.cardano-testnet.iohkdev.io. 300 IN A 13.41.9.54
relays-new.cardano-testnet.iohkdev.io. 300 IN A 3.72.26.163
relays-new.cardano-testnet.iohkdev.io. 300 IN A 3.133.220.20
relays-new.cardano-testnet.iohkdev.io. 300 IN A 52.56.210.10
relays-new.cardano-testnet.iohkdev.io. 300 IN A 184.169.196.177
relays-new.cardano-testnet.iohkdev.io. 300 IN A 3.131.32.242

;; Query time: 40 msec
;; SERVER: 127.0.0.53#53(127.0.0.53)
;; WHEN: Sat Apr 09 13:31:50 UTC 2022
;; MSG SIZE  rcvd: 194

mcrio

You’re right, this is exactly what happens currently. I added a comment in the documentation a year ago about this.

Note : If you want to connect to IPv4 and IPv6 relays, you must either not specify host addresses when starting cardano-node or make sure to specify both an IPv4 and IPv6 host address.

I once made a PR to change this behavior so it would allow outbound IPv6 without specifying a host address, but it was not accepted:

So currently unfortunately this is expected behavior.

3 Likes

@weebl2000 thanks for the additional info. Any idea why his node resolves the domain to an IPv6 address instead of the IPv4?

1 Like
$ dig -t AAAA relays-new.cardano-testnet.iohkdev.io
relays-new.cardano-testnet.iohkdev.io. 300 IN AAAA 2a05:d014:e00:a201:0:1:0:4
relays-new.cardano-testnet.iohkdev.io. 300 IN AAAA 2406:da18:99d:9200:0:1:0:3
relays-new.cardano-testnet.iohkdev.io. 300 IN AAAA 2406:da14:5df:b300:0:1:0:4
relays-new.cardano-testnet.iohkdev.io. 300 IN AAAA 2a05:d01c:321:2101:0:1:0:2
relays-new.cardano-testnet.iohkdev.io. 300 IN AAAA 2a05:d014:e00:a200:0:1:0:3
relays-new.cardano-testnet.iohkdev.io. 300 IN AAAA 2a05:d01c:321:2101:0:1:0:4
relays-new.cardano-testnet.iohkdev.io. 300 IN AAAA 2a05:d01c:321:2100:0:1:0:4
relays-new.cardano-testnet.iohkdev.io. 300 IN AAAA 2600:1f1c:d4f:6d02:0:1:0:1

I’d guess that it resolves both, the IPv4 and the IPv6 addresses, but just gives errors for the IPv6 ones, since the IPv4 can contact without problem.

1 Like

IPv6 addresses were recently added to the testnet DNS names. I’m guessing the code does not handle not resolving/connecting to AAAA if only IPv4 is configured.

Imo it’s a bug, I’ll create a github ticket for it. [BUG] - cardano-node tries to resolve and connect to AAAA DNS records even if only IPv4 host listen address is configured · Issue #3781 · input-output-hk/cardano-node · GitHub

2 Likes