public override bool Equals(IDhcpServerOptionElement other)
        {
            if (other == null)
            {
                return(false);
            }

            if (other is DhcpServerOptionElementBinary oe)
            {
                if (RawValue == null && oe.RawValue == null)
                {
                    return(true);
                }

                if (RawValue == null || oe.RawValue == null)
                {
                    return(false);
                }

                if (RawValue.Length == 0 && oe.RawValue.Length == 0)
                {
                    return(true);
                }

                return(Enumerable.SequenceEqual(RawValue, oe.RawValue));
            }

            return(false);
        }
        public override bool Equals(IDhcpServerOptionElement other)
        {
            if (other == null)
            {
                return(false);
            }

            if (other is DhcpServerOptionElementIpv6Address oe)
            {
                return(string.Equals(RawValue, oe.RawValue, StringComparison.Ordinal));
            }

            return(false);
        }
        public override bool Equals(IDhcpServerOptionElement other)
        {
            if (other == null)
            {
                return(false);
            }

            if (other is DhcpServerOptionElementDWordDWord oe)
            {
                return(RawValue == oe.RawValue);
            }

            return(false);
        }
        public override bool Equals(IDhcpServerOptionElement other)
        {
            if (other == null)
            {
                return(false);
            }

            if (other is DhcpServerOptionElementIpAddress oe)
            {
                return(address == oe.address);
            }

            return(false);
        }
 public abstract bool Equals(IDhcpServerOptionElement other);