Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Spécifie si les opérations de socket utilisent des ports d’achèvement.
<Configuration>
<system.net>
<Paramètres>
<prise>
Syntaxe
<socket
alwaysUseCompletionPortsForConnect="true|false"
alwaysUseCompletionPortsForAccept="true|false"
ipProtectionLevel="EdgeRestricted|Restricted|Unrestricted|Unspecified"
/>
Attributs et éléments
Les sections suivantes décrivent des attributs, des éléments enfants et des éléments parents.
Attributes
| Attribut | Description |
|---|---|
alwaysUseCompletionPortsForAccept |
Indique si le socket doit toujours utiliser des ports d’achèvement pour les appels de méthode Accept. La valeur par défaut est false. |
alwaysUseCompletionPortsForConnect |
Indique si le socket doit toujours utiliser des ports d’achèvement pour les appels de méthode Connect. La valeur par défaut est false. |
ipProtectionLevel |
Spécifie la valeur par défaut System.Net.Sockets.IPProtectionLevel à utiliser pour un socket. La valeur par défaut dépend de la version de Windows. |
Éléments enfants
Aucun.
Éléments parents
| Élément | Description |
|---|---|
| Paramètres | Configure les options réseau de base pour l’espace System.Net de noms. |
Remarques
Les alwaysUseCompletionPortsForAccept attributs et alwaysUseCompletionPortsForConnect les attributs sont utilisés pour spécifier le comportement par défaut concernant l’utilisation des ports d’achèvement par les classes dans l’espace System.Net.Socketsde noms .. Les ports d’achèvement sont recommandés pour les applications serveur hautes performances.
La valeur par défaut pour les attributs et alwaysUseCompletionPortsForAccept les alwaysUseCompletionPortsForConnect attributs est false.
Permet AlwaysUseCompletionPortsForAccept d’obtenir la valeur actuelle de l’attribut alwaysUseCompletionPortsForAccept à partir des fichiers de configuration applicables. Permet AlwaysUseCompletionPortsForConnect d’obtenir la valeur actuelle de l’attribut alwaysUseCompletionPortsForConnect à partir des fichiers de configuration applicables.
L’attribut ipProtectionLevel spécifie la valeur par défaut System.Net.Sockets.IPProtectionLevel à utiliser pour un socket. La IPProtectionLevel propriété active la configuration d’une restriction pour un socket IPv6 dans une étendue spécifiée, par exemple des adresses avec le même préfixe local de lien ou de site. Cette option permet aux applications de placer des restrictions d’accès sur des sockets IPv6. Ces restrictions permettent à une application s’exécutant sur un réseau local privé de se renforcer simplement et robustement contre les attaques externes. Cette option s’étend ou limite l’étendue d’un socket d’écoute, ce qui permet un accès illimité à partir d’utilisateurs publics et privés, le cas échéant, ou limite l’accès uniquement au même site, selon les besoins.
Ce ipProtectionLevel paramètre d’attribut affecte uniquement le trafic entrant initial :
Un serveur TCP qui écoute les connexions entrantes sur un socket.
Une application UDP recevant un paquet sur un socket.
Ce paramètre de configuration n’affecte pas les connexions TCP déjà établies (le trafic est illimité dans les deux sens) et n’affecte pas une application qui envoie des paquets UDP.
Les valeurs possibles pour le paramètre d’attribut ipProtectionLevel correspondent aux niveaux de protection définis spécifiés dans l’énumération System.Net.Sockets.IPProtectionLevel comme suit :
| Valeur d’attribut | Description |
|---|---|
| EdgeRestricted | Le niveau de protection IP est limité à la périphérie. Cette valeur serait utilisée par les applications conçues pour fonctionner sur Internet. Ce paramètre n’autorise pas la traversée NAT (Network Address Translation) à l’aide de l’implémentation de Windows Teredo. Ces applications peuvent contourner les pare-feu IPv4, de sorte que les applications doivent être renforcées contre les attaques Internet dirigées vers le port ouvert. Sur Windows Server 2003 et Windows XP, la valeur par défaut pour le niveau protection IP sur un socket est restreinte. |
| Limité | Le niveau de protection IP est restreint. Cette valeur serait utilisée par les applications intranet qui n’implémentent pas de scénarios Internet. Ces applications ne sont généralement pas testées ou renforcées contre les attaques de style Internet. Ce paramètre limite le trafic reçu uniquement aux liaisons locales. |
| Non restreint | Le niveau de protection IP est illimité. Cette valeur serait utilisée par les applications conçues pour fonctionner sur Internet, notamment les applications qui tirent parti des fonctionnalités de traversée NAT IPv6 intégrées à Windows (Teredo, par exemple). Ces applications peuvent contourner les pare-feu IPv4, de sorte que les applications doivent être renforcées contre les attaques Internet dirigées vers le port ouvert. Sur Windows Server 2008 R2 et Windows Vista, la valeur par défaut du niveau protection IP sur un socket est illimitée. |
| Non spécifié | Le niveau de protection IP n’est pas spécifié. Sur Windows 7 et Windows Server 2008 R2, la valeur par défaut du niveau protection IP sur un socket n’est pas spécifiée. |
La valeur par défaut de l’attribut n’est ipProtectionLevelpas spécifiée.
La IPProtectionLevel propriété peut être utilisée pour obtenir la valeur actuelle de l’attribut ipProtectionLevel à partir des fichiers de configuration applicables.
Fichiers de configuration
Cet élément peut être utilisé dans le fichier de configuration de l’application ou dans le fichier de configuration de l’ordinateur (Machine.config).
Example
L’exemple suivant montre comment spécifier que les ports d’achèvement doivent être utilisés et que la valeur par défaut System.Net.Sockets.IPProtectionLevel doit être illimitée.
<configuration>
<system.net>
<settings>
<socket
alwaysUseCompletionPortsForAccept="true"
alwaysUseCompletionPortsForConnect="true"
ipProtectionLevel="Unrestricted"
/>
</settings>
</system.net>
</configuration>