<socket-element> (nätverksinställningar)
Anger om socketåtgärder använder slutförandeportar.
<Konfiguration>
<system.net>
<Inställningar>
<Socket>
Syntax
<socket
alwaysUseCompletionPortsForConnect="true|false"
alwaysUseCompletionPortsForAccept="true|false"
ipProtectionLevel="EdgeRestricted|Restricted|Unrestricted|Unspecified"
/>
Attribut och element
I följande avsnitt beskrivs attribut, underordnade element och överordnade element.
Attribut
Attribut | Beskrivning |
---|---|
alwaysUseCompletionPortsForAccept |
Anger om socketen alltid ska använda slutförandeportar för Accept method-anrop. Standardvärdet är false . |
alwaysUseCompletionPortsForConnect |
Anger om socketen alltid ska använda slutförandeportar för Connect-metodanrop. Standardvärdet är false . |
ipProtectionLevel |
Anger standardvärdet System.Net.Sockets.IPProtectionLevel som ska användas för en socket. Standardvärdet beror på versionen av Windows. |
Underordnade element
Inga.
Överordnade element
Element | Beskrivning |
---|---|
inställningar | Konfigurerar grundläggande nätverksalternativ för System.Net namnområdet. |
Kommentarer
Attributen alwaysUseCompletionPortsForAccept
och alwaysUseCompletionPortsForConnect
används för att ange standardbeteendet för användningen av slutförandeportar av klasserna i System.Net.Sockets.namespace. Kompletteringsportar rekommenderas för serverprogram med höga prestanda.
Standardvärdet för attributen alwaysUseCompletionPortsForAccept
och alwaysUseCompletionPortsForConnect
är false.
AlwaysUseCompletionPortsForAccept kan användas för att hämta det aktuella värdet för alwaysUseCompletionPortsForAccept
attributet från tillämpliga konfigurationsfiler. AlwaysUseCompletionPortsForConnect kan användas för att hämta det aktuella värdet för alwaysUseCompletionPortsForConnect
attributet från tillämpliga konfigurationsfiler.
Attributet ipProtectionLevel
anger standardvärdet System.Net.Sockets.IPProtectionLevel som ska användas för en socket. Egenskapen IPProtectionLevel aktiverar konfiguration av en begränsning för en IPv6-socket till ett angivet omfång, till exempel adresser med samma lokala länk- eller platsprefix. Det här alternativet gör det möjligt för program att tillämpa åtkomstbegränsningar på IPv6-sockets. Sådana begränsningar gör att ett program som körs på ett privat LAN enkelt och robust kan härda sig mot externa attacker. Det här alternativet breddar eller begränsar omfånget för en lyssningssocket, vilket möjliggör obegränsad åtkomst från offentliga och privata användare när det är lämpligt eller begränsar åtkomsten endast till samma plats efter behov.
Den här ipProtectionLevel
attributinställningen påverkar endast inledande inkommande trafik:
En TCP-server som lyssnar efter inkommande anslutningar på en socket.
Ett UDP-program som tar emot ett paket på en socket.
Den här konfigurationsinställningen påverkar inte redan etablerade TCP-anslutningar (trafiken är obegränsad i båda riktningarna) och påverkar inte ett program som skickar UDP-paket.
Möjliga värden för attributinställningen ipProtectionLevel
motsvarar de definierade skyddsnivåer som anges i System.Net.Sockets.IPProtectionLevel uppräkningen enligt följande:
Attributvärde | Beskrivning |
---|---|
EdgeRestricted | IP-skyddsnivån är gränsbegränsad. Det här värdet används av program som är utformade för att fungera över Internet. Den här inställningen tillåter inte nat-bläddering (Network Address Translation) med hjälp av Windows Teredo-implementeringen. Dessa program kan kringgå IPv4-brandväggar, så programmen måste härdas mot Internetattacker riktade mot den öppna porten. På Windows Server 2003 och Windows XP är standardvärdet för IP-skyddsnivån på en socket gränsbegränsad. |
Begränsade | IP-skyddsnivån är begränsad. Det här värdet används av intranätprogram som inte implementerar Internetscenarier. Dessa program testas eller härdas vanligtvis inte mot internetangrepp. Den här inställningen begränsar den mottagna trafiken till endast länklokal. |
Obegränsat | IP-skyddsnivån är obegränsad. Det här värdet används av program som är utformade för att fungera över Internet, inklusive program som utnyttjar IPv6 NAT-bläddningsfunktioner som är inbyggda i Windows (t.ex. Teredo). Dessa program kan kringgå IPv4-brandväggar, så programmen måste härdas mot Internetattacker riktade mot den öppna porten. På Windows Server 2008 R2 och Windows Vista är standardvärdet för IP-skyddsnivån på en socket obegränsat. |
Ospecificerat | IP-skyddsnivån är ospecificerad. På Windows 7 och Windows Server 2008 R2 är standardvärdet för IP-skyddsnivån på en socket ospecificerat. |
Standardvärdet för ipProtectionLevel
attributet är Ospecificerat.
Egenskapen IPProtectionLevel kan användas för att hämta det aktuella värdet för ipProtectionLevel
attributet från tillämpliga konfigurationsfiler.
Konfigurationsfiler
Det här elementet kan användas i programkonfigurationsfilen eller datorkonfigurationsfilen (Machine.config).
Exempel
I följande exempel visas hur du anger att slutförandeportar ska användas och att standardvärdet System.Net.Sockets.IPProtectionLevel ska vara obegränsat.
<configuration>
<system.net>
<settings>
<socket
alwaysUseCompletionPortsForAccept="true"
alwaysUseCompletionPortsForConnect="true"
ipProtectionLevel="Unrestricted"
/>
</settings>
</system.net>
</configuration>