Example #1
0
        public Binding FindCurrentBinding(DhcpLink clientLink, DhcpV6ClientIdOption clientIdOption, DhcpV6IaNaOption iaNaOption, DhcpMessage requestMsg)
        {
            byte[] duid = clientIdOption.GetDuid();
            long   iaid = iaNaOption.GetIaId();

            return(base.FindCurrentBinding(clientLink, duid, IdentityAssoc.NA_TYPE,
                                           iaid, requestMsg));
        }
Example #2
0
        public Binding CreateSolicitBinding(DhcpLink clientLink, DhcpV6ClientIdOption clientIdOption, DhcpV6IaNaOption iaNaOption, DhcpMessage requestMsg, byte state, IPAddress clientV4IPAddress)
        {
            byte[] duid = clientIdOption.GetDuid();
            long   iaid = iaNaOption.GetIaId();

            StaticBinding staticBinding = FindStaticBinding(clientLink.GetLink(), duid, IdentityAssoc.NA_TYPE, iaid, requestMsg);

            if (staticBinding != null)
            {
                return(base.CreateStaticBinding(clientLink, duid, IdentityAssoc.NA_TYPE, iaid, staticBinding, requestMsg));
            }
            else
            {
                return(base.CreateBinding(clientLink, duid, IdentityAssoc.NA_TYPE,
                                          iaid, GetInetAddrs(iaNaOption), requestMsg, state, clientV4IPAddress));
            }
        }