예제 #1
0
        List <IPAddress> CollectAddresses(JNetworkInterface inf)
        {
            var ret = new List <IPAddress> ();

            Java.Util.IEnumeration addresses = inf.InetAddresses;
            while (addresses.HasMoreElements)
            {
                var addr = addresses.NextElement() as InetAddress;
                if (addr == null)
                {
                    continue;
                }
                var ipv6 = addr as Inet6Address;
                if (ipv6 != null && (ipv6.IsLinkLocalAddress || ipv6.IsMCLinkLocal))
                {
                    ret.Add(new IPAddress(addr.GetAddress(), ipv6.ScopeId));
                }
                else
                {
                    ret.Add(new IPAddress(addr.GetAddress()));
                }
            }

            return(ret);
        }
예제 #2
0
        List <IPAddress> CollectAddresses(JNetworkInterface inf)
        {
            var ret = new List <IPAddress> ();

            Java.Util.IEnumeration addresses = inf.InetAddresses;
            while (addresses.HasMoreElements)
            {
                var addr = addresses.NextElement() as InetAddress;
                if (addr == null)
                {
                    continue;
                }
                ret.Add(new IPAddress(addr.GetAddress()));
            }

            return(ret);
        }