I upgraded OpenBSD 6.1 to 6.2 on a Vultr node and after the first
reboot dhclient reports this new error:
/var/db/dhclient.leases.vio0 line 15: Expecting CIDR prefix length.
option classless-static-routes 0.0.0.0/33
^
At this moment I both OpenBSD 6.1 and 6.2 are running on different
instances of Vultr nodes. Copying different versions of /sbin/dhclient
back and forth between my boxes shows that they're putting different
classless-static-routes lines in the leases file:
option classless-static-routes 0.0.0.0/0 108.61.190.1, 169.254.169.254/32
108.61.190.1;
option classless-static-routes 0.0.0.0/33 108.61.190.1, 169.254.169.254/32
108.61.190.1;
(The top line is created by a 6.1 dhclient executable; the bottom line
is created by 6.2.)
Here's a tcpdump trace showing what happens when I renew my lease on
the server in question. Since "classless-static-routes" is option 121,
I was expecting to see a "79" (hex) somewhere in the response, but I
don't. So I have no idea where dhclient is getting the invalid mask
length from.
# doas tcpdump -nXi vio0 port 67 and port 68
tcpdump: listening on vio0, link-type EN10MB
11:22:13.801668 108.61.190.203.68 > 255.255.255.255.67: xid:0xc9048474 [|bootp]
[tos 0x10]
0000: 4510 0148 0000 0000 8011 0e8d 6c3d becb E..H........l=..
0010: ffff ffff 0044 0043 0134 57f1 0101 0600 .....D.C.4W.....
0020: c904 8474 0000 0000 0000 0000 0000 0000 ...t............
0030: 0000 0000 0000 0000 5600 0035 275c 0000 ........V..5'\..
0040: 0000 0000 0000 0000 0000 0000 0000 0000 ................
0050: 0000 0000 0000 0000 0000 0000 0000 0000 ................
0060: 0000 0000 0000 ......
11:22:13.803582 169.254.169.254.67 > 108.61.190.203.68: xid:0xc9048474
Y:108.61.190.203 [|bootp] [tos 0xc0]
0000: 45c0 0157 30df 0000 4011 c8f1 a9fe a9fe E..W0...@.......
0010: 6c3d becb 0043 0044 0143 f7de 0201 0600 l=...C.D.C......
0020: c904 8474 0000 0000 0000 0000 6c3d becb ...t........l=..
0030: 0000 0000 0000 0000 5600 0035 275c 0000 ........V..5'\..
0040: 0000 0000 0000 0000 0000 0000 0000 0000 ................
0050: 0000 0000 0000 0000 0000 0000 0000 0000 ................
0060: 0000 0000 0000 ......
^C
170 packets received by filter
0 packets dropped by kernel
Regards,
Anthony Coulter