Repository navigation
test-dgram-udp6-link-local-address failing on AIX 7.2 #46792
Description
Activity
- addedaixIssues and PRs related to the AIX platform.Issues and PRs related to the AIX platform.
on Feb 23, 2023 Is it possible for you to run
node -p 'os.networkInterfaces()'on that machine? The output of ifconfig (or whatever the AIX equivalent is) would be helpful too.I'm going to guess there's an interface whose address starts with fe80: but isn't a loopback device. That shouldn't be fatal though.
Yes, it will be possible -- I'll do so next week (I've got a day off work today and am not intending to turn on my work laptop).
@bnoordhuis
node -p 'os.networkInterfaces()':{ en0: [ { address: '192.168.166.14', netmask: '255.255.255.248', family: 'IPv4', mac: 'fa:1e:f8:31:df:20', internal: false, cidr: '192.168.166.14/29' } ], en1: [ { address: 'fe80::8034:d9ff:fead:df3f', netmask: 'ffff:ffff:ffff:ffff::', family: 'IPv6', mac: '82:34:d9:ad:df:3f', internal: false, cidr: 'fe80::8034:d9ff:fead:df3f/64', scopeid: 3 } ], sit0: [ { address: '::192.168.166.14', netmask: 'ffff:ffff:ffff:ffff:ffff:ffff::', family: 'IPv6', mac: 'c0:a8:a6:0e:00:00', internal: false, cidr: '::192.168.166.14/96', scopeid: 0 } ], lo0: [ { address: '127.0.0.1', netmask: '255.0.0.0', family: 'IPv4', mac: '00:00:00:00:00:00', internal: true, cidr: '127.0.0.1/8' }, { address: '::1', netmask: 'ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff', family: 'IPv6', mac: '00:00:00:00:00:00', internal: true, cidr: '::1/128', scopeid: 1 } ] }
and
ifconfig -a:en0: flags=1e084863,814c0<UP,BROADCAST,NOTRAILERS,RUNNING,SIMPLEX,MULTICAST,GROUPRT,64BIT,CHECKSUM_OFFLOAD(ACTIVE),LARGESEND,CHAIN> inet 192.168.166.14 netmask 0xfffffff8 broadcast 192.168.166.15 tcp_sendspace 262144 tcp_recvspace 262144 rfc1323 1 en1: flags=1e084863,814c0<UP,BROADCAST,NOTRAILERS,RUNNING,SIMPLEX,MULTICAST,GROUPRT,64BIT,CHECKSUM_OFFLOAD(ACTIVE),LARGESEND,CHAIN> inet6 fe80::8034:d9ff:fead:df3f%3/64 tcp_sendspace 262144 tcp_recvspace 262144 rfc1323 1 sit0: flags=8100041<UP,RUNNING,LINK0> inet6 ::192.168.166.14/96 lo0: flags=e08084b,c0<UP,BROADCAST,LOOPBACK,RUNNING,SIMPLEX,MULTICAST,GROUPRT,64BIT,LARGESEND,CHAIN> inet 127.0.0.1 netmask 0xff000000 broadcast 127.255.255.255 inet6 ::1%1/128 tcp_sendspace 131072 tcp_recvspace 131072 rfc1323 1
Right, pretty much what I expected: en1 has a link-local address (fe80::) but is not a loopback device.
The test expects the datagrams to arrive on fe80::...%en1 but instead they come in on fe80::...%lo0. I don't know why AIX works that way, it's kind of strange, but you can fix it by adding an AIX-specific check to the test.
FWIW I looked into a few AIX IPv6 config options:
- https://www.ibm.com/docs/en/aix/7.2?topic=6-ipv6-multihomed-link-local-site-local-support
- https://www.ibm.com/docs/en/aix/7.2?topic=n-no-command
(specifically "multi_homed" and "main_if6") but they haven't made a difference to the test and the dgrams still arrive on lo0.
@Astrovicis I've hidden your comment. Can you open a discussion instead of an issue? I'm pretty sure you're not hitting a node bug.
I'm seeing it again:
00:24:23.869 not ok 1213 parallel/test-dgram-udp6-link-local-address 00:24:23.869 --- 00:24:23.869 duration_ms: 1253.23900 00:24:23.869 severity: fail 00:24:23.869 exitcode: 1 00:24:23.869 stack: |- 00:24:23.869 node:internal/assert/utils:146 00:24:23.869 throw error; 00:24:23.869 ^ 00:24:23.869 00:24:23.869 AssertionError [ERR_ASSERTION]: Expected values to be strictly equal: 00:24:23.869 + actual - expected 00:24:23.869 00:24:23.869 + 'fe80::8034:d9ff:fead:df3f%lo0' 00:24:23.869 - 'fe80::8034:d9ff:fead:df3f%en1'https://ci.nodejs.org/job/node-test-commit-aix/62538/
https://ci.nodejs.org/job/node-test-commit-aix/62541/
https://ci.nodejs.org/job/node-test-commit-aix/62542/
https://ci.nodejs.org/job/node-test-commit-aix/62544/
https://ci.nodejs.org/job/node-test-commit-aix/62545/Thanks @aduh95 - I wonder if that's showed up again after a reboot of the machine that all of those jobs ran on yesterday -
test-ibm-aix72-ppc64-be-1. I've taken down the en1 interface for now and will do a stress run across the machines to see if (a) that fixes things and (b) if other machiens are affected but we'll still need to look at making it permanent.I've got a solution for making this permanent so will get the instructions updated accordingly which should ensure this doesn't occur the next time the machines are restarted.
github-actions commented
on Aug 13, 2026 on Aug 13, 2026 – with GitHub ActionsContributorMore actionsThis issue has been marked as stale due to 90 days of inactivity.
It will be automatically closed in 30 days if no further activity occurs. If this is still relevant, please leave a comment or update it to keep it open.- addedstaleIssues and PRs marked stale due to inactivity and scheduled for automatic closure.Issues and PRs marked stale due to inactivity and scheduled for automatic closure.
on Aug 13, 2026 Please leave open
- removedstaleIssues and PRs marked stale due to inactivity and scheduled for automatic closure.Issues and PRs marked stale due to inactivity and scheduled for automatic closure.
on Aug 13, 2026 This is now consistently failing on aix72-power9
Fixing the test in: #65629
- added a commit that references this issue
on Aug 29, 2026 - added 6 commits that reference this issue
on Aug 29, 2026 - added a commit that references this issue
on Sep 9, 2026
This is a follow on from #39143. I'm currently setting up some new AIX 7.2 VMs to attach to the Node.js CI and these have the "en1" and "sit0" network interfaces enabled that we had disabled on the existing VMs due to #39143 (comment). Now, instead of the test crashing (fixed by #41547) the test now errors as above -- looks like the test is expecting the address to be scoped to "en1" but it is scoped to "lo0" (the loopback interface).
cc @nodejs/platform-aix