FreeBSD dhcp failing with UDP checksum errors

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



I recently reinstalled Fedora (host) and I'm trying to import a
previously working FreeBSD 13 guest.  It boots fine, but fails to get
an address from DHCP.  In the FreeBSD boot output it prints:

  Starting dhclient.
  DHCPDISCOVER on vtnet0 to 255.255.255.255 port 67 interval 7
  DHCPDISCOVER on vtnet0 to 255.255.255.255 port 67 interval 9
  DHCPDISCOVER on vtnet0 to 255.255.255.255 port 67 interval 9
  DHCPDISCOVER on vtnet0 to 255.255.255.255 port 67 interval 10
  DHCPDISCOVER on vtnet0 to 255.255.255.255 port 67 interval 17
  5 bad udp checksums in 5 packets

Indeed, tcpdumping the network on the host side shows that checksums
are wrong (note "bad udp cksum" in the reply message):

    0.0.0.0.bootpc > 255.255.255.255.bootps: [udp sum ok] BOOTP/DHCP, Request from 52:54:00:d4:07:ab (oui Unknown), length 300, xid 0xf9ee0d34, secs 53, Flags [none] (0x0000)
	  Client-Ethernet-Address 52:54:00:d4:07:ab (oui Unknown)
	  Vendor-rfc1048 Extensions
	    Magic Cookie 0x63825363
	    DHCP-Message (53), length 1: Discover
	    Requested-IP (50), length 4: freebsd.home.annexia.org
	    Client-ID (61), length 7: ether 52:54:00:d4:07:ab
	    Hostname (12), length 7: "freebsd"
	    Parameter-Request (55), length 10: 
	      Subnet-Mask (1), BR (28), Time-Zone (2), Classless-Static-Route (121)
	      Default-Gateway (3), Domain-Name (15), Domain-Name-Server (6), Hostname (12)
	      Unknown (119), MTU (26)
	    END (255), length 0
	    PAD (0), length 0, occurs 20
13:07:37.304083 IP (tos 0xc0, ttl 64, id 20207, offset 0, flags [none], proto UDP (17), length 328)
    cash.bootps > 192.168.122.203.bootpc: [bad udp cksum 0x7763 -> 0x88a0!] BOOTP/DHCP, Reply, length 300, xid 0xf9ee0d34, secs 53, Flags [none] (0x0000)
	  Your-IP 192.168.122.203
	  Server-IP cash
	  Client-Ethernet-Address 52:54:00:d4:07:ab (oui Unknown)
	  Vendor-rfc1048 Extensions
	    Magic Cookie 0x63825363
	    DHCP-Message (53), length 1: Offer
	    Server-ID (54), length 4: cash
	    Lease-Time (51), length 4: 3600
	    RN (58), length 4: 1800
	    RB (59), length 4: 3150
	    Subnet-Mask (1), length 4: 255.255.255.0
	    BR (28), length 4: 192.168.122.255
	    Default-Gateway (3), length 4: cash
	    Domain-Name-Server (6), length 4: cash
	    END (255), length 0
	    PAD (0), length 0, occurs 8

I guess this is something to do with checksum offloading.  I can only
find ancient bugs related to this.  How to fix?  The host is:

  libvirt-daemon-10.6.0-1.fc41.x86_64
  dnsmasq-2.90-3.fc41.x86_64
  Linux cash 6.11.0-0.rc5.20240830git20371ba12063.47.fc42.x86_64 #1 SMP PREEMPT_DYNAMIC Fri Aug 30 15:36:28 UTC 2024 x86_64 GNU/Linux

Rich.

-- 
Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones
Read my programming and virtualization blog: http://rwmj.wordpress.com
nbdkit - Flexible, fast NBD server with plugins
https://gitlab.com/nbdkit/nbdkit



[Index of Archives]     [Virt Tools]     [Lib OS Info]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Yosemite News]     [KDE Users]

  Powered by Linux