< Home

ping

Function

The ping command checks whether the network connectivity is normal and the host is reachable.

Format

ping [ ip ] [ -a source-ip-address | -c count | -d | { -f | ignore-mtu } | -h ttl-value | { [ -nexthop nexthop-address ] [ -i interface-type interface-number ] } | -m time | -n | -name | -p pattern | -q | -r | { -s packetsize | -range [ min min-size | max max-size | step step-size ] * } | -system-time | -t timeout | { -tos tos-value | -dscp dscp-value } | -v | -vpn-instance vpn-instance-name | -ri | -8021p 8021p-value ] * host [ ip-forwarding ]

Parameters

Parameter Description Value

ip

Indicates that IP is used.

-

-a source-ip-address

Indicates the source IP address of the Internet Control Message Protocol (ICMP) Echo Request message. If the source IP address is not specified, the IP address of the outbound interface is used as the source IP address of the ICMP Echo Request message.

The source IP address should be a valid address in Class A, Class B, and Class C.

-c count

Indicates the number of ICMP Echo Request messages to be sent.

ping command is run, an ICMP Echo Request message carrying a sequence number is sent. The sequence number of the ICMP Echo Request message starts from 1 and is increased by 1. By default, a maximum of five ICMP Echo Request messages are sent. You can set the number of ICMP Echo Request messages to be sent through the parameter count. If the destination is reachable, the source can receive five ICMP Echo Reply messages from the destination, with sequence numbers corresponding to those of ICMP Echo Request messages.

In the case of a poor network quality, you can set this parameter to a comparatively large value so as to check the network quality according to the packet loss percentage.

The value is an integer ranging from 1 to 4294967295. The default value is 5.

-d

Indicates that the socket to works in debug mode.

By default, the socket works in non-debug mode.

-f

Indicates that packets are not fragmented during transmission.

This parameter does not take effect on the FW.

NOTE:

The FW fragments packets exceeding the MTU value.

The FW properly processes packets smaller than the MTU value.

-

ignore-mtu

Indicates that the system does not check the interface Maximum Transmission Unit (MTU) when a packet is sent.

-

-h ttl-value

Specifies the value of the TTL. Each time the TTL field is decreased to 0 during message forwarding, the router that the message reaches sends an ICMP timeout message to the source, indicating that the destination is unreachable.

The value is an integer ranging from 1 to 255. The default value is 255.

-h hop-limit-value

Specifies the maximum number of hops for forwarding ICMP Echo Response packets.

The value is an integer ranging from 1 to 255. The default value is the same as the maximum number of hops specified in the ipv6 nd hop-limit command.

-nexthop nexthop-address

Specifies an IP address for the next hop.

If you have specified this parameter, the device no longer searches the routing table before sending ICMP Echo Response packets. This process prevents ping failures caused by incorrect routing entries.

The value is in dotted decimal notation.

NOTE:
  • The specified next hop address must be the next hop address of a directly connected physical interface.

  • When you specify a next hop address, you can configure -i interface-type interface-number to specify an outbound interface. The following conditions must be met to ensure a test success:

    • The specified next hop address must match the outbound interface.
    • The specified outbound interface cannot be a logical interface's member interface.
  • If you have specified a next hop address, you cannot specify a VPN.

-i interface-type interface-number

Sets the interface for sending ICMP Echo Request messages.

NOTE:

In the case of the broadcast links (on the Ethernet), the destination address is the next hop address of the ICMP Echo Request message.

-

-m time

Specifies the period for waiting for the next ICMP Echo Request message. Each time the source sends an ICMP Echo Request message through the ping command, it waits a period of time (500 ms by default) before sending the next ICMP Echo Request message. You can set the period for waiting for the next ICMP Echo Request message through the parameter time. In the case of poor network condition, the value should be greater than 500, in ms.

The value is an integer ranging from 1 to 10000, in ms. The default value is 500.

-n

Uses the value of host as the IP address to spare domain name resolution.

-

-name

Displays the host name of the destination address.

-

-p pattern

Specifies pad characters for ICMP Echo Request messages. By configuring pad characters for ICMP Echo Request messages, you can identify a specific message among the large number of received ICMP Echo Response messages.

The value is a hexadecimal integer ranging from 0 to FFFFFFFF. By default, the padding starts from 0x00, and continues in ascending order.

-q

Displays only the statistics. If the ping command carries this parameter, the system displays only the statistics information such as the number of sent and received packets, packet loss percentage, and minimum, average, and maximum RTTs of the packet.

By default, the system displays all statistics information.

-r

Indicates that the route along which an IP packet is forwarded is recorded. If -r is configured, during the transmission of an IP packet, the IP address of each router that the IP packet passes through is added to the Options field. When the IP packet reaches the destination, all IP addresses recorded in the Options field are copied to the ICMP Echo Response message. In addition, the IP address of each router that the returned IP packet passes is added to the message. When the ping program receives the ICMP Echo Response message, IP addresses of the passed routers are displayed.

By default, the route along which an IP packet is forwarded is not recorded.

-s packetsize

Indicates the length of an ICMP Echo Request message, excluding the IP header and ICMP header.

The value is an integer ranging from 20 to 9600, in bytes. The default value is 56.

-range

Enables the device to send ICMP Echo Request messages with variable payload lengths.

  • If the -range parameter is not specified, the payload length of an ICMP Echo Request message is equal to the length specified by the -s packetsize parameter. The default value is 56, in bytes.
  • If the -range parameter is specified, the payload length of the first ICMP Echo Request message is min min-size, and that of the second ICMP Echo Request message is min min-size plus step step-size. The payload length increases incrementally by step step-size for subsequent ICMP Echo Request messages until max max-size is reached. After that, the device will not send ICMP Echo Request messages any more.

    By default, the payload length of an ICMP Echo Request message ranges from 56 to 9600 bytes, and the step length is 1 byte.

    NOTE:
    • The command execution takes a long period if a large number of ICMP Echo Request messages need to be sent. If you want to terminate the command execution, press Ctrl+C.
    • To change the number of ICMP Echo Request messages to be sent, change the values of min min-size and max max-size. The value of min min-size must be smaller than that of max max-size.
    • If both the -range and -c count parameters are specified, the device sends ICMP Echo Request messages of the same payload length for the number of times specified by the -c count parameter.

min min-size

Specifies the minimum payload length of an ICMP Echo Request message.

The value is an integer ranging from 20 to 9600, in bytes. The default value is 56.

max max-size

Specifies the maximum payload length of an ICMP Echo Request message.

The value is an integer ranging from 20 to 9600, in bytes. The default value is 9600.

step step-size

Specifies the step length of an ICMP Echo Request message.

The value is an integer ranging from 1 to 1000, in bytes. The default value is 1.

-system-time

Displays the system time when the ping packet is sent.

-

-t timeout

Indicates the timeout period for waiting for an ICMP Echo Response message after an ICMP Echo Request message is sent. After the ping command is run, the source sends an ICMP Echo Request message to a destination and then waits for an ICMP Echo Response message. If the destination, after receiving the ICMP Echo Request message, returns an ICMP Echo Response message to the source within the period specified by the parameter timeout, it indicates that the destination is reachable. If the destination does not returns an ICMP Echo Response message within the specified period, the source displays that the message times out. Normally, the source receives an ICMP Echo Response message 1 to 10 seconds after sending an ICMP Echo Request message. If the transmission speed is not satisfying, you can use this parameter to increase the timeout period for waiting for an ICMP Echo Response message after an ICMP Echo Request message is sent.

The value is an integer ranging from 0 to 65535, in ms. The default value is 2000.

-tos tos-value

Specifies the ToS value of the sent ICMP Echo Request messages. The Type of Service (ToS) value is used to set the packet priority.

The value is an integer ranging from 0 to 255. The default value is 0.

-dscp dscp-value

Specifies the DiffServ Code Point (DSCP) value of the sent ICMP Echo Request messages.

The value is an integer ranging from 0 to 63. The default value is 0.

-v

Displays ICMP Echo Response messages not for the local user.

  • If -v is not configured, the system displays only the ICMP Echo Response messages received by the local user.
  • If -v is configured, the system displays all received ICMP Echo Response messages.

By default, only ICMP Echo Response messages for the local user are displayed.

-vpn-instance vpn-instance-name

Indicates the name of a VPN instance.

The value is a string of 1 to 31 case-sensitive characters, spaces not supported. When double quotation marks are used around the string, spaces are allowed in the string.

-ri

Displays the interface that receives ICMP Echo Response messages.

By default, no interface that receives ICMP Echo Response messages is displayed.

-8021p 8021p-value

Specifies the 8021p value of the sent ICMP Echo Request messages.

NOTE:

The 8021p value specified by ping -8021p marks the priority of packets carrying VLAN tags on the Ethernet. The interface sending packets must be an Ethernet interface that encapsulates VLAN tags into packets. Otherwise, the specified 8021p value does not take effect.

The value is an integer ranging from 0 to 7. The default value is 0.

host

Indicates the domain name or IP address of the destination host.

The value is a string of 1 to 255 case-sensitive characters with spaces not supported. Alternatively, the value can be a legal IPv4 address in dotted decimal notation.

ip-forwarding

Indicates that the ping packets are forcibly forwarded through IP on the first node.

-

-tc traffic-class-value

Indicates the traffic classification in the ICMP Echo Request message.

The value is an integer that ranges from 0 to 255. The default value is 0.

Views

All views

Default Level

0: Visit level

Usage Guidelines

Applicable Environment

Ping is a common debugging tool for testing the network connectivity by transmitting ICMP Echo messages. It can detect the following items:

  • Whether the remote device is available
  • Round-trip delay of messages transmitted between the local and remote devices
  • Situation of packet loss
You can use the ping command to check the network connectivity or line quality in the following scenarios:
  • Scenario 1: Check the protocol stack on the local device. You can run the ping <loopback-address> command to check whether the TCP/IP protocol suite works properly on the local device.
  • Scenario 2: Check whether the destination host is reachable on an IP network. You can run the ping <destination-ip-address> command to send an ICMP Echo Request message to the destination host. If a reply is received, it means that the destination host is reachable.
  • Scenario 3: Check whether the peer is reachable on a Layer 3 VPN. On a Layer 3 VPN, devices may not have routing information about each other, and thus you cannot use the ping <destination-ip-address> command to check whether the peer is reachable. When a VPN instance name is specified, you can run the ping -vpn-instance vpna <destination-ip-address> command to send an ICMP Echo Request message to the peer. If the peer returns an ICMP Echo Response message, it means that the peer is reachable.
  • Scenario 4: In the case of an unstable network, you can run the ping -c 20 -t 5000 10.10.10.10 command to check the quality of the network between the local device and the peer with the IP address of 10.10.10.10. By analyzing the packet loss percentage and average delay in the command output, you can assess the network quality. If the case of an unreliable network, you are recommended to set -c and -t to larger values so as to obtain accurate information.
  • Scenario 5: Check the path. You can run the ping -r <destination-ip-address> command to obtain information about nodes along the path from the local device to the peer.

Prerequisite

  • Before running the ping command, ensure that the ICMP module works properly.
  • If -vpn-instance is configured, ensure that the VPN module works properly.

Effect

  • When the destination host is unreachable, you cannot use the ping command to check the network connectivity or locate a line fault. In this case, the system displays "Request time out", indicating that the ICMP Echo Request message times out.
  • If an intermediate device is disabled from responding to ICMP messages, detection on this node fails.

Note

  • If an abnormality occurs in the ping process, you can press Ctrl + C to terminate the ping operation.
  • You cannot run the ping command to send ping packets to a broadcast address such as XX.XX.XX.255/24.

Example

# Check whether the host with the IP address of 10.1.1.2 is reachable.

<sysname> ping 10.1.1.2
  PING 10.1.1.2: 56 data bytes, press CTRL_C to break
    Reply from 10.1.1.2: bytes=56 Sequence=1 ttl=255 time=2 ms
    Reply from 10.1.1.2: bytes=56 Sequence=2 ttl=255 time=1 ms
    Reply from 10.1.1.2: bytes=56 Sequence=3 ttl=255 time=1 ms
    Reply from 10.1.1.2: bytes=56 Sequence=4 ttl=255 time=1 ms
    Reply from 10.1.1.2: bytes=56 Sequence=5 ttl=255 time=1 ms
  --- 10.1.1.2 ping statistics ---
    5 packet(s) transmitted
    5 packet(s) received
    0.00% packet loss
    round-trip min/avg/max = 1/1/2 ms 

# Check whether the host with the IP address of 10.1.1.2 is reachable. Set the source address to 10.10.10.110 and the number of ICMP Echo Request messages to be sent to 8.

<sysname> ping -a 10.10.10.110 -c 8 10.1.1.2
  PING 10.1.1.2: 56 data bytes, press CTRL_C to break
    Reply from 10.1.1.2: bytes=56 Sequence=1 ttl=255 time=32 ms
    Reply from 10.1.1.2: bytes=56 Sequence=2 ttl=255 time=32 ms
    Reply from 10.1.1.2: bytes=56 Sequence=3 ttl=255 time=32 ms
    Reply from 10.1.1.2: bytes=56 Sequence=4 ttl=255 time=32 ms
    Reply from 10.1.1.2: bytes=56 Sequence=5 ttl=255 time=32 ms
    Reply from 10.1.1.2: bytes=56 Sequence=6 ttl=255 time=32 ms
    Reply from 10.1.1.2: bytes=56 Sequence=7 ttl=255 time=32 ms
    Reply from 10.1.1.2: bytes=56 Sequence=8 ttl=255 time=32 ms
  --- 10.1.1.2 ping statistics ---
    8 packet(s) transmitted
    8 packet(s) received
    0.00% packet loss
    round-trip min/avg/max = 32/32/32 ms

# Check whether the host with the IP address of 10.1.1.2 is reachable. Set the length of the ICMP Echo Request message to be sent to 300 bytes and the period of time for waiting for the next ICMP Echo Request message to 3000 ms.

<sysname> ping -m 3000 -s 300 10.1.1.2
  PING 10.1.1.2: 300 data bytes, press CTRL_C to break
    Reply from 10.1.1.2: bytes=300 Sequence=1 ttl=255 time=31 ms
    Reply from 10.1.1.2: bytes=300 Sequence=2 ttl=255 time=31 ms
    Reply from 10.1.1.2: bytes=300 Sequence=3 ttl=255 time=31 ms
    Reply from 10.1.1.2: bytes=300 Sequence=4 ttl=255 time=31 ms
    Reply from 10.1.1.2: bytes=300 Sequence=5 ttl=255 time=31 ms
  --- 10.1.1.2 ping statistics ---
    5 packet(s) transmitted
    5 packet(s) received
    0.00% packet loss
    round-trip min/avg/max = 31/31/31 ms
Table 1 Description of the ping command output

Item

Description

ping x.x.x.x

Indicates the IP address of the destination host.

x data bytes

Indicates the length of data in a sent packet.

press CTRL_C to break

Indicates that you can terminate the ongoing ping test by pressing Ctrl+C.

Reply from x.x.x.x

Indicates that the destination host responds to the ICMP Echo Request message with an ICMP Echo Response message, which contains the following items:
  • via Eth-Trunk1 (GigabitEthernet 0/0/1): indicates the interface that receives ICMP Echo Response messages.

  • bytes: indicates the length of data in a Response message.

  • sequence: indicates the sequence number of the ICMP Echo Response message.

  • ttl: indicate the TTL value of the ICMP Echo Response message.

  • time: indicates the response time, in milliseconds.

If no ICMP-Echo-Reply packet is received after the timeout period, the system displays "Request time out".

x.x.x.x ping statistics

Indicates the statistics collected after the ping test on the destination host. The statistics include the following information:
  • packets transmitted: indicates the number of sent ICMP Echo Request messages.

  • packets received: indicates the number of received ICMP Echo Reply messages.

  • % packet loss: indicates the percentage of unresponded messages to total sent messages.

  • round-trip min/avg/max: indicates the minimum, average, and maximum RTTs.

Copyright © Huawei Technologies Co., Ltd.
Copyright © Huawei Technologies Co., Ltd.
< Previous topic Next topic >