J'utilise une instance NAT pour connecter des instances à Internet dans un sous-réseau Amazon Virtual Private Cloud (Amazon VPC). Toutefois, les instances rencontrent des problèmes de connexion intermittents.
Brève description
Les problèmes de connexion intermittents peuvent être liés aux facteurs suivants :
- Épuisement du port sur la source
- Restrictions relatives à la liste de contrôle d'accès au réseau (ACL réseau)
- Problèmes liés au réseau
Résolution
Réduisez l'épuisement des ports de la source
Vérifiez que les instances du sous-réseau privé ont atteint les limites de connexion au niveau de leur système d'exploitation. Pour obtenir le nombre de connexions actives, exécutez la commande netstat.
Linux :
netstat -ano | grep ESTABLISHED | wc --l
netstat -ano | grep TIME_WAIT | wc --l
Windows :
netstat -ano | find /i "estab" /c
netstat -ano | find /i "TIME_WAIT" /c
**Remarque :**Si vous avez configuré le paramètre TCP pour réutiliser les ports pendant l'état TIME_WAIT, supprimez TIME_WAIT des commandes précédentes.
Si la commande renvoie une valeur proche de la plage de ports locaux autorisée (port source pour les connexions client), il est possible que les ports soient épuisés. Pour réduire l'épuisement des ports, essayez l'une des solutions suivantes.
Augmentez la plage de ports éphémères du système d'exploitation en exécutant la commande suivante :
Pour Windows, exécutez en tant qu'administrateur :
netsh int ipv4 set dynamicport tcp start=1025 num=61000
Pour Linux, exécutez en tant que root :
$echo 1024 65535 > /proc/sys/net/ipv4/ip_local_port_range
**Remarque :**Selon le type de distribution, définissez le paramètre précédent de façon permanente lors des redémarrages.
-ou-
Résolvez tous les problèmes au niveau de l'application qui épuisent les connexions disponibles.
Vérifiez que les règles ACL du réseau autorisent le trafic pour la plage de ports éphémères
L'ACL réseau des sous-réseaux publics et privés doit autoriser le trafic pour la plage de ports éphémères (1024-65535).
Par exemple, pour autoriser vos instances Amazon Elastic Compute Cloud (Amazon EC2) à accéder à un site Web HTTPS, l'ACL réseau associé au sous-réseau privé doit respecter les règles suivantes :
Règles relatives aux appels entrants :
| | | |
---|
Source | Protocole | Plage de ports | Autoriser/Refuser |
PUBLIC_IP | TCP | 1024-65535 | AUTORISER |
Règles de trafic sortant :
| | | |
---|
Destination | Protocole | Plage de ports | Autoriser/Refuser |
PUBLIC_IP | TCP | 443 | AUTORISER |
L'ACL réseau associé au sous-réseau de l'instance NAT doit respecter les règles suivantes :
Règles relatives aux appels entrants :
| | | |
---|
Source | Protocole | Plage de ports | Autoriser/Refuser |
CIDR VPC | TCP | 443 | AUTORISER |
PUBLIC_IP | TCP | 1024-65535 | AUTORISER |
Règles de trafic sortant :
| | | |
---|
Destination | Protocole | Plage de ports | Autoriser/Refuser |
PUBLIC_IP | TCP | 443 | AUTORISER |
CIDR VPC | TCP | 1024-65535 | AUTORISER |
Le trafic est interrompu dans les cas suivants :
- L'ACL réseau n'autorise qu'un sous-ensemble de la plage de ports éphémères.
- Les instances du sous-réseau privé ou de l'instance NAT utilisent un port source situé en dehors de la plage de ports éphémères.
Vérifiez les problèmes de réseau
Si les performances du réseau sont dégradées sur la source, le NAT, le support réseau ou la destination, vous pouvez rencontrer des problèmes de connexion. Pour plus de détails, voir Comment résoudre les problèmes de performances réseau entre les instances EC2 Linux ou Windows d'un VPC et un hôte sur site via la passerelle Internet ?
Vous pouvez également rencontrer des problèmes de réseau lorsque le réseau dépasse ses limites maximales au niveau de l'instance. Pour les types d'instances pris en charge, vous pouvez utiliser les mesures de performance réseau de l'Elastic Network Adaptor (ENA) pour surveiller lorsque le trafic dépasse les maximums. Pour en savoir plus, consultez la section Surveiller les performances réseau de votre instance EC2.
Informations connexes
Ports éphémères