# System.Net.NetworkInformation

``` diff
 namespace System.Net.NetworkInformation {
     public abstract class IcmpV4Statistics {
-        public abstract long ErrorsReceived { get; }
+        [UnsupportedOSPlatformAttribute("freebsd")]
+        [UnsupportedOSPlatformAttribute("ios")]
+        [UnsupportedOSPlatformAttribute("osx")]
+        [UnsupportedOSPlatformAttribute("tvos")]
+        public abstract long ErrorsReceived { get; }
-        public abstract long ErrorsSent { get; }
+        [UnsupportedOSPlatformAttribute("freebsd")]
+        [UnsupportedOSPlatformAttribute("ios")]
+        [UnsupportedOSPlatformAttribute("osx")]
+        [UnsupportedOSPlatformAttribute("tvos")]
+        public abstract long ErrorsSent { get; }
-        public abstract long MessagesReceived { get; }
+        [UnsupportedOSPlatformAttribute("freebsd")]
+        [UnsupportedOSPlatformAttribute("ios")]
+        [UnsupportedOSPlatformAttribute("osx")]
+        [UnsupportedOSPlatformAttribute("tvos")]
+        public abstract long MessagesReceived { get; }
-        public abstract long MessagesSent { get; }
+        [UnsupportedOSPlatformAttribute("freebsd")]
+        [UnsupportedOSPlatformAttribute("ios")]
+        [UnsupportedOSPlatformAttribute("osx")]
+        [UnsupportedOSPlatformAttribute("tvos")]
+        public abstract long MessagesSent { get; }
     }
     public abstract class IcmpV6Statistics {
-        public abstract long ErrorsReceived { get; }
+        [UnsupportedOSPlatformAttribute("freebsd")]
+        [UnsupportedOSPlatformAttribute("ios")]
+        [UnsupportedOSPlatformAttribute("osx")]
+        [UnsupportedOSPlatformAttribute("tvos")]
+        public abstract long ErrorsReceived { get; }
-        public abstract long ErrorsSent { get; }
+        [UnsupportedOSPlatformAttribute("freebsd")]
+        [UnsupportedOSPlatformAttribute("ios")]
+        [UnsupportedOSPlatformAttribute("osx")]
+        [UnsupportedOSPlatformAttribute("tvos")]
+        public abstract long ErrorsSent { get; }
-        public abstract long MessagesReceived { get; }
+        [UnsupportedOSPlatformAttribute("freebsd")]
+        [UnsupportedOSPlatformAttribute("ios")]
+        [UnsupportedOSPlatformAttribute("osx")]
+        [UnsupportedOSPlatformAttribute("tvos")]
+        public abstract long MessagesReceived { get; }
-        public abstract long MessagesSent { get; }
+        [UnsupportedOSPlatformAttribute("freebsd")]
+        [UnsupportedOSPlatformAttribute("ios")]
+        [UnsupportedOSPlatformAttribute("osx")]
+        [UnsupportedOSPlatformAttribute("tvos")]
+        public abstract long MessagesSent { get; }
     }
     public abstract class IPAddressInformation {
-        public abstract bool IsDnsEligible { get; }
+        [SupportedOSPlatformAttribute("windows")]
+        public abstract bool IsDnsEligible { get; }
-        public abstract bool IsTransient { get; }
+        [SupportedOSPlatformAttribute("windows")]
+        public abstract bool IsTransient { get; }
     }
     public abstract class IPGlobalProperties {
-        public abstract string DhcpScopeName { get; }
+        [UnsupportedOSPlatformAttribute("android")]
+        public abstract string DhcpScopeName { get; }
-        public abstract bool IsWinsProxy { get; }
+        [UnsupportedOSPlatformAttribute("android")]
+        public abstract bool IsWinsProxy { get; }
-        public abstract IcmpV4Statistics GetIcmpV4Statistics();
+        [UnsupportedOSPlatformAttribute("android")]
+        public abstract IcmpV4Statistics GetIcmpV4Statistics();
-        public abstract IcmpV6Statistics GetIcmpV6Statistics();
+        [UnsupportedOSPlatformAttribute("android")]
+        public abstract IcmpV6Statistics GetIcmpV6Statistics();
-        public abstract IPGlobalStatistics GetIPv6GlobalStatistics();
+        [UnsupportedOSPlatformAttribute("freebsd")]
+        [UnsupportedOSPlatformAttribute("ios")]
+        [UnsupportedOSPlatformAttribute("osx")]
+        [UnsupportedOSPlatformAttribute("tvos")]
+        public abstract IPGlobalStatistics GetIPv6GlobalStatistics();
-        public abstract TcpStatistics GetTcpIPv4Statistics();
+        [UnsupportedOSPlatformAttribute("android")]
+        public abstract TcpStatistics GetTcpIPv4Statistics();
-        public abstract TcpStatistics GetTcpIPv6Statistics();
+        [UnsupportedOSPlatformAttribute("android")]
+        public abstract TcpStatistics GetTcpIPv6Statistics();
-        public abstract UdpStatistics GetUdpIPv4Statistics();
+        [UnsupportedOSPlatformAttribute("android")]
+        public abstract UdpStatistics GetUdpIPv4Statistics();
-        public abstract UdpStatistics GetUdpIPv6Statistics();
+        [UnsupportedOSPlatformAttribute("android")]
+        public abstract UdpStatistics GetUdpIPv6Statistics();
     }
     public abstract class IPGlobalStatistics {
-        public abstract int DefaultTtl { get; }
+        [UnsupportedOSPlatformAttribute("android")]
+        public abstract int DefaultTtl { get; }
-        public abstract bool ForwardingEnabled { get; }
+        [UnsupportedOSPlatformAttribute("android")]
+        public abstract bool ForwardingEnabled { get; }
-        public abstract int NumberOfRoutes { get; }
+        [UnsupportedOSPlatformAttribute("android")]
+        public abstract int NumberOfRoutes { get; }
-        public abstract long OutputPacketRequests { get; }
+        [UnsupportedOSPlatformAttribute("android")]
+        public abstract long OutputPacketRequests { get; }
-        public abstract long OutputPacketRoutingDiscards { get; }
+        [UnsupportedOSPlatformAttribute("android")]
+        public abstract long OutputPacketRoutingDiscards { get; }
-        public abstract long OutputPacketsDiscarded { get; }
+        [UnsupportedOSPlatformAttribute("android")]
+        public abstract long OutputPacketsDiscarded { get; }
-        public abstract long OutputPacketsWithNoRoute { get; }
+        [UnsupportedOSPlatformAttribute("android")]
+        public abstract long OutputPacketsWithNoRoute { get; }
-        public abstract long PacketFragmentFailures { get; }
+        [UnsupportedOSPlatformAttribute("android")]
+        public abstract long PacketFragmentFailures { get; }
-        public abstract long PacketReassembliesRequired { get; }
+        [UnsupportedOSPlatformAttribute("android")]
+        public abstract long PacketReassembliesRequired { get; }
-        public abstract long PacketReassemblyFailures { get; }
+        [UnsupportedOSPlatformAttribute("android")]
+        public abstract long PacketReassemblyFailures { get; }
-        public abstract long PacketReassemblyTimeout { get; }
+        [UnsupportedOSPlatformAttribute("android")]
+        public abstract long PacketReassemblyTimeout { get; }
-        public abstract long PacketsFragmented { get; }
+        [UnsupportedOSPlatformAttribute("android")]
+        public abstract long PacketsFragmented { get; }
-        public abstract long PacketsReassembled { get; }
+        [UnsupportedOSPlatformAttribute("android")]
+        public abstract long PacketsReassembled { get; }
-        public abstract long ReceivedPackets { get; }
+        [UnsupportedOSPlatformAttribute("android")]
+        public abstract long ReceivedPackets { get; }
-        public abstract long ReceivedPacketsDelivered { get; }
+        [UnsupportedOSPlatformAttribute("android")]
+        public abstract long ReceivedPacketsDelivered { get; }
-        public abstract long ReceivedPacketsDiscarded { get; }
+        [UnsupportedOSPlatformAttribute("android")]
+        public abstract long ReceivedPacketsDiscarded { get; }
-        public abstract long ReceivedPacketsForwarded { get; }
+        [UnsupportedOSPlatformAttribute("android")]
+        public abstract long ReceivedPacketsForwarded { get; }
-        public abstract long ReceivedPacketsWithAddressErrors { get; }
+        [UnsupportedOSPlatformAttribute("android")]
+        public abstract long ReceivedPacketsWithAddressErrors { get; }
-        public abstract long ReceivedPacketsWithHeadersErrors { get; }
+        [UnsupportedOSPlatformAttribute("android")]
+        public abstract long ReceivedPacketsWithHeadersErrors { get; }
-        public abstract long ReceivedPacketsWithUnknownProtocol { get; }
+        [UnsupportedOSPlatformAttribute("android")]
+        public abstract long ReceivedPacketsWithUnknownProtocol { get; }
     }
     public abstract class IPInterfaceProperties {
-        public abstract IPAddressInformationCollection AnycastAddresses { get; }
+        [SupportedOSPlatformAttribute("windows")]
+        public abstract IPAddressInformationCollection AnycastAddresses { get; }
-        public abstract IPAddressCollection DhcpServerAddresses { get; }
+        [UnsupportedOSPlatformAttribute("android")]
+        [UnsupportedOSPlatformAttribute("freebsd")]
+        [UnsupportedOSPlatformAttribute("ios")]
+        [UnsupportedOSPlatformAttribute("osx")]
+        [UnsupportedOSPlatformAttribute("tvos")]
+        public abstract IPAddressCollection DhcpServerAddresses { get; }
-        public abstract IPAddressCollection DnsAddresses { get; }
+        [UnsupportedOSPlatformAttribute("android")]
+        public abstract IPAddressCollection DnsAddresses { get; }
-        public abstract string DnsSuffix { get; }
+        [UnsupportedOSPlatformAttribute("android")]
+        public abstract string DnsSuffix { get; }
-        public abstract GatewayIPAddressInformationCollection GatewayAddresses { get; }
+        [UnsupportedOSPlatformAttribute("android")]
+        public abstract GatewayIPAddressInformationCollection GatewayAddresses { get; }
-        public abstract bool IsDnsEnabled { get; }
+        [UnsupportedOSPlatformAttribute("android")]
+        [UnsupportedOSPlatformAttribute("freebsd")]
+        [UnsupportedOSPlatformAttribute("ios")]
+        [UnsupportedOSPlatformAttribute("osx")]
+        [UnsupportedOSPlatformAttribute("tvos")]
+        public abstract bool IsDnsEnabled { get; }
-        public abstract bool IsDynamicDnsEnabled { get; }
+        [SupportedOSPlatformAttribute("windows")]
+        public abstract bool IsDynamicDnsEnabled { get; }
-        public abstract IPAddressCollection WinsServersAddresses { get; }
+        [UnsupportedOSPlatformAttribute("android")]
+        [UnsupportedOSPlatformAttribute("freebsd")]
+        [UnsupportedOSPlatformAttribute("ios")]
+        [UnsupportedOSPlatformAttribute("osx")]
+        [UnsupportedOSPlatformAttribute("tvos")]
+        public abstract IPAddressCollection WinsServersAddresses { get; }
     }
     public abstract class IPInterfaceStatistics {
-        public abstract long IncomingUnknownProtocolPackets { get; }
+        [UnsupportedOSPlatformAttribute("linux")]
+        public abstract long IncomingUnknownProtocolPackets { get; }
-        public abstract long NonUnicastPacketsSent { get; }
+        [UnsupportedOSPlatformAttribute("linux")]
+        public abstract long NonUnicastPacketsSent { get; }
-        public abstract long OutgoingPacketsDiscarded { get; }
+        [UnsupportedOSPlatformAttribute("freebsd")]
+        [UnsupportedOSPlatformAttribute("ios")]
+        [UnsupportedOSPlatformAttribute("osx")]
+        [UnsupportedOSPlatformAttribute("tvos")]
+        public abstract long OutgoingPacketsDiscarded { get; }
     }
     public abstract class IPv4InterfaceProperties {
-        public abstract bool IsAutomaticPrivateAddressingActive { get; }
+        [SupportedOSPlatformAttribute("windows")]
+        public abstract bool IsAutomaticPrivateAddressingActive { get; }
-        public abstract bool IsAutomaticPrivateAddressingEnabled { get; }
+        [SupportedOSPlatformAttribute("windows")]
+        public abstract bool IsAutomaticPrivateAddressingEnabled { get; }
-        public abstract bool IsDhcpEnabled { get; }
+        [SupportedOSPlatformAttribute("windows")]
+        public abstract bool IsDhcpEnabled { get; }
-        public abstract bool IsForwardingEnabled { get; }
+        [SupportedOSPlatformAttribute("linux")]
+        [SupportedOSPlatformAttribute("windows")]
+        public abstract bool IsForwardingEnabled { get; }
-        public abstract bool UsesWins { get; }
+        [SupportedOSPlatformAttribute("linux")]
+        [SupportedOSPlatformAttribute("windows")]
+        public abstract bool UsesWins { get; }
     }
     public abstract class IPv4InterfaceStatistics {
-        public abstract long OutgoingPacketsDiscarded { get; }
+        [UnsupportedOSPlatformAttribute("freebsd")]
+        [UnsupportedOSPlatformAttribute("ios")]
+        [UnsupportedOSPlatformAttribute("osx")]
+        [UnsupportedOSPlatformAttribute("tvos")]
+        public abstract long OutgoingPacketsDiscarded { get; }
     }
     public abstract class IPv6InterfaceProperties {
-        public virtual long GetScopeId(ScopeLevel scopeLevel);
+        [UnsupportedOSPlatformAttribute("freebsd")]
+        [UnsupportedOSPlatformAttribute("ios")]
+        [UnsupportedOSPlatformAttribute("osx")]
+        [UnsupportedOSPlatformAttribute("tvos")]
+        public virtual long GetScopeId(ScopeLevel scopeLevel);
     }
     public abstract class MulticastIPAddressInformation : IPAddressInformation {
-        public abstract long AddressPreferredLifetime { get; }
+        [SupportedOSPlatformAttribute("windows")]
+        public abstract long AddressPreferredLifetime { get; }
-        public abstract long AddressValidLifetime { get; }
+        [SupportedOSPlatformAttribute("windows")]
+        public abstract long AddressValidLifetime { get; }
-        public abstract long DhcpLeaseLifetime { get; }
+        [SupportedOSPlatformAttribute("windows")]
+        public abstract long DhcpLeaseLifetime { get; }
-        public abstract DuplicateAddressDetectionState DuplicateAddressDetectionState { get; }
+        [SupportedOSPlatformAttribute("windows")]
+        public abstract DuplicateAddressDetectionState DuplicateAddressDetectionState { get; }
-        public abstract PrefixOrigin PrefixOrigin { get; }
+        [SupportedOSPlatformAttribute("windows")]
+        public abstract PrefixOrigin PrefixOrigin { get; }
-        public abstract SuffixOrigin SuffixOrigin { get; }
+        [SupportedOSPlatformAttribute("windows")]
+        public abstract SuffixOrigin SuffixOrigin { get; }
     }
     public class NetworkChange {
-        public static event NetworkAddressChangedEventHandler NetworkAddressChanged;
+        [UnsupportedOSPlatformAttribute("illumos")]
+        [UnsupportedOSPlatformAttribute("solaris")]
+        public static event NetworkAddressChangedEventHandler NetworkAddressChanged;
-        public static event NetworkAvailabilityChangedEventHandler NetworkAvailabilityChanged;
+        [UnsupportedOSPlatformAttribute("illumos")]
+        [UnsupportedOSPlatformAttribute("solaris")]
+        public static event NetworkAvailabilityChangedEventHandler NetworkAvailabilityChanged;
     }
     public abstract class NetworkInterface {
-        public static int IPv6LoopbackInterfaceIndex { get; }
+        [UnsupportedOSPlatformAttribute("illumos")]
+        [UnsupportedOSPlatformAttribute("solaris")]
+        public static int IPv6LoopbackInterfaceIndex { get; }
-        public static int LoopbackInterfaceIndex { get; }
+        [UnsupportedOSPlatformAttribute("illumos")]
+        [UnsupportedOSPlatformAttribute("solaris")]
+        public static int LoopbackInterfaceIndex { get; }
-        public virtual IPInterfaceStatistics GetIPStatistics();
+        [UnsupportedOSPlatformAttribute("android")]
+        public virtual IPInterfaceStatistics GetIPStatistics();
-        public virtual IPv4InterfaceStatistics GetIPv4Statistics();
+        [UnsupportedOSPlatformAttribute("android")]
+        public virtual IPv4InterfaceStatistics GetIPv4Statistics();
     }
     public class Ping : Component {
+        public PingReply Send(IPAddress address, TimeSpan timeout, byte[]? buffer, PingOptions? options);
+        public PingReply Send(string hostNameOrAddress, TimeSpan timeout, byte[]? buffer, PingOptions? options);
     }
     public abstract class UnicastIPAddressInformation : IPAddressInformation {
-        public abstract long AddressPreferredLifetime { get; }
+        [SupportedOSPlatformAttribute("windows")]
+        public abstract long AddressPreferredLifetime { get; }
-        public abstract long AddressValidLifetime { get; }
+        [SupportedOSPlatformAttribute("windows")]
+        public abstract long AddressValidLifetime { get; }
-        public abstract long DhcpLeaseLifetime { get; }
+        [SupportedOSPlatformAttribute("windows")]
+        public abstract long DhcpLeaseLifetime { get; }
-        public abstract DuplicateAddressDetectionState DuplicateAddressDetectionState { get; }
+        [SupportedOSPlatformAttribute("windows")]
+        public abstract DuplicateAddressDetectionState DuplicateAddressDetectionState { get; }
-        public abstract PrefixOrigin PrefixOrigin { get; }
+        [SupportedOSPlatformAttribute("windows")]
+        public abstract PrefixOrigin PrefixOrigin { get; }
-        public abstract SuffixOrigin SuffixOrigin { get; }
+        [SupportedOSPlatformAttribute("windows")]
+        public abstract SuffixOrigin SuffixOrigin { get; }
     }
 }
```

