Partager via


Résoudre les problèmes de réseau virtuel

Cet article fournit des conseils pour résoudre les scénarios courants pour les réseaux virtuels dans Microsoft Power Platform. Cet article se concentre sur l’utilisation du module PowerShell Microsoft.PowerPlatform.EnterprisePolicies pour vous aider à identifier et résoudre les problèmes liés aux configurations de réseau virtuel.

Utiliser le module PowerShell de diagnostics

Le Microsoft.PowerPlatform.EnterprisePolicies module PowerShell est conçu pour vous aider à diagnostiquer et résoudre les problèmes liés aux configurations de réseau virtuel dans Power Platform. Vous pouvez utiliser l’outil pour vérifier la connectivité entre votre environnement Power Platform et votre réseau virtuel. Vous pouvez également l’utiliser pour identifier les configurations incorrectes susceptibles de provoquer des problèmes. Ce module PowerShell de diagnostic est disponible à partir de PowerShell Gallery et de son dépôt GitHub, PowerPlatform-EnterprisePolicies.

Installez le module

Pour installer le module PowerShell de diagnostics, exécutez la commande PowerShell suivante :

Install-Module -Name Microsoft.PowerPlatform.EnterprisePolicies

Exécuter les fonctions de diagnostic

Une fois le module installé, importez-le dans votre session PowerShell en exécutant la commande suivante :

Import-Module Microsoft.PowerPlatform.EnterprisePolicies

Le module inclut plusieurs fonctions pour diagnostiquer et résoudre les problèmes liés aux configurations de réseau virtuel. Voici quelques-unes des fonctions clés :

  • Get-EnvironmentRegion : récupère la région de l’environnement Power Platform spécifié
  • Get-EnvironmentUsage : fournit des informations sur l’utilisation de l’environnement Power Platform spécifié
  • Test-DnsResolution : teste la résolution DNS pour le nom de domaine spécifié
  • Test-NetworkConnectivity : teste la connectivité réseau entre l’environnement Power Platform et le réseau virtuel spécifié

Signaler des problèmes dans le module diagnostics

Si vous rencontrez des problèmes lorsque vous exécutez le module de diagnostic, signalez-les via le référentiel GitHub où le module est hébergé. Le référentiel est disponible sur : PowerPlatform-EnterprisePolicies.

Pour signaler un problème, accédez à la section Problèmes du référentiel et ouvrez un nouveau problème. Fournissez des informations détaillées sur le problème que vous rencontrez, y compris les messages d’erreur ou les entrées de journal qui peuvent vous aider lorsque vous examinez le problème. N’incluez aucune information sensible dans votre rapport.

Résolution des problèmes courants

Les régions sont mal configurées

Si tout est correctement configuré, mais que vous rencontrez toujours des problèmes, utilisez la Get-EnvironmentRegion fonction du module PowerShell de diagnostics pour vérifier si les régions de votre environnement Power Platform sont identiques aux régions de votre réseau virtuel. Exécutez la commande suivante:

Get-EnvironmentRegion -EnvironmentId "<EnvironmentId>"

Votre environnement appartient à une région PowerPlatform spécifique. Toutefois, une région PowerPlatform peut s’étendre sur deux régions Azure. Votre environnement peut se trouver dans l’une ou l’autre région, et il peut également basculer automatiquement entre eux. Par conséquent, pour garantir la haute disponibilité et la connectivité, configurez votre réseau virtuel dans les deux régions Azure associées à votre région PowerPlatform. Pour savoir comment les régions PowerPlatform sont mappées aux régions Azure qui prennent en charge la fonctionnalité de réseau virtuel, consultez les régions Power Platform.

Nom d’hôte introuvable

Si vous rencontrez des problèmes qui affectent la résolution du nom d’hôte, utilisez la Test-DnsResolution fonction du module PowerShell de diagnostics pour vérifier si le nom d’hôte est résolu correctement. Exécutez la commande suivante:

Test-DnsResolution -EnvironmentId "<EnvironmentId>" -HostName "<HostName>"

Cette commande teste la résolution DNS pour le nom d’hôte spécifié dans le contexte de votre environnement Power Platform. La demande démarre à partir de votre sous-réseau délégué et tente de résoudre le nom d’hôte à l’aide du serveur DNS configuré pour votre réseau virtuel. Si le nom d’hôte n’est pas résolu correctement, vous devrez peut-être vérifier vos paramètres DNS pour vous assurer que le nom d’hôte est configuré correctement.

Important

Si vous remarquez que votre configuration DNS est incorrecte et que vous devez mettre à jour les paramètres du serveur DNS pour votre réseau virtuel, voir Puis-je mettre à jour l’adresse DNS de mon réseau virtuel après son délégué à « Microsoft.PowerPlatform/enterprisePolicies » ?

La requête utilise une adresse IP publique au lieu de l’adresse IP privée

Si vous rencontrez des problèmes où les demandes adressées à une ressource utilisent une adresse IP publique au lieu de l’adresse IP privée, la résolution DNS du nom d’hôte de la ressource peut renvoyer une adresse IP publique. Ce problème peut se produire avec des ressources Azure et non-Azure.

Ressource non-Azure sans point de terminaison privé

Si une ressource non-Azure n’a pas de point de terminaison privé, mais qu’elle est accessible à partir de votre réseau virtuel, votre serveur DNS doit être configuré pour résoudre le nom d’hôte de la ressource en son adresse IP privée. Ajoutez un enregistrement DNS A à votre serveur DNS qui mappe le nom d’hôte de la ressource à son adresse IP privée :

  • Si vous utilisez un serveur DNS personnalisé, ajoutez l’enregistrement A directement à votre serveur.
  • Si vous utilisez un DNS fourni par Azure, créez une zone DNS privée Azure et liez-la à votre réseau virtuel. Ensuite, ajoutez l’enregistrement A à la zone DNS privée.

Ce mappage garantit que la ressource est accessible via son adresse IP privée.

Ressource Azure avec un point de terminaison privé

Si une ressource Azure a un point de terminaison privé, la résolution DNS du nom d’hôte de la ressource doit retourner l’adresse IP privée associée au point de terminaison privé. Si la résolution DNS retourne une adresse IP publique à la place, les enregistrements peuvent être manquants dans votre configuration DNS. Suivez ces étapes :

  1. Vérifiez qu’une zone DNS privée existe pour votre type de ressource. Par exemple, privatelink.database.windows.net pour Azure SQL Database. Si la zone DNS privée n’existe pas, créez-en une.
  2. Vérifiez que la zone DNS privée est liée à votre réseau virtuel. Si la zone DNS privée n’est pas liée à votre réseau virtuel, liez-la.

Une fois la zone DNS privée liée à votre réseau virtuel, le nom d’hôte de la ressource doit être résolu en adresse IP privée associée au point de terminaison privé.

Tester les modifications de configuration DNS

Après avoir mis à jour la configuration DNS, utilisez la fonction Test-DnsResolution à partir du module de diagnostics PowerShell pour vérifier que le nom d'hôte se résout à l'adresse IP privée correcte. Exécutez la commande suivante:

Test-DnsResolution -EnvironmentId "<EnvironmentId>" -HostName "<HostName>"

Impossible de se connecter à la ressource

Si vous rencontrez des problèmes qui affectent la connectivité à une ressource, utilisez la Test-NetworkConnectivity fonction du module PowerShell de diagnostics pour vérifier la connectivité. Exécutez la commande suivante:

Test-NetworkConnectivity -EnvironmentId "<EnvironmentId>" -Destination "<ResourceAddress>" -Port 1433

Cette commande tente d’établir une connexion TCP à la destination et au port spécifiés dans le contexte de votre environnement Power Platform. La demande démarre à partir de votre sous-réseau délégué et tente de se connecter à la destination spécifiée à l’aide de la configuration réseau de votre réseau virtuel. Si la connexion échoue, vous devrez peut-être vérifier vos paramètres réseau pour vous assurer que la destination est accessible à partir de votre réseau virtuel. Une connexion réussie indique que la connectivité réseau existe entre l’environnement Power Platform et la ressource spécifiée.

Note

Cette commande teste uniquement si une connexion TCP peut être établie sur la destination et le port spécifiés. Elle ne teste pas si la ressource est disponible ou si des problèmes au niveau de l’application peuvent empêcher l’accès à la ressource. Certains pare-feu peuvent autoriser l’établissement de connexions TCP, mais ils bloquent ensuite le trafic réel vers la ressource (par exemple, HTTPS). Par conséquent, même si la commande indique la connectivité réseau, cet état ne garantit pas que la ressource est entièrement accessible.

La connectivité réussit, mais l’application ne fonctionne toujours pas

Si les tests de connectivité réussissent, mais que vous rencontrez toujours des problèmes dans votre application, vous devrez peut-être vérifier les paramètres et configurations au niveau de l’application, comme suit :

  1. Vérifiez que votre pare-feu autorise l’accès du sous-réseau délégué à la ressource.
  2. Vérifiez que le certificat présenté par la ressource est approuvé publiquement.
  3. Assurez-vous qu’aucun problème d’authentification ou d’autorisation n’existe qui empêche l’accès à la ressource.

Vous ne pouvez peut-être pas diagnostiquer ou résoudre le problème à l’aide du module PowerShell de diagnostics. Dans ce cas, créez un sous-réseau sans délégation dans votre réseau virtuel et déployez une machine virtuelle dans ce sous-réseau. Vous pouvez ensuite utiliser la machine virtuelle pour effectuer d’autres étapes de diagnostic et de résolution des problèmes, telles que la vérification du trafic réseau, l’analyse des journaux et le test de la connectivité au niveau de l’application.