Win32_NetworkAdapterConfiguration

 
class Win32_NetworkAdapterConfiguration : CIM_Setting{  boolean ArpAlwaysSourceRoute;  boolean ArpUseEtherSNAP;  string Caption;  string DatabasePath;  boolean DeadGWDetectEnabled;  string DefaultIPGateway[];  uint8 DefaultTOS;  uint8 DefaultTTL;  string Description;  boolean DHCPEnabled;  datetime DHCPLeaseExpires;  datetime DHCPLeaseObtained;  string DHCPServer;  string DNSDomain;  string DNSDomainSuffixSearchOrder[];  boolean DNSEnabledForWINSResolution;  string DNSHostName;  string DNSServerSearchOrder[];  boolean DomainDNSRegistrationEnabled;  uint32 ForwardBufferMemory;  boolean FullDNSRegistrationEnabled;  uint16 GatewayCostMetric[];  uint8 IGMPLevel;  uint32 Index;  uint32 InterfaceIndex;  string IPAddress[];  uint32 IPConnectionMetric;  boolean IPEnabled;  boolean IPFilterSecurityEnabled;  boolean IPPortSecurityEnabled;  string IPSecPermitIPProtocols[];  string IPSecPermitTCPPorts[];  string IPSecPermitUDPPorts[];  string IPSubnet[];  boolean IPUseZeroBroadcast;  string IPXAddress;  boolean IPXEnabled;  uint32 IPXFrameType[];  uint32 IPXMediaType;  string IPXNetworkNumber[];  string IPXVirtualNetNumber;  uint32 KeepAliveInterval;  uint32 KeepAliveTime;  string MACAddress;  uint32 MTU;  uint32 NumForwardPackets;  boolean PMTUBHDetectEnabled;  boolean PMTUDiscoveryEnabled;  string ServiceName;  string SettingID;  uint32 TcpipNetbiosOptions;  uint32 TcpMaxConnectRetransmissions;  uint32 TcpMaxDataRetransmissions;  uint32 TcpNumConnections;  boolean TcpUseRFC1122UrgentPointer;  uint16 TcpWindowSize;  boolean WINSEnableLMHostsLookup;  string WINSHostLookupFile;  string WINSPrimaryServer;  string WINSScopeID;  string WINSSecondaryServer;};
 

The Win32_NetworkAdapterConfiguration class has the following properties.

ArpAlwaysSourceRoute
Data type: boolean
Access type: Read-only

 

If TRUE, TCP/IP transmits Address Resolution Protocol (ARP) queries with source routing enabled on Token Ring networks. By default (FALSE), ARP first queries without source routing, and then retries with source routing enabled if no reply is received. Source routing allows the routing of network packets across different types of networks.

 

 

ArpUseEtherSNAP
Data type: boolean
Access type: Read-only

 

If TRUE, Ethernet packets follow the IEEE 802.3 Sub-Network Access Protocol (SNAP) encoding. Setting this parameter to 1 forces TCP/IP to transmit Ethernet packets by using 802.3 SNAP encoding. By default (FALSE), the stack transmits packets in DIX Ethernet format. Windows NT/Windows 2000 systems can receive both formats.

 

 

Caption
Data type: string
Access type: Read-only

 

Description of the CIM_Setting object—a one-line string. This property is inherited from CIM_Setting.

 

DatabasePath
Data type: string
Access type: Read-only

 

Valid Windows file path to standard Internet database files (HOSTS, LMHOSTS, NETWORKS, PROTOCOLS). The file path is used by the Windows Sockets interface. This property is only available on Windows NT/Windows 2000 systems.

 

DeadGWDetectEnabled
Data type: boolean

 

If TRUE, dead gateway detection occurs. With this feature enabled, Transmission Control Protocol (TCP) asks Internet Protocol (IP) to change to a backup gateway if it re-transmits a segment several times without receiving a response.

 

DefaultIPGateway
Data type: string array
Access type: Read-only

 

Array of IP addresses of default gateways that the computer system uses.

Example: "192.168.12.1 192.168.46.1"

 

 

DefaultTOS
Data type: uint8
Access type: Read-only

 

Default Type Of Service (TOS) value set in the header of outgoing IP packets. Request for Comments (RFC) 791 defines the values. Default: 0, Valid Range: 0 - 255.

 

DefaultTTL
Data type: uint8
Access type: Read-only

 

Default Time To Live (TTL) value set in the header of outgoing IP packets. The TTL specifies the number of routers an IP packet can pass through to reach its destination before being discarded. Each router decrements by one the TTL count of a packet as it passes through and discards the packets—if the TTL is 0 (zero). Default: 32, Valid Range: 1 - 255.

 

Description
Data type: string
Access type: Read-only

 

Description of the CIM_Setting object. This property is inherited from CIM_Setting.

 

DHCPEnabled
Data type: boolean
Access type: Read-only

 

If TRUE, the dynamic host configuration protocol (DHCP) server automatically assigns an IP address to the computer system when establishing a network connection.

 

DHCPLeaseExpires
Data type: datetime
Access type: Read-only

 

Expiration date and time for a leased IP address that was assigned to the computer by the dynamic host configuration protocol (DHCP) server.

Example: 20521201000230.000000000

 

DHCPLeaseObtained
Data type: datetime
Access type: Read-only

 

Date and time the lease was obtained for the IP address assigned to the computer by the dynamic host configuration protocol (DHCP) server.

Example: 19521201000230.000000000

 

DHCPServer
Data type: string
Access type: Read-only

 

IP address of the dynamic host configuration protocol (DHCP) server.

Example: "10.55.34"

 

DNSDomain
Data type: string
Access type: Read-only

 

Organization name followed by a period and an extension that indicates the type of organization, such as microsoft.com. The name can be any combination of the letters A through Z, the numerals 0 through 9, and the hyphen (-), plus the period (.) character used as a separator.

Example: "microsoft.com"

 

 

DNSDomainSuffixSearchOrder
Data type: string array
Access type: Read-only

 

Array of DNS domain suffixes to be appended to the end of host names during name resolution. When attempting to resolve a fully-qualified domain name (FQDN) from a host only name, the system will first append the local domain name. If this is not successful, the system will use the domain suffix list to create additional FQDNs in the order listed and query DNS servers for each

Example: "samples.microsoft.com example.microsoft.com"

 

DNSEnabledForWINSResolution
Data type: boolean
Access type: Read-only

 

If TRUE, the Domain Name System (DNS) is enabled for name resolution over Windows Internet Naming Service (WINS) resolution. If the name cannot be resolved using DNS, the name request is forwarded to WINS for resolution.

 

DNSHostName
Data type: string
Access type: Read-only

 

Host name used to identify the local computer for authentication by some utilities. Other TCP/IP-based utilities can use this value to acquire the name of the local computer. Host names are stored on DNS servers in a table that maps names to IP addresses for use by DNS. The name can be any combination of the letters A through Z, the numerals 0 through 9, and the hyphen (-), plus the period (.) character used as a separator. By default, this value is the Microsoft networking computer name, but the network administrator can assign another host name without affecting the computer name.

Example: "corpdns"

 

DNSServerSearchOrder
Data type: string array
Access type: Read-only

 

Array of server IP addresses to be used in querying for DNS servers.

 

DomainDNSRegistrationEnabled
Data type: boolean
Access type: Read-only

 

If TRUE, the IP addresses for this connection are registered in DNS under the domain name of this connection in addition to being registered under the computer's full DNS name. The domain name of this connection is either set using the SetDNSDomain() method or assigned by DSCP. The registered name is the host name of the computer with the domain name appended. This property is new for Windows XP.

 

ForwardBufferMemory
Data type: uint32
Access type: Read-only
Qualifiers: Units( Bytes)

 

Memory allocated by IP to store packet data in the router packet queue. When this buffer space is filled, the router begins discarding packets at random from its queue. Packet queue data buffers are 256 bytes in length, so the value of this parameter should be a multiple of 256. Multiple buffers are chained together for larger packets. The IP header for a packet is stored separately. This parameter is ignored and no buffers are allocated if the IP router is not enabled. The buffer size can range from the network MTU to the a value smaller than 0xFFFFFFFF. Default: 74240 (fifty 1480-byte packets, rounded to a multiple of 256).

 

 

FullDNSRegistrationEnabled
Data type: boolean
Access type: Read-only

 

If TRUE, the IP addresses for this connection are registered in DNS under the computer's full DNS name. The full DNS name of the computer is displayed on the Network Identification tab in the System application in Control Panel. This property is new for Windows XP.

 

GatewayCostMetric
Data type: uint16 array
Access type: Read-only

 

Array of integer cost metric values (ranging from 1 to 9999) to be used in calculating the fastest, most reliable, or least expensive routes. This argument has a one-to-one correspondence with the DefaultIPGateway property. Windows 2000 only.

 

IGMPLevel
Data type: uint8
Access type: Read-only

 

Extent to which the system supports IP multicast and participates in the Internet Group Management Protocol. At level 0 (zero), the system provides no multicast support. At level 1, the system may only send IP multicast packets. At level 2, the system may send IP multicast packets and fully participate in IGMP to receive multicast packets.

ValueMeaning
0No Multicast
1IP Multicast
2IP & IGMP multicast (default)

 

Index
Data type: uint32
Access type: Read-only
Qualifiers: Key

 

Index number of the Windows network adapter configuration. The index number is used when there is more than one configuration available.

 

InterfaceIndex
Data type: uint32
Access type: Read-only

Index value that uniquely identifies a local network interface. The value in this property is the same as the value in the InterfaceIndex property in the instance of Win32_IP4RouteTable that represents the network interface in the route table.

Windows XP and earlier:  The InterfaceIndex property is not available.

 

IPAddress
Data type: string array
Access type: Read-only

 

Array of all of the IP addresses associated with the current network adapter.

Example: "172.16.22.0"

 

IPConnectionMetric
Data type: uint32
Access type: Read-only

 

Cost of using the configured routes for the IP bound adapter and is the weighted value for those routes in the IP routing table. If there are multiple routes to a destination in the IP routing table, the route with the lowest metric is used. The default value is 1. This property is new for Windows XP.

 

IPEnabled
Data type: boolean
Access type: Read-only

 

If TRUE, TCP/IP is bound and enabled on this network adapter.

 

IPFilterSecurityEnabled
Data type: boolean
Access type: Read-only

 

If TRUE, IP port security is enabled globally across all IP-bound network adapters and the security values associated with individual network adapters are in effect. This property is used in conjunction with IPSecPermitTCPPorts, IPSecPermitUDPPorts, and IPSecPermitIPProtocols. If FALSE, IP filter security is disabled across all network adapters and allows all port and protocol traffic to flow unfiltered.

 

IPPortSecurityEnabled
Data type: boolean
Access type: Read-only
Qualifiers: Deprecated

 

If TRUE, IP port security is enabled globally across all IP-bound network adapters. This property is obsolete. In place of this property, you should use IPFilterSecurityEnabled.

 

IPSecPermitIPProtocols
Data type: string array
Access type: Read-only

 

Array of the protocols permitted to run over the IP. The list of protocols is defined using the EnableIPSec method. The list will either be empty or contain numeric values. A numeric value of 0 (zero) indicates access permission is granted for all protocols. An empty string indicates that no protocols are permitted to run when IPFilterSecurityEnabled is TRUE.

 

IPSecPermitTCPPorts
Data type: string array
Access type: Read-only

 

Array of the ports that will be granted access permission for TCP. The list of protocols is defined using the EnableIPSec method. The list will either be empty or contain numeric values. A numeric value of 0 (zero)indicates access permission is granted for all ports. An empty string indicates that no ports are granted access permission when IPFilterSecurityEnabled is TRUE.

 

IPSecPermitUDPPorts
Data type: string array
Access type: Read-only

 

Array of the ports that will be granted User Datagram Protocol (UDP) access permission. The list of protocols is defined using the EnableIPSec method. The list will either be empty or contain numeric values. A numeric value of 0 (zero) indicates access permission is granted for all ports. An empty string indicates that no ports are granted access permission when IPFilterSecurityEnabled is TRUE.

 

IPSubnet
Data type: string array
Access type: Read-only

 

Array of all the subnet masks associated with the current network adapter.

Example: "255.255.0"

 

IPUseZeroBroadcast
Data type: boolean
Access type: Read-only

 

If TRUE, IP zeros-broadcasts are used (0.0.0.0), and the system uses ones-broadcasts (255.255.255.255). Computer systems generally use ones-broadcasts, but those derived from BSD implementations use zeros-broadcasts. Systems that do not use that same broadcasts will not interoperate on the same network. The default is FALSE.

 

IPXAddress
Data type: string
Access type: Read-only

 

Internetworking Packet Exchange (IPX) address of the network adapter. The IPX address identifies a computer system on a network using the IPX protocol.

 

IPXEnabled
Data type: boolean
Access type: Read-only

 

If TRUE, the or Internetwork Packet Exchange (IPX) protocol is bound and enabled for this adapter.

 

IPXFrameType
Data type: uint32 array
Access type: Read-only

 

Array of frame type identifiers. The values in this array correspond to the elements in IPXNetworkNumber.

ValueMeaning
0Ethernet II
1Ethernet 802.3
2Ethernet 802.2
3Ethernet SNAP
255AUTO

 

IPXMediaType
Data type: uint32
Access type: Read-only

 

Internetworking Packet Exchange (IPX) media type identifier.

ValueMeaning
1Ethernet
2Token ring
3FDDI
8ARCNET

 

IPXNetworkNumber
Data type: string array
Access type: Read-only

 

Array of characters that uniquely identifies a frame/network adapter combination on the computer system. The NetWare Link (NWLink) IPX/SPX-compatible transport in Windows 2000 and Windows NT 4.0 and later use two distinctly different types of network numbers. This number is sometimes referred to as the external network number. It must be unique for each network segment. The order in this string list will correspond item-for-item with the elements in the IPXFrameType property.

 

IPXVirtualNetNumber
Data type: string
Access type: Read-only

 

Unique identifier of the computer system on the network. It is represented in the form of an eight-character hexadecimal digit. Windows NT 4.0/Windows 2000 uses the virtual network number (also known as an internal network number) for internal routing.

 

KeepAliveInterval
Data type: uint32
Access type: Read-only
Qualifiers: Units( Milliseconds)

 

Interval separating Keep Alive Retransmissions until a response is received. After a response is received, the delay until the next Keep Alive Transmission is again controlled by the value of KeepAliveTime. The connection will be aborted after the number of retransmissions specified by TcpMaxDataRetransmissions have gone unanswered. Default: 1000, Valid Range: 1 - 0xFFFFFFFF.

 

KeepAliveTime
Data type: uint32
Access type: Read-only
Qualifiers: Units( Milliseconds)

 

The KeepAliveTime property indicates how often the TCP attempts to verify that an idle connection is still intact by sending a Keep Alive Packet. A remote system that is reachable will acknowledge the keep alive transmission. Keep Alive packets are not sent by default. This feature may be enabled in a connection by an application. Default: 7,200,000 (two hours)

 

MACAddress
Data type: string
Access type: Read-only

 

Media Access Control (MAC) address of the network adapter. A MAC address is assigned by the manufacturer to uniquely identify the network adapter.

Example: "00:80:C7:8F:6C:96"

 

MTU
Data type: uint32
Access type: Read-only
Qualifiers: Units( Bytes)

 

Overrides the default Maximum Transmission Unit (MTU) for a network interface. The MTU is the maximum packet size (including the transport header) that the transport will transmit over the underlying network. The IP datagram can span multiple packets. The range of this value spans the minimum packet size (68) to the MTU supported by the underlying network.

 

NumForwardPackets
Data type: uint32
Access type: Read-only

 

Number of IP packet headers allocated for the router packet queue. When all headers are in use, the router will begin to discard packets from the queue at random. This value should be at least as large as the ForwardBufferMemory value divided by the maximum IP data size of the networks connected to the router. It should be no larger than the ForwardBufferMemory value divided by 256, since at least 256 bytes of forward buffer memory are used for each packet. The optimal number of forward packets for a given ForwardBufferMemory size depends on the type of traffic on the network. It will be somewhere between these two values. If the router is not enabled, this parameter is ignored and no headers are allocated. Default: 50, Valid Range: 1 - 0xFFFFFFFE

 

PMTUBHDetectEnabled
Data type: boolean
Access type: Read-only

 

If TRUE, detection of black hole routers occurs while TCP discovers the path of the Maximum Transmission Unit. A black hole router does not return ICMP Destination Unreachable messages when it needs to fragment an IP datagram with the Don't Fragment bit set. TCP depends on receiving these messages to perform Path MTU Discovery. With this feature enabled, TCP will try to send segments without the Don't Fragment bit set if several retransmissions of a segment go unacknowledged. If the segment is acknowledged as a result, the MSS will be decreased and the Don't Fragment bit will be set in future packets on the connection. Enabling black hole detection increases the maximum number of retransmissions performed for a given segment. The default value of this property is FALSE.

 

PMTUDiscoveryEnabled
Data type: boolean
Access type: Read-only

 

If TRUE, the Maximum Transmission Unit (MTU) path is discovered over the path to a remote host. By discovering the MTU path and limiting TCP segments to this size, TCP can eliminate fragmentation at routers along the path that connect networks with different MTUs. Fragmentation adversely affects TCP throughput and network congestion. Setting this parameter to FALSE causes an MTU of 576 bytes to be used for all connections that are not to machines on the local subnet. The default is TRUE.

 

ServiceName
Data type: string
Access type: Read-only

 

Service name of the network adapter. This name is usually shorter than the full product name.

Example: "Elnkii"

 

SettingID
Data type: string
Access type: Read-only

 

Identifier by which the CIM_Setting object is known. This property is inherited from CIM_Setting.

 

TcpipNetbiosOptions
Data type: uint32
Access type: Read-only

 

Bitmap of the possible settings related to NetBIOSover TCP/IP. This property is new for Windows XP. Values are identified in the following table.

Value (Dec/Hex)Meaning
0 0x0EnableNetbiosViaDhcp
1 0x1EnableNetbios
2 0x2DisableNetbios

 

TcpMaxConnectRetransmissions
Data type: uint32
Access type: Read-only

 

Number of times TCP attempts to retransmit a Connect Request before terminating the connection. The initial retransmission timeout is 3 seconds. The retransmission timeout doubles for each attempt. Default: 3, Valid Range: 0 - 0xFFFFFFFF.

 

TcpMaxDataRetransmissions
Data type: uint32
Access type: Read-only

 

Number of times TCP re-transmits an individual data segment (non-connect segment) before terminating the connection. The retransmission time-out doubles with each successive retransmission on a connection. Default: 5, Valid Range: 0 - 0xFFFFFFFF.

 

TcpNumConnections
Data type: uint32
Access type: Read-only

 

Maximum number of connections that TCP can have open simultaneously. Default: 0xFFFFFE, Valid Range: 0 - 0xFFFFFE.

 

TcpUseRFC1122UrgentPointer
Data type: boolean
Access type: Read-only

 

If TRUE, TCP uses the RFC 1122 specification for urgent data. If FALSE (default), TCP uses the mode used by Berkeley Software Design (BSD) derived systems. The two mechanisms interpret the urgent pointer differently and are not interoperable. Windows 2000 and Windows NT 3.51 and later default to BSD mode.

 

TcpWindowSize
Data type: uint16
Access type: Read-only
Qualifiers: Units( Bytes)

 

Maximum TCP Receive Window size offered by the system. The Receive Window specifies the number of bytes a sender may transmit without receiving an acknowledgment. In general, larger receiving windows will improve performance over high delay and high bandwidth networks. For efficiency, the receiving window should be an even multiple of the TCP Maximum Segment Size (MSS). Default: Four times the maximum TCP data size or an even multiple of TCP data size rounded up to the nearest multiple of 8192. Ethernet networks default to 8760. Valid range: 0 - 65535.

 

WINSEnableLMHostsLookup
Data type: boolean
Access type: Read-only

 

If TRUE, local lookup files are used. Lookup files will contain a map of IP addresses to host names. If they exist on the local system, they will be found in %SystemRoot%/system32/drivers/etc.

 

WINSHostLookupFile
Data type: string
Access type: Read-only

 

Path to a WINS lookup file on the local system. This file will contain a map of IP addresses to host names. If the file specified in this property is found, it will be copied to the %SystemRoot%/system32/drivers/etc folder of the local system. Valid only if the WINSEnableLMHostsLookup property is TRUE.

 

WINSPrimaryServer
Data type: string
Access type: Read-only

 

IP address for the primary WINS server.

 

WINSScopeID
Data type: string
Access type: Read-only

 

Value appended to the end of the NetBIOS name that isolates a group of computer systems communicating with only each other. It is used for all NetBIOS transactions over TCP/IP communications from that computer system. Computers configured with identical scope identifiers are able to communicate with this computer. TCP/IP clients with different scope identifiers disregard packets from computers with this scope identifier. Valid only when the EnableWINS method executes successfully.

 

WINSSecondaryServer
Data type: string
Access type: Read-only

 

IP address for the secondary WINS server.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
该段代码主要是用于设置网络适配器的 IP 地址、子网掩码、网关和 DNS 服务器,其中还包括一些条件判断。为了优化这段代码,可以考虑以下几个方面: 1. 增加注释:在代码中增加注释可以使代码更加易读,方便其他开发人员理解代码的作用和意图。 2. 合理使用变量:在代码中可以使用变量来存储一些重复使用的对象或属性,以提高代码的可读性和执行效率。 3. 简化条件判断:在代码中可以简化条件判断,减少代码嵌套层次,提高代码可读性。 具体优化建议如下: ``` // 获取网络适配器配置信息 ManagementClass mc = new ManagementClass("Win32_NetworkAdapterConfiguration"); ManagementObjectCollection moc = mc.GetInstances(); // 获取要设置的网络适配器 var card = cards.FirstOrDefault(a => a.Name == model.Cardname); if (card == null) return; var targetAdapter = moc.OfType<ManagementObject>().FirstOrDefault(mo => (bool)mo["IPEnabled"] == true && mo["MacAddress"].ToString() == card.Mac); if (targetAdapter == null) return; // 设置 IP 地址、子网掩码和网关 ManagementBaseObject setIP = targetAdapter.InvokeMethod("EnableStatic", targetAdapter.GetMethodParameters("EnableStatic").SetPropertyValue("IPAddress", new string[] { model.IP }) .SetPropertyValue("SubnetMask", new string[] { model.mask })); ManagementBaseObject setGate = targetAdapter.InvokeMethod("SetGateways", targetAdapter.GetMethodParameters("SetGateways").SetPropertyValue("DefaultIPGateway", new string[] { model.gateway })); // 设置 DNS 服务器 if (model.InOutInternet.Equals("Out")) { ManagementBaseObject setDNS = targetAdapter.InvokeMethod("SetDNSServerSearchOrder", targetAdapter.GetMethodParameters("SetDNSServerSearchOrder").SetPropertyValue("DNSServerSearchOrder", new string[] { model.DNS1, model.DNS2 })); } ``` 在上述优化建议中,我们将代码进行了重构,使用变量存储了要设置的网络适配器和相关的参数,并且简化了条件判断。同时,我们也增加了注释来说明代码的作用和意图。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值