PHP-connexion MySQLi au hasard échoue avec “Impossible d'assigner une adresse demandée”

Depuis environ 2 semaines, je fais face à un des plus bizarre des problèmes dans la LAMPE de la pile.
Longue histoire courte au hasard connexion au serveur MySQL échoue avec le message d'erreur:

Warning:  mysqli::real_connect(): (HY000/2002): Cannot assign requested address in ..

MySQL se trouve sur une autre "case", hébergé chez Rackspace Cloud
Aujourd'hui, nous avons déclassé c'est la version de

Ver 14.14 Distrib 5.1.42, for debian-linux-gnu (x86_64).

Le serveur de base de données est assez occupé à traiter des Requêtes par seconde avg: 5327.957 selon c'est la variable d'état.

MySQL est dans le journal-avertissements=9, mais pas de guerre pour connexion refusée êtes connecté.
À la fois site et gearman travailleurs scripts échouer avec l'erreur à disons 1% de probabilité.
Pas de charge de serveur NE semble PAS être un facteur que nous surveillons. (Charge CPU, IO charge ou MySQL charge)
Le maximum de DB connections (max_connections) sont programmés à 200, mais nous n'avons jamais thématiques avec plus de 100 connexions simultanées à la base de données

Il arrive avec et sans le logiciel de pare-feu.

Je soupçonne TCP problème de Réseau plutôt que de PHP/MySQL configurationn problème.

Quelqu'un peut-il me donner la moindre idée de comment le trouver?

Mise à JOUR:

Le code de connexion est:

$this->_mysqli = mysqli_init(); 
$this->_mysqli->options(MYSQLI_OPT_CONNECT_TIMEOUT, 120); 
$this->_mysqli->real_connect($dbHost,$dbUserName, $dbPassword, $dbName); 

if (!is_null($this->_mysqli->connect_error)) {
    $ping = $this->_mysqli->ping(); 

    if(!$ping){
        $error = 'HOST: {'.$dbHost.'};MESSAGE: '. $this->_mysqli->connect_error ."\n"; 
        DataStoreException::raiseHostUnreachable($error);
    }
} 
Pouvons-nous voir votre code de connexion? À défaut, essayez de le connecter à l'adresse 127.0.0.1 pour éliminer toute DHCP interférences.
Nous connecter à l'adresse IP de réseau interne
Ma suggestion: pour le dépannage de l'est de l'essayer et de le répliquer tout en surveillant les connexions sortantes sur cette zone. Utiliser wireshark ou tout ce que vous avez besoin. Lorsqu'il échoue, assurez-vous qu'il avait vraiment une connexion sortante. Tracer à travers le réseau à partir de là. J'ai fait quelques recherches sur google, et tous les résultats suggèrent un problème de réseau.

OriginalL'auteur Nenko Ivanov | 2010-07-09