Aller au contenu

ping - Test de connectivité réseau

Copier toutes les commandes Générer PDF

Commandes de ping complètes et tests de connectivité réseau sur Windows, Linux et macOS.

Utilisation de base

Connectivité simple Essai

Platform Command Description
All ping hostname Basic connectivity test
All ping 8.8.8.8 Test with Google DNS
All ping google.com Test with domain name

Différences spécifiques à la plate-forme

Feature Windows Linux/macOS
Default count 4 packets Continuous
Stop continuous N/A Ctrl+C
IPv6 ping -6 ping6 or ping -6

Options avancées

Nombre de paquets et calendrier

Platform Command Description
Windows ping -n 10 hostname Send 10 packets
Linux/macOS ping -c 10 hostname Send 10 packets
Windows ping -t hostname Continuous ping
Linux/macOS ping hostname Continuous (default)

Taille du paquet et intervalle

Platform Command Description
Windows ping -l 1024 hostname Set packet size to 1024 bytes
Linux/macOS ping -s 1024 hostname Set packet size to 1024 bytes
Windows ping -w 5000 hostname Timeout in milliseconds
Linux/macOS ping -W 5 hostname Timeout in seconds
Linux/macOS ping -i 2 hostname 2-second interval between packets

Essais avancés

Platform Command Description
All ping -f hostname Flood ping (requires root on Linux/macOS)
Linux/macOS ping -D hostname Print timestamp
Linux/macOS ping -a hostname Audible ping
Windows ping -a hostname Resolve hostname to IP

Assistance IPv6

Commandes IPv6 Ping

Platform Command Description
Windows ping -6 hostname IPv6 ping
Linux ping6 hostname IPv6 ping (traditional)
Linux ping -6 hostname IPv6 ping (modern)
macOS ping6 hostname IPv6 ping

Exemples IPv6

# Test IPv6 connectivity
ping6 google.com
ping6 2001:4860:4860::8888  # Google DNS IPv6

# Windows IPv6
ping -6 google.com
ping -6 2001:4860:4860::8888

Diagnostics réseau

MTU Découverte

Platform Command Description
Windows ping -f -l 1472 hostname Test MTU (don't fragment)
Linux/macOS ping -M do -s 1472 hostname Test MTU (don't fragment)

Essais sur route

# Test specific route
ping -R hostname  # Record route (Linux/macOS)
ping -r hostname  # Record route (Windows, limited)

# Test with specific interface
ping -I eth0 hostname  # Linux
ping -S source_ip hostname  # Windows
```_

## Dépannage

### Questions et solutions communes
|Problem|Symptoms|Solution|
|---------|----------|----------|
|**Request timeout**|No response|Check firewall, network connectivity|
|**Destination unreachable**|ICMP error|Check routing, DNS resolution|
|**Permission denied**|Flood ping fails|Use sudo/administrator privileges|
|**Name resolution failed**|Unknown host|Check DNS settings|

### Commandes diagnostiques
```bash
# Test local connectivity
ping 127.0.0.1        # Loopback test
ping localhost        # Local hostname test

# Test gateway
ping $(route -n get default|grep gateway|awk '\\\\{print $2\\\\}')  # macOS
ping $(ip route|grep default|awk '\\\\{print $3\\\\}')             # Linux
ping $(ipconfig|findstr "Default Gateway"|awk '\\\\{print $NF\\\\}') # Windows

# Test DNS
ping 8.8.8.8          # Google DNS
ping 1.1.1.1          # Cloudflare DNS
```_

## Analyse des résultats

### Interprétation des statistiques
|Metric|Description|Good Value|
|--------|-------------|------------|
|**RTT (Round Trip Time)**|Time for packet round trip|< 50ms local, < 200ms internet|
|**Packet Loss**|Percentage of lost packets|0% ideal, < 1% acceptable|
|**Jitter**|Variation in RTT|< 10ms|

### Surveillance continue
```bash
# Long-term monitoring
ping -c 1000 hostname > ping_results.txt  # Linux/macOS
ping -n 1000 hostname > ping_results.txt  # Windows

# Monitor with timestamps
ping hostname|while read line; do echo "$(date): $line"; done  # Linux/macOS

Scénario et automatisation

Exemples de scripts de masse

#!/bin/bash
# Network connectivity checker

hosts=("google.com" "github.com" "stackoverflow.com")

for host in "$\\\\{hosts[@]\\\\}"; do
    if ping -c 1 "$host" &> /dev/null; then
        echo "✓ $host is reachable"
    else
        echo "✗ $host is unreachable"
    fi
done

Exemples de PowerShell

# PowerShell network test
$hosts = @("google.com", "github.com", "stackoverflow.com")

foreach ($host in $hosts) \\\\{
    if (Test-Connection -ComputerName $host -Count 1 -Quiet) \\\\{
        Write-Host "✓ $host is reachable" -ForegroundColor Green
    \\\\} else \\\\{
        Write-Host "✗ $host is unreachable" -ForegroundColor Red
    \\\\}
\\\\}

Considérations en matière de sécurité

Pare-feu et ICMP

  • De nombreux pare-feu bloquent le trafic ICMP
  • Certains réseaux désactivent les réponses ping
  • Utiliser d'autres outils si ping est bloqué

Limite des taux

  • Éviter les inondations sur les réseaux de production
  • Respecter les politiques du réseau et les limites tarifaires
  • Utiliser des intervalles appropriés pour la surveillance

Meilleures pratiques

Essais en réseau

  1. Démarrer Simple: Commencez par ping basique vers des hôtes connus
  2. Test Layers: Tester IP, puis DNS, puis application
  3. Résultats du document: tenir des registres des tests de réseau
  4. Utiliser plusieurs cibles: Tester différentes destinations
  5. ** Consider Time**: La performance du réseau varie selon le temps

Surveillance

  1. Base: Établir des paramètres de performance normaux
  2. Alerting: Configurer des alertes pour perte de paquets ou latence élevée
  3. Tendance: performance de la piste dans le temps
  4. Correlation: Corrélation avec d'autres paramètres du réseau
  5. Documentation: Topologie du réseau documentaire et performance attendue