Junos OS

Expand all | Collapse all

Processing DHCPv6 Relay Forwards

  • 1.  Processing DHCPv6 Relay Forwards

    Posted 12-23-2020 13:09

    I have DHCP and DHCPv6 working on a BNG using dual-stack-group on the BNG.  Is there anything special that needs done to get the BNG to respond to DHCPv6 SOLICITs that are encapsulated in a Relay Forward message (sent from an access node that was running LDRA).

    As you can see, the BNG is receiving the DHCPv6 relay forwards and is seeing the SOLICIT inside, but its not replying with anything:

    Dhcpv6 Packets dropped:
    Total 0

    Advertise Delay:
    DELAYED 0
    INPROGRESS 0
    TOTAL 0

    Messages received:
    DHCPV6_DECLINE 0
    DHCPV6_SOLICIT 5
    DHCPV6_INFORMATION_REQUEST 0
    DHCPV6_RELEASE 0
    DHCPV6_REQUEST 0
    DHCPV6_CONFIRM 0
    DHCPV6_RENEW 0
    DHCPV6_REBIND 0
    DHCPV6_RELAY_FORW 5
    DHCPV6_LEASEQUERY 0

    Messages sent:
    DHCPV6_ADVERTISE 0
    DHCPV6_REPLY 0
    DHCPV6_RECONFIGURE 0
    DHCPV6_RELAY_REPL 0
    DHCPV6_LEASEQUERY_REPLY 0
    DHCPV6_LEASEQUERY_DATA 0
    DHCPV6_LEASEQUERY_DONE 0

    After doing a dhcp trace debug, I see this in the output:

    Jan 2 12:45:31.393281 [MSTR][DEBUG][default:default][SVR][INET6][ps11.3221225510][SID=0] jdhcpd_dual_stack_get_client_from_key: checking for dual-stack peer flags3(4000), ifl ()
    Jan 2 12:45:31.393315 [MSTR][INFO] [default:default][SVR][INET6][ps11.3221225510][SID=0] jdhcpd_dual_stack_accept_client: dual stack failure - client family not protocol master.

    The protocol-master is inet for the dual-stack group, but inet dhcp is also happening and working so it should be accepting the inet6 dhcp6 and processing it.  It works fine when I don't have LDRA and its a raw dhcp6 solicit.



  • 2.  RE: Processing DHCPv6 Relay Forwards

    Posted 12-23-2020 15:23

    I was able to figure this out -- I had the dual-stack-group classification-key as mac-address and the macs being used for inet vs inet6 were different.  So I changed the classification-key to be the remote-id and that solved it.