Skip to content

Incorrect arch code sent during network boot using IPv4 #1928

Open
@miguelangel-nubla

Description

@miguelangel-nubla

Describe the bug
IPv4 based network boot sends arch code 0000 (corresponding to x86 BIOS) making it impossible for the dhcp server to identify the client architecture and send the correct dhcp options and binaries for the rpiboot.
Therefore, there is no way to network boot rpi and x86 hosts on the same network environment.

To reproduce
Enable rpi network boot, capture dhcp discover packet sent from the pi while booting.

Expected behavior
Option 93 = 41 (0x00 0x29)
Option 60 = PXEClient:Arch:00041:UNDI:002001

Actual behavior
Option 93 = 0 (0x00 0x00)
Option 60 = PXEClient:Arch:00000:UNDI:002001

Additional context
Iana Processor Architecture Types and raspberry docs for network boot using DHCPv6.
I understand strictly speaking there is no option in the IPv4 DHCP PXE specification to match rpiboot or arm64 in RFC 4578, but it is common practice to use the newer ones from v6 in v4, and that would make more sense than the broken "I am x86" behavior.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions