> ## Documentation Index
> Fetch the complete documentation index at: https://docs.devhelm.io/llms.txt
> Use this file to discover all available pages before exploring further.

# ICMP Monitors

> Monitor host reachability with DevHelm ICMP (ping) monitors

ICMP monitors verify that a host is reachable by sending ping packets and measuring response time and packet loss. They're the simplest form of availability monitoring — if the host doesn't respond to pings, it's likely down.

<Tip>
  **Define this in code.** [YAML format](/mac/yaml/monitors) · [Terraform](/mac/terraform/monitors)
</Tip>

## When to use ICMP monitors

* **Infrastructure reachability** — verify servers, routers, and network devices respond
* **Network latency tracking** — measure round-trip time between regions and hosts
* **Baseline availability** — simple up/down detection when HTTP or TCP isn't applicable
* **Packet loss detection** — identify network quality issues

<Note>
  Some hosts and firewalls block ICMP. If you can't ping a host from your machine, ICMP monitoring won't work for it. Use TCP or HTTP monitors instead.
</Note>

## Quick example

<CodeGroup>
  ```bash CLI theme={null}
  devhelm monitors create \
    --name "Gateway" \
    --type ICMP \
    --url gateway.example.com \
    --frequency 60 \
    --regions us-east
  ```

  ```yaml devhelm.yml theme={null}
  monitors:
    - name: Gateway
      type: ICMP
      config:
        host: gateway.example.com
        packetCount: 5
      frequencySeconds: 60
      regions: [us-east]
      assertions:
        - config:
            type: icmp_reachable
          severity: fail
        - config:
            type: icmp_packet_loss
            maxPercent: 20
          severity: warn
  ```
</CodeGroup>

## Next steps

<CardGroup cols={2}>
  <Card title="Configuration" icon="gear" href="/monitoring/icmp/configuration">
    Host, packet count, timeout, and ICMP assertions.
  </Card>

  <Card title="Monitoring overview" icon="signal" href="/monitoring/overview">
    Compare all six monitor types.
  </Card>
</CardGroup>
