LaMont and I triaged the packet capture for this issue, and we believe
that the cause has to do with the IPv6 stack on the node attempting the
IPv6 UEFI boot.
After analysing the packet capture, I noticed two major issues, which
occur somewhere between grub and the UEFI BIOS code [inclusive]. The
bugs is in the the IPv6 host stack; ICMPv6 neighbour discovery, to be
specific:
(1) Although a DHCPv6 request (and reply) is processed by the booting
machine, The IPv6 host stack never sent an IPv6 router advertisement
packet. This is a violation of the IPv6 RFCs, because in IPv6, an
address from a DHCP server does not imply an on-link prefix. In other
words, the client has configured a /128, and makes *just enough
assumptions* about being on-link to be able to talk to the server for a
little while.
(2) The booting node is not sending any IPv6 Neighbour Advertisement
packets, as can be seen by the following snippet:
17:23:22.851379 IP6 2602:306:ce26:fc81::1 > ff02::1:ff00:99c3:
ICMP6, neighbor solicitation, who has
2602:306:ce26:fc81:fc10:82aa:9100:99c3, length 32
Looking deeper at the packet capture, sine the IPv6 host stack on the
booting node never sends out any neighbour advertisements, the only way
the MAAS server (which in this case also happens to be the router) knows
the address is on-link is because it sends its address in a neighbour
solicitation for the router with a source link-layer address option,
which allows the MAAS server to cache the neighbour entry for just long
enough for the TFTP transfer to start (but not complete).
So the questions in my mind now is, how does grub hand off control to
the IPv6 host stack so that neighbour entries can be refreshed, neighbor
solicitations can be responded to, etc? And why isn't the node sending
out an IPv6 router advertisement when it boots, before sending a DHCPv6
request? (this seems like a UEFI firmware bug)
--
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1632480
Title:
Latest Yakkety grub timesout when attempting to UEFI boot over IPv6
To manage notifications about this bug go to:
https://bugs.launchpad.net/maas/+bug/1632480/+subscriptions
--
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs