Tuyển dụng
Viettel IDC

ICMP là gì? Cách thức hoạt động và các loại thông báo ICMP

22/12/2025

ICMP là giao thức thuộc lớp mạng trong mô hình TCP/IP, có nhiệm vụ truyền các thông điệp kiểm soát và báo lỗi giữa các thiết bị mạng. Giao thức này giúp hệ thống phát hiện sự cố, phản hồi trạng thái và hỗ trợ quá trình giám sát, chẩn đoán hoạt động của mạng IP. Viettel IDC sẽ giải thích chi tiết ICMP là gì, cách thức hoạt động và các loại trong bài viết dưới đây.

ICMP là gì?

Giao thức ICMP (Internet Control Message Protocol - Giao thức Tin nhắn Điều khiển Internet) là một thành phần ở lớp mạng của mô hình TCP/IP, chịu trách nhiệm truyền tải các thông điệp điều khiển và báo lỗi giữa các thiết bị mạng. ICMP không chuyên chở dữ liệu người dùng mà giúp các thiết bị (router, host) thông báo tình trạng và sự cố mạng cho nhau.

Ví dụ, khi gói tin IP không thể đến đích, hoặc router gặp vấn đề như đường truyền quá tải, router sẽ tạo một gói ICMP để báo lỗi lại cho nguồn gửi.

ICMP là gì?

Cấu trúc của một gói tin ICMP là gì?

ICMP được thiết kế với cấu trúc gói tin đơn giản nhưng chặt chẽ, giúp các thiết bị mạng nhanh chóng nhận biết loại thông báo và cách xử lý tương ứng. Mỗi gói ICMP được đóng gói bên trong một gói IP và gồm hai phần chính: header ICMP và phần dữ liệu (data).

Header ICMP

Phần header của ICMP đóng vai trò xác định loại thông báo và cách thiết bị mạng phải xử lý gói tin khi nhận được. Các trường trong header gồm các thành phần dưới đây:

- Type: Xác định loại thông điệp ICMP, cho biết mục đích của gói tin như kiểm tra kết nối (Echo), báo lỗi không đến được đích (Destination Unreachable) hay thông báo hết thời gian sống (Time Exceeded).

- Code: Cung cấp thông tin chi tiết hơn cho từng Type, giúp thiết bị nhận hiểu rõ nguyên nhân cụ thể của sự cố, ví dụ host unreachable, port unreachable hoặc lỗi tham số.

- Checksum: Dùng để kiểm tra lỗi trong quá trình truyền gói ICMP, đảm bảo dữ liệu không bị thay đổi hoặc hỏng hóc trên đường truyền.

- Rest of Header: Trường mở rộng có nội dung thay đổi tùy theo loại ICMP, có thể chứa các thông tin như Identifier và Sequence Number (với Echo Request/Reply), con trỏ lỗi (Parameter Problem) hoặc địa chỉ gateway mới (Redirect).

Cấu trúc của một gói tin ICMP là gì?

Dữ liệu ICMP

Phần dữ liệu của ICMP thường dùng để cung cấp ngữ cảnh cho thông báo kiểm soát hoặc báo lỗi. Trong các bản tin lỗi, dữ liệu này thường bao gồm header IP gốc và một phần dữ liệu ban đầu của gói tin gây lỗi, giúp thiết bị nguồn xác định chính xác gói tin nào gặp sự cố. 

Với các bản tin kiểm tra như Echo Request/Echo Reply, phần dữ liệu có thể chứa thông tin tùy ý do thiết bị nguồn tạo ra, phục vụ việc đo độ trễ, kiểm tra tính toàn vẹn và xác nhận phản hồi từ thiết bị đích.
Có thể bạn quan tâm:

- Giao thức TCP/IP là gì? Cấu trúc và chức năng
- Mạng máy tính là gì? Lợi ích của mạng máy tính

Khi nào cần sử dụng giao thức ICMP?

ICMP thường được sử dụng trong những tình huống cần đánh giá tình trạng hoạt động của mạng và xử lý các vấn đề phát sinh trong quá trình truyền dữ liệu IP. Thay vì phục vụ việc trao đổi dữ liệu ứng dụng, giao thức này đóng vai trò hỗ trợ, giúp các thiết bị mạng nhận biết sự cố, phản hồi trạng thái và duy trì tính ổn định cho toàn bộ hệ thống mạng.

- Kiểm tra khả năng kết nối giữa các thiết bị: Sử dụng ICMP Echo Request/Echo Reply (lệnh ping) để xác định máy chủ, router hoặc thiết bị mạng có đang hoạt động và phản hồi hay không.

- Đánh giá độ trễ và độ ổn định của đường truyền: ICMP cho phép đo thời gian phản hồi (RTT), từ đó phát hiện tình trạng mạng chậm, mất gói hoặc kết nối không ổn định.

- Xác định đường đi của gói tin trong mạng: Công cụ traceroute dựa trên ICMP Time Exceeded để xác định các router trung gian mà gói tin đi qua và phát hiện điểm nghẽn trên đường truyền.

- Phát hiện và chẩn đoán lỗi mạng: Các thông báo như Destination Unreachable hoặc Parameter Problem giúp xác định lỗi cấu hình, cổng dịch vụ không mở hoặc sự cố định tuyến.

- Hỗ trợ quản lý và tối ưu định tuyến: ICMP Redirect được dùng để thông báo và điều chỉnh tuyến đường truyền tối ưu hơn trong một số môi trường mạng nội bộ.

- Giám sát tình trạng thiết bị và hạ tầng mạng: ICMP thường được tích hợp trong các hệ thống monitoring để kiểm tra định kỳ trạng thái hoạt động của máy chủ và thiết bị mạng.

Cách thức hoạt động của ICMP

ICMP hoạt động song song với các giao thức mạng khác như IP, TCP hoặc UDP, giữ vai trò truyền tải thông điệp kiểm soát và báo lỗi giữa các thiết bị trong mạng. Khi xảy ra một sự kiện bất thường trong quá trình truyền gói tin IP, các thiết bị như máy chủ hoặc bộ định tuyến sẽ sử dụng ICMP để phản hồi và xử lý tình trạng đó kịp thời, giúp mạng vận hành ổn định và dễ giám sát hơn.

- Tạo thông điệp ICMP: Khi có sự kiện mạng (lỗi, yêu cầu kiểm tra), thiết bị nguồn tạo gói tin ICMP, gồm Header (Loại, Mã, Checksum) và Dữ liệu.

- Đóng gói vào IP: Gói tin ICMP này được nhúng vào phần dữ liệu của một gói tin IP và gửi đi như một gói tin IP thông thường.

- Truyền tải qua mạng: Các router và thiết bị mạng xử lý gói tin này và chuyển tiếp đến địa chỉ IP đích.

- Xử lý tại đích: Thiết bị đích tách gói IP, xử lý thông điệp ICMP. Tùy thuộc vào loại thông điệp, nó có thể gửi phản hồi (Echo Reply), báo lỗi (Destination Unreachable), hoặc thông báo cho router biết đường đi tốt hơn (Redirect).

- Phản hồi ICMP (nếu cần): Với các thông điệp yêu cầu phản hồi như Echo Request, thiết bị nhận sẽ gửi lại Echo Reply, cho phép kiểm tra khả năng kết nối, độ trễ và mức độ ổn định của đường truyền mạng.

Cách thức hoạt động của ICMP

Các loại thông báo ICMP thường gặp nhất

ICMP định nghĩa nhiều loại thông báo (Type) và mã (Code) khác nhau cho các mục đích khác nhau. Một số loại thông báo thông dụng gồm:

Loại ICMP

Type / Code

Chức năng chính

Tình huống sử dụng điển hình

ICMP Echo Request / Echo Reply

Type 8 (Request), Type 0 (Reply) – Code 0

Kiểm tra khả năng kết nối giữa hai thiết bị mạng

Được sử dụng trong lệnh ping để xác định thiết bị đích còn hoạt động và đo độ trễ mạng

ICMP Destination Unreachable

Type 3 – nhiều Code

Thông báo gói tin không thể đến được đích

Xảy ra khi mạng/host không tồn tại, cổng bị đóng (Code 3 – Port Unreachable), hoặc lỗi phân mảnh

ICMP Time Exceeded

Type 11 – Code 0/1

Báo hiệu gói tin bị loại bỏ do vượt quá TTL

Thường xuất hiện trong traceroute khi gói tin đi qua quá nhiều router trung gian

ICMP Parameter Problem

Type 12 – Code 0–2

Thông báo lỗi trong header IP

Khi gói IP có trường tham số sai, độ dài header không hợp lệ hoặc dữ liệu bất thường

ICMP Redirect

Type 5 – Code 0–3

Hướng dẫn thay đổi tuyến đường tối ưu hơn

Router gửi cho host để cập nhật gateway hoặc bảng định tuyến khi phát hiện đường đi tốt hơn

ICMP Source Quench

Type 4 – Code 0

Yêu cầu giảm tốc độ truyền dữ liệu do tắc nghẽn

Đã bị loại bỏ trong các chuẩn ICMP hiện đại do rủi ro bảo mật

ICMP Timestamp Request / Reply

Type 13 (Request), Type 14 (Reply) – Code 0

Đồng bộ và xác thực thời gian

Dùng để đo độ trễ và đồng bộ thời gian giữa hai thiết bị

ICMP Information Request / Reply

Type 15 (Request), Type 16 (Reply) – Code 0

Thu thập thông tin cấu hình mạng

Ít dùng trong mạng hiện đại, từng hỗ trợ tra cứu thông tin IP

ICMP Address Mask Request / Reply

Type 17 (Request), Type 18 (Reply) – Code 0

Xác định subnet mask

Hỗ trợ cấu hình IP tự động và xác định phạm vi mạng

Các loại thông báo ICMP thường gặp nhất

Rủi ro bảo mật liên quan đến ICMP

ICMP mang lại nhiều lợi ích trong việc chẩn đoán và giám sát mạng nhưng cũng tiềm ẩn không ít rủi ro bảo mật nếu không được kiểm soát hợp lý. Điển hình như một số hình thức tấn công sau:

Ping Flood (ICMP Flood)

ICMP Flood là gì? Đây là hình thức kẻ tấn công gửi một lượng lớn các gói Echo Request (ping) đến nạn nhân để làm quá tải băng thông hoặc tài nguyên xử lý. Nạn nhân phải trả lời hết các yêu cầu, dẫn đến tình trạng từ chối dịch vụ (DDoS).

Smurf Attack

Kẻ tấn công gửi một gói ICMP Echo Request đến địa chỉ broadcast của mạng con, kèm theo địa chỉ IP nguồn bị giả mạo là IP nạn nhân. Tất cả máy trên mạng con sẽ trả lời Echo Reply đến nạn nhân, gây ngập lụt lưu lượng ICMP tại đó. Chiêu này lợi dụng tính chất khuếch đại của broadcast. Tuy nhiên, ngày nay Smurf ít thành công do các thiết bị thường tắt broadcast ICMP.

Ping of Death

Đây là hình thức tấn công gửi gói ICMP có kích thước vượt quá giới hạn IPv4 (trên 65,535 bytes). Khi máy nhận cố gắng ghép mảnh gói này, lỗi bộ đệm có thể làm treo hoặc crash hệ thống. Đây là tấn công lịch sử, phần lớn các hệ thống mới đã khắc phục lỗ hổng này

Redirect spoofing/MITM

Bằng cách gửi thông báo ICMP Redirect giả mạo, kẻ tấn công có thể đánh lừa host chuyển lưu lượng qua router do nó chỉ định, tạo điều kiện nghe trộm hoặc chuyển hướng dữ liệu. Vì lý do này, nhiều quản trị viên khuyến nghị hạn chế hoặc vô hiệu hóa chức năng Redirect.

Các lỗ hổng khác

Một số bản implementation ICMP từng có lỗ hổng (ví dụ tràn bộ đệm) dẫn đến tấn công từ xa. Tuy nhiên, hiện nay hệ điều hành phổ biến đã được vá những lỗi này.

Rủi ro bảo mật liên quan đến ICMP

So sánh điểm khác nhau giữa ICMP và TCP

Mặc dù cùng nằm trong bộ giao thức TCP/IP và đều đóng vai trò quan trọng trong hoạt động của mạng máy tính, ICMP và TCP phục vụ những mục đích hoàn toàn khác nhau. ICMP tập trung vào việc chẩn đoán, kiểm soát và phản hồi các sự cố mạng, trong khi TCP chịu trách nhiệm truyền dữ liệu giữa các ứng dụng với độ tin cậy cao.

Khía cạnh so sánh

ICMP

TCP

Bản chất giao thức

Giao thức hỗ trợ và phản hồi trạng thái mạng

Giao thức dùng để trao đổi dữ liệu giữa các ứng dụng

Vai trò trong hệ thống mạng

Giúp IP phát hiện lỗi và phản hồi sự cố

Đảm nhiệm việc vận chuyển dữ liệu giữa các ứng dụng

Vị trí trong mô hình TCP/IP

Hoạt động ở tầng mạng (tầng Internet )

Hoạt động tại tầng vận chuyển dữ liệu (Transport)

Cách thức giao tiếp

Gửi thông báo độc lập, không duy trì trạng thái

Thiết lập và duy trì kết nối xuyên suốt phiên truyền

Cơ chế đảm bảo dữ liệu

Không kiểm soát việc gói tin có đến nơi hay không

Có xác nhận, đánh số thứ tự và truyền lại khi mất gói

Khả năng kiểm soát lưu lượng

Không tham gia điều tiết lưu lượng mạng

Chủ động điều chỉnh luồng dữ liệu để tránh tắc nghẽn

Sử dụng cổng mạng (port)

Không sử dụng port, chỉ dựa trên Type và Code

Sử dụng port để phân biệt các ứng dụng

Loại thông tin truyền tải

Chỉ mang thông tin kiểm soát và báo lỗi

Mang dữ liệu thực tế của ứng dụng

Mức độ ảnh hưởng đến hiệu năng

Nhẹ, nhanh, phục vụ mục đích chẩn đoán

Nặng hơn do phải đảm bảo tính toàn vẹn dữ liệu

Mối quan hệ với IP

Hỗ trợ trực tiếp cho IP trong xử lý lỗi

Phụ thuộc IP để vận chuyển dữ liệu

So sánh điểm khác nhau giữa ICMP và TCP

Một số câu hỏi thường gặp khi tìm hiểu ICMP là gì?

ICMPv6 là gì?

ICMPv6 là phiên bản của ICMP được thiết kế cho IPv6, dùng để báo lỗi và kiểm soát hoạt động mạng. Giao thức này còn đảm nhiệm nhiều chức năng bắt buộc trong IPv6 như phát hiện router và tự động cấu hình địa chỉ.

ICMP có ICMP port không?

ICMP không sử dụng port như TCP hay UDP vì không phục vụ truyền dữ liệu ứng dụng. Các thông điệp ICMP được phân biệt dựa trên trường Type và Code trong header.

ICMP ping là gì?

ICMP ping là cơ chế kiểm tra khả năng kết nối giữa hai thiết bị trong mạng. Nó hoạt động bằng cách gửi Echo Request và chờ Echo Reply để đo độ trễ và xác nhận phản hồi.

Kết luận

ICMP là gì là kiến thức nền tảng quan trọng giúp hiểu rõ cách mạng IP phát hiện lỗi, phản hồi trạng thái và duy trì tính ổn định trong quá trình truyền dữ liệu. Việc nắm vững nguyên lý hoạt động, cấu trúc và vai trò của ICMP giúp quản trị viên và người học mạng chẩn đoán sự cố chính xác, giám sát hạ tầng hiệu quả và tối ưu vận hành hệ thống mạng.

Để được hỗ trợ tư vấn và tìm hiểu các dịch vụ của Viettel, bạn có thể liên hệ trực tiếp tới Viettel IDC qua các kênh:

- Hotline: 1800 8088 (miễn phí cước gọi)

- Fanpage: https://www.facebook.com/viettelidc  

Bình luận ()

Đăng nhập | Đăng ký
để gửi bình luận
Ý kiến của bạn sẽ được xét duyệt trước khi đăng.
Ý kiến của bạn sẽ được xét duyệt trước khi đăng.
Ý kiến của bạn sẽ được xét duyệt trước khi đăng.
Xem thêm bình luận

Tin liên quan

29/09/2026

"SOVEREIGN CLOUD" VÀ NGHỊCH LÝ CHUYỂN ĐỔI SỐ: GIẢI MÃ BÀI TOÁN TUÂN THỦ CHO NGÀNH TÀI CHÍNH & CHÍNH PHỦ

Các tổ chức thuộc nhóm ngành trọng yếu như tài chính, ngân hàng (BFSI) và cơ quan nhà nước đang khao khát hiện đại hóa hệ thống IT (chuyển đổi sang kiến trúc Microservices, sử dụng Container/Kubernetes) để tăng tốc độ triển khai dịch vụ và nâng cao trải nghiệm người dùng. Tuy nhiên, họ lại đang vấp phải một "nghịch lý" lớn: Càng muốn áp dụng công nghệ Cloud hiện đại, rào cản về tuân thủ pháp lý và an toàn thông tin càng trở nên khắt khe.

29/09/2026

BÀI TOÁN "NOISY NEIGHBOR" TRÊN CLOUD VÀ CHIẾN LƯỢC TỐI ƯU HIỆU NĂNG CHO HỆ THỐNG CỐT LÕI

Trong kỷ nguyên mà dữ liệu là "dầu mỏ mới", việc vận hành các hệ thống xương sống (Core ERP, Core Banking) hay các workload tính toán chuyên sâu (AI, Machine Learning, Datalake) đòi hỏi năng lực phần cứng vô cùng mạnh mẽ.

27/09/2026

"BÃO GIÁ" HẠ TẦNG CNTT VÀ BÀI TOÁN SỐNG CÒN CỦA DOANH NGHIỆP: VÌ SAO PRIVATE CLOUD DẠNG DỊCH VỤ LÊN NGÔI?

Làn sóng bùng nổ hạ tầng AI toàn cầu đang tạo ra một "cơn địa chấn" về giá phần cứng máy chủ, chip nhớ DRAM, ổ cứng doanh nghiệp và chi phí năng lượng. Đứng trước áp lực phải chuyển đổi số nhưng lại vấp phải bài toán chi phí đầu tư (CapEx) đắt đỏ cùng thời gian giao hàng kéo dài hàng tháng, các nhà quản trị công nghệ (CIO) và tài chính (CFO) đang tìm kiếm một hướng đi mới: Không cần bỏ hàng tỷ đồng mua sắm hạ tầng mà vẫn sở hữu riêng một hệ thống Private Cloud hoàn chỉnh, an toàn và sẵn sàng vận hành ngay lập tức.

29/09/2026

Digital Workplace là gì? Xu hướng môi trường làm việc số cho doanh nghiệp

Digital Workplace là gì? Khám phá mô hình vận hành, thành phần, lợi ích, ứng dụng, thách thức và xu hướng môi trường làm việc số cho doanh nghiệp.

29/09/2026

Lỗ hổng Shellshock là gì? Cơ chế, tác động và cách khắc phục

Lỗ hổng Shellshock (CVE-2014-6271) trong Bash là gì, vì sao nghiêm trọng? Tìm hiểu nguyên nhân, hệ thống bị ảnh hưởng và cách kiểm tra, vá lỗi.

29/09/2026

Scratch là gì? Cách hoạt động, ứng dụng và đối tượng phù hợp

Scratch là gì? Tìm hiểu cách lập trình bằng khối lệnh, các khái niệm có thể học, ứng dụng thực tế và sự khác nhau giữa Scratch với ScratchJr.

29/09/2026

Phân biệt các loại Web Hosting: Đâu là lựa chọn phù hợp cho website?

Phân biệt các loại Web Hosting và tìm hiểu cách mỗi mô hình hoạt động, từ đó lựa chọn giải pháp phù hợp với nhu cầu, quy mô và định hướng phát triển website.

29/09/2026

Website có cần hosting không? Giải đáp chi tiết từ A-Z

Website có cần hosting không? Tìm hiểu vai trò của hosting, domain và các trường hợp cần và không cần mua hosting riêng cho website.

29/09/2026

Top nhà cung cấp dịch vụ Cloud Camera uy tín tại Việt Nam

Top nhà cung cấp dịch vụ Cloud Camera uy tín tại Việt Nam, cùng tiêu chí lựa chọn và những lưu ý quan trọng trước khi đăng ký dịch vụ.

28/09/2026

Trigger là gì trong DBMS? Cách hoạt động, các loại phổ biến và ứng dụng

Trigger là gì trong DBMS? Tìm hiểu cách trigger hoạt động, các loại phổ biến, ví dụ minh họa, ưu nhược điểm và khi nào nên sử dụng.