public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
* NetworkPkg: Unexpected DHCP RELEASE after PXE server reply on IPv6
@ 2021-06-23 21:08 Bret Barkelew
  2021-06-25  7:25 ` [edk2-devel] " brbarkel
  0 siblings, 1 reply; 13+ messages in thread
From: Bret Barkelew @ 2021-06-23 21:08 UTC (permalink / raw)
  To: devel@edk2.groups.io, LathaKannan Arumugam,
	'maciej.rabeda@linux.intel.com', Jiaxin Wu, Siyuan Fu

[-- Attachment #1: Type: text/plain, Size: 1645 bytes --]

Hi all!

Trying to track down an unexpected behavior for one of our teams here:
“We tried to PXEBoot a VM using IPv6 and even though the server replied with all requested boot options, the firmware for some reason did a DHCPv6 release instead of going for a network boot.”

The team dug in with some debugging and tracked things down to this process and the associated code:

  1.  DHCP server is sending REPLY with valid boot params and tftp server address.
  2.  UEFI upon receiving this REPLY, it is trying to send UDP request with port 4011 and uses TFTP global address as destination address.
  3.  Ip6Output() in /NetworkPkg/Ip6Dxe/Ip6Output.c drops the UDP request generated in Step-2. This is due to route miss.
     *   Function: https://github.com/tianocore/edk2/blob/20ca52882877ba9025da2ee58c8dab7808eca457/NetworkPkg/Ip6Dxe/Ip6Output.c#L476
     *   Error return: https://github.com/tianocore/edk2/blob/20ca52882877ba9025da2ee58c8dab7808eca457/NetworkPkg/Ip6Dxe/Ip6Output.c#L701
  4.  As the UDP request with port 4011 failed, UEFI does a RELEASE message and errors out.
  5.  Below the code snippet inside UEFI where packet is getting dropped.

Here’s some questions from the team:

  1.  Why is UEFI doing UDP request with port 4011 to TFTP server address. We expect it to start TFTP with data provided in REPLY by server.
  2.  In data center, the blades are not directly connected to server. So how can UEFI learn the routes to send a unicast request using global address.
  3.  In case of IPv4, we don’t see any UDP request using port 4011. Why alone for IPv6?


Thoughts? Thanks in advance!

- Bret


[-- Attachment #2: Type: text/html, Size: 8077 bytes --]

^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2021-06-30 21:44 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-06-23 21:08 NetworkPkg: Unexpected DHCP RELEASE after PXE server reply on IPv6 Bret Barkelew
2021-06-25  7:25 ` [edk2-devel] " brbarkel
2021-06-25 14:40   ` Maciej Rabeda
2021-06-25 16:19     ` [EXTERNAL] " Bret Barkelew
2021-06-25 16:22       ` larumugam
2021-06-25 20:11         ` LathaKannan Arumugam
     [not found]         ` <168BEC4CE79D1C8A.1293@groups.io>
2021-06-28 20:05           ` LathaKannan Arumugam
2021-06-29 16:36             ` Maciej Rabeda
     [not found]             ` <168D1AEBDC669830.32494@groups.io>
2021-06-29 16:39               ` Maciej Rabeda
2021-06-29 16:53                 ` Bret Barkelew
2021-06-29 17:33                   ` Vincent Zimmer
2021-06-29 18:54                     ` LathaKannan Arumugam
2021-06-30 21:44                       ` Bret Barkelew

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox