Sự khác biệt giữa các phản hồi không thực sự được xác định bởi chính ICMP mà là gián tiếp.
ICMP có thể phân tâm giữa các mục sau:
0 = net unreachable;
1 = host unreachable;
2 = protocol unreachable;
3 = port unreachable;
4 = fragmentation needed and DF set;
5 = source route failed.
Nhưng nó làm như vậy với các tài nguyên mạng khác. Mã 0, 1, 4 và 5 có thể được nhận từ một cổng. Mã 2 và 3 có thể được nhận từ một máy chủ lưu trữ.
Nếu, theo thông tin trong các bảng định tuyến của cổng, mạng đích không thể truy cập được, (ví dụ: khoảng cách đến mạng là vô hạn), cổng có thể gửi tin nhắn không thể truy cập đích đến máy chủ nguồn internet của datagram. Ngoài ra, trong một số mạng, cổng có thể xác định xem máy chủ đích internet có thể truy cập được không. Chính các Cổng trong các mạng này có thể gửi tin nhắn không thể truy cập đích đến máy chủ nguồn khi máy chủ đích không thể truy cập được, do đó, thực tế ICMP không thực hiện các quyết định.
Trong trường hợp trong máy chủ đích, mô-đun IP không thể phân phối datagram vì mô-đun giao thức được chỉ định hoặc cổng xử lý không hoạt động, thì máy chủ đích có thể gửi thông báo 'không thể truy cập đích' đến máy chủ nguồn.
Cuối cùng, nếu một datagram phải được phân đoạn để được chuyển tiếp bởi một cổng nhưng cờ 'Đừng phân mảnh' được bật, cổng sẽ loại bỏ datagram và sẽ trả về thông báo 'không thể truy cập đích'.
Bây giờ để phân biệt giữa 2 trường hợp riêng biệt: Yêu cầu hết thời gian có nghĩa là không nhận được tin nhắn Trả lời Echo nào trong thời gian đã đặt. Điều này có thể do nhiều nguyên nhân khác nhau: lỗi yêu cầu ARP, tắc nghẽn mạng, lọc gói, lỗi định tuyến hoặc loại bỏ ngay cả im lặng.
Khi bạn nhận được Trả lời từ [Địa chỉ IP]: 'Máy chủ đích không thể truy cập được', thì sự cố xảy ra tại / sau bộ định tuyến từ xa, có địa chỉ được chỉ định bởi [địa chỉ IP]. Vì vậy, đó là một bộ định tuyến cho bạn biết rằng có một vấn đề giữa nó và địa chỉ đích.