[Dnsmasq-discuss] DHCPv6 relay requests ignored

Harald Jensås hjensas at redhat.com
Mon Sep 30 10:29:54 BST 2019


Hi,

I am trying to get a setup with relays for DHCPv6 working, I can see
the requests coming in and dnsmasq on the relay node forwards the
request. On the server side I can see the dhcp6 relay-fwd coming in on
the expected interface. Then there is no reply, and nothing happens in
the dnsmasq DHCP server log. More details on the configuration and some
packet capture data below.

I have tried using the both unicast address and the multicast address
as server_address on the dnsmasq relay node.

Any pointers? It's as if dnsmasq is ignoring the relayed dhcp6 inf-req?



DHCP relay
**********

$ dnsmasq -p0 --dhcp-relay=fd12:3456:789a:2::fffe,ff05::1:3,eth1 --
dhcp-relay=fd12:3456:789a:3::fffe,ff05::1:3,eth1

# Router solicit, and then dhcp6 inf-req from client on eth2
$ tcpdump -i eth2 -vv ip6 multicast and not proto 112
08:41:00.112602 IP6 (hlim 255, next-header ICMPv6 (58) payload length:
16) fe80::f816:3eff:fec2:23de > ff02::2: [icmp6 sum ok] ICMP6, router
solicitation, length 16
          source link-address option (1), length 8 (1):
fa:16:3e:c2:23:de
            0x0000:  fa16 3ec2 23de
08:41:00.117598 IP6 (hlim 255, next-header UDP (17) payload length:
117) fe80::f816:3eff:fec2:23de.dhcpv6-client > ff02::1:2.dhcpv6-server: 
[udp sum ok] dhcp6 inf-req (xid=b2794c (c
lient-ID type 4) (option-request DNS-server DNS-search-list opt_59
opt_60) (vendor-class) (opt_61) (opt_62) (user-class) (elapsed-time 0))

# relay-fwd going out eth1
$ tcpdump -i eth1 -vv ip6 multicast and not proto 112
08:41:00.117754 IP6 (class 0xc0, hlim 1, next-header UDP (17) payload
length: 167) radvd-and-dhcrelay.dhcpv6-server > ff05::1:3.dhcpv6-
server: [bad udp cksum 0xa9c6 -> 0x9e66!] dhcp
6 relay-fwd (linkaddr=radvd-and-dhcrelay
peeraddr=fe80::f816:3eff:fec2:23de (opt_79) (relay-message (dhcp6 inf-
req (xid=b2794c (client-ID type 4) (option-request DNS-server DNS-sear
ch-list opt_59 opt_60) (vendor-class) (opt_61) (opt_62) (user-class)
(elapsed-time 0))))


DHCP server
***********

FILE: dnsmasq.conf
------------------
port=0
interface=br-ctlplane

dhcp-range=set:ctlplane-
subnet,fd12:3456:789a:1::aaaa,fd12:3456:789a:1::afff,64,10m
dhcp-range=set:ctlplane-
leaf1,fd12:3456:789a:2::aaaa,fd12:3456:789a:2::afff,64,10m
dhcp-range=set:ctlplane-
leaf2,fd12:3456:789a:3::aaaa,fd12:3456:789a:3::afff,64,10m
dhcp-userclass=set:ipxe6,iPXE
dhcp-option=tag:ipxe6,option6:bootfile-url,
http://[fd12:3456:789a:1::1]:8088/inspector.ipxe
-------------------

Proto  Recv-Q Send-Q Local Address Foreign Address State PID/ProgName 
udp6   0      0      :::547        :::*                  310887/dnsmasq


Sep 30 08:14:53 dnsmasq[8]: compile time options: IPv6 GNU-getopt DBus
no-i18n IDN DHCP DHCPv6 no-Lua TFTP no-conntrack ipset auth no-DNSSEC
loop-detect inotify
Sep 30 08:14:53 dnsmasq-dhcp[8]: DHCPv6, IP range
fd12:3456:789a:3::aaaa -- fd12:3456:789a:3::afff, lease time 10m
Sep 30 08:14:53 dnsmasq-dhcp[8]: DHCPv6, IP range
fd12:3456:789a:2::aaaa -- fd12:3456:789a:2::afff, lease time 10m
Sep 30 08:14:53 dnsmasq-dhcp[8]: DHCPv6, IP range
fd12:3456:789a:1::aaaa -- fd12:3456:789a:1::afff, lease time 10m


# dhcp6 relay-fwd coming in
$ tcpdump -i br-ctlplane -vv ip6 multicast and not proto 112
08:41:00.121617 IP6 (class 0xc0, hlim 1, next-header UDP (17) payload
length: 167) fd12:3456:789a:2::fffe.dhcpv6-server > ff05::1:3.dhcpv6-
server: [udp sum ok] dhcp6 relay-fwd (linkaddr=fd12:3456:789a:2::fffe
peeraddr=fe80::f816:3eff:fec2:23de (opt_79) (relay-message (dhcp6 inf-
req (xid=b2794c (client-ID type 4) (option-request DNS-server DNS-
search-list opt_59 opt_60) (vendor-class) (opt_61) (opt_62) (user-
class) (elapsed-time 0))))



Regards
Harald Jensås





More information about the Dnsmasq-discuss mailing list