Traceroute là gì và hoạt động như thế nào?

Nếu bạn muốn kiểm tra các gói tin được truyền đi trong mạng nội bộ hoặc mạng Internet đi qua các máy trạm nào, các gói tin này phải mất bao nhiêu thời gian, có máy trạm nào không phản hồi các gói tin mà bạn đã gửi. Hoặc đơn giản là bạn chỉ muốn chẩn đoán các đường truyền kết nối thôi thì các hệ điều hành như Windows hoặc Linux, có cung cấp sẵn một công cụ dòng lệnh rất hữu ích, đó là lệnh traceroute.

Traceroute là gì?

Traceroute (hay còn gọi là Tracert) là một chương trình dòng lệnh có sẵn trong các hệ điều hành như Windows, Mac và Linux, giống như lệnh Ping, công cụ này dùng để kiểm tra lỗi và xác định đường đi của các gói tin từ máy tính gửi yêu cầu đến máy tính nhận yêu cầu trên mạng máy tính.

Nếu bạn gặp lỗi khi truy cập đến một website nào đó, Traceroute có thể giúp bạn xác định lỗi xảy ra ở đâu và còn có thể giúp bạn thấy rõ hơn đường đi của những gói tin từ máy tính của bạn đến máy chủ chứa website.

Traceroute hoạt động như thế nào?

Khi bạn truy cập vào một website nào đó, các lưu lượng truy vấn sẽ phải đi qua nhiều trạm trung gian trước khi tới được website bạn yêu cầu, những lưu lượng này sẽ đi từ máy tính của bạn đến các router của nhà cung cấp dịch vụ (ISP) và được chuyển tiếp đến nhiều router trung gian khác trên mạng trước khi đến được website.

Traceroute hoạt động bằng cách gửi đi một chuỗi các gói tin bằng giao thức ICMP (Internetwork Control Message Protocol) tới máy chủ đích (website), các gói tin này chứa một giá trị Time To Live (TTL) hay còn gọi là Hop Limit, giá trị TTL của các gói tin được sắp xếp theo thứ tự tăng dần, gói tin thứ nhất chứa giá trị TTL là 1, gói tin thứ 2 là 2, gói thứ 3 là 3 ...

Khi các gói tin đến được một router, giá trị của nó lại giảm đi 1, cho đến khi giá trị TTL của các gói tin bằng 0, router sẽ gửi một thông báo hết hạn cho máy tính của bạn. Bằng việc gửi đi các gói tin và xem phản hồi của các router, Traceroute xác định được một router nào đó có hoạt động hay không

Sử dụng Traceroute

Traceroute là một chương trình dòng lệnh do đó để sử dụng Traceroute bạn cần mở Command Prompt (đối với hệ điều hành Windows) hoặc Terminal (đối với những hệ điều hành khác) để bắt đầu sử dụng. Cú pháp của traceroute như sau:

[code]tracert <Ten_Mien>[/code]

Ví dụ bạn muốn traceroute tới website dantri.vn thì bạn gõ lệnh sau:

[code]tracert dantri.vn[/code]
Cách sử dụng Traceroute

Lưu ý: đối với Windows thì bạn gõ tracert, còn những hệ điều hành khác như UNIX/Linux thì gõ là traceroute.

Với câu lệnh trên bạn có thể thấy toàn bộ được đường đi của các gói tin từ máy tính của bạn được chuyển tiếp qua nhiều router rồi mới đến website dantri.vn. Như hình trên thì có thể thấy rằng để đến được website Dân Trí  thì cần phải thực hiện 11 lần chuyển tiếp, các lần chuyển tiếp này được gọi là hop, ngoài ra bạn có thể thấy có một vài router còn có tên miền (domain name) rõ ràng.

Đối với một số website đặt host ở xa thì số lần chuyển tiếp gói tin sẽ nhiều hơn vì phải đi qua nhiều router

Cách sử dụng Traceroute

Ngoài ra, nếu như bạn không muốn traceroute phân giải tên miền của router thì bạn có thể dùng tham số -d:

[code]tracert -d cnn.com[/code]
Cách sử dụng Traceroute

Khi bạn sử dụng traceroute thì lệnh này sẽ trả về kết quả có định dạng như sau:

[code]Hop RTT1 RTT2 RTT3 Ten_Mien [Dia_Chi_IP][/code]

  • Hop: khi một gói tin đi qua một router nào đó thì được gọi là Hop.
  • RTT1, RTT2, RTT3: viết tắt của Round Trip Time, là khoảng thời gian mà gói tin đi tới router và phản hồi về cho máy tính của bạn (thời gian được tính bằng milisecond). Nếu như ngay cột RTT mà có dấu * thì có nghĩa là router đó không phản hồi lại gói tin mà bạn gửi.
  • Ten_Mien [Dia_Chi_IP]: nếu như router đó có tên miền riêng thì tên miền này sẽ được hiển thị, thông qua tên miền của router, bạn có biết được vị trí của router ở trên mạng. Nếu router không có tên miền thì sẽ hiển thị địa chỉ IP của router.

Tổng kết

Traceroute rất tiện lợi trong việc chẩn đoán mạng hoặc xác định sự trục trặc của các gói tin đi qua mạng nào. Lệnh tracert trên Windows không có nhiều tham số nên những ai mới làm quen với lệnh này chắc sẽ không gặp nhiều khó khăn. Trên hệ điều Windows hoặc Linux, 2 lệnh traceroute và ping là 2 câu lệnh rất quen thuộc với các nhà quản trị mạng.

No comments:

Powered by Blogger.