Màn hình iftop có thể và không thể chứng minh điều gì về VPN
Một trình giám sát băng thông hiển thị một giao diện tại một thời điểm. Hãy quyết định bạn đang kiểm tra điều gì, giao diện nào mang nó và bộ lọc che giấu điều gì.
Màn hình iftop trả lời một câu hỏi mỗi lần: những cặp máy chủ nào đang trao đổi byte qua giao diện mà bạn đã trỏ tới. Nó không trả lời liệu mọi ứng dụng có tuân theo chính sách VPN hay không, và một màn hình trống không chứng minh rằng không có gì rò rỉ. Chính trong khoảng cách giữa hai phát biểu đó mà phần lớn các cuộc tranh luận về kiểm tra rò rỉ sai. Ba điều kiện quyết định hiển thị thực sự có nghĩa gì, và cả ba đều hiện ra trong dòng lệnh bạn đã dùng.
Ba điều kiện quyết định ý nghĩa của màn hình
Các điều kiện là giao diện nào đang được hiển thị, bộ lọc và bản thân công cụ che giấu điều gì, và bài kiểm tra thực sự đã thực hiện điều gì. Hãy trả lời theo thứ tự đó, vì một sai sót ở điều kiện đầu làm hai điều còn lại vô nghĩa.
Điều kiện về giao diện quan trọng vì góc nhìn đường hầm và góc nhìn vật lý hiển thị các lớp khác nhau của cùng một lưu lượng. Nhìn vào giao diện đường hầm cho thấy các luồng bên trong đường hầm; nhìn vào giao diện vật lý cho thấy vật mang của đường hầm, cùng với bất kỳ lưu lượng thiết lập, điều khiển hay cục bộ hợp lệ nào chia sẻ liên kết đó. Không góc nhìn nào sai, và không góc nhìn nào là bức tranh đầy đủ. Gọi tên góc nhìn bạn đang xem chính là khác biệt giữa bằng chứng và ấn tượng.
Điều kiện một: giao diện nào đang được hiển thị
iftop nhận giao diện một cách tường minh bằng -i, và hướng dẫn của nó mô tả hành vi khi bạn không làm vậy: nó chọn một giao diện, có thể là thiết bị trông như bên ngoài thay vì đường hầm. Mặc định đó hợp lý cho một công cụ băng thông và tồi cho một bài kiểm tra rò rỉ.
Luôn truyền giao diện, và ghi nó bên cạnh kết quả. Ảnh chụp màn hình không có tên giao diện không thể tái tạo.
Điều kiện hai: bộ lọc và công cụ che giấu điều gì
iftop chấp nhận một biểu thức lọc, và một luồng bị bộ lọc loại trừ là vô hình do cấu tạo chứ không phải do vắng mặt. Công cụ cũng mặc định tra cứu tên máy chủ để gắn nhãn địa chỉ, và những tra cứu đó tạo ra lưu lượng DNS của riêng chúng, tức là lưu lượng bạn không định quan sát. -n tắt các tra cứu và làm hiển thị thành dạng số; ẩn các dòng DNS sau đó không giống với việc không tạo ra các truy vấn.
Sự khác biệt đó đáng được nói thẳng, vì nó cũng xuất hiện ở các công cụ khác: đè nén việc hiển thị một hoạt động không giống với việc ngăn chặn nó. Nếu các tra cứu DNS là một phần của những gì bạn đang kiểm tra, hãy chạy bài kiểm tra với các tra cứu đã tắt để quan sát không bị nhiễm bởi người quan sát.
Điều kiện ba: bài kiểm tra thực sự đã thực hiện điều gì
Một yêu cầu duy nhất từ một ứng dụng, tới một đích, trong một họ địa chỉ chứng minh điều gì đó về yêu cầu đó. Nó không chứng minh gì về một ứng dụng khác, một đích khác hay họ địa chỉ còn lại, và IPv6 là họ địa chỉ bị bỏ quên nhiều nhất đúng trong kiểu kiểm tra này.
Vì vậy hãy xác định yêu cầu trước khi bắt đầu: một đích vô hại, từ ứng dụng bạn quan tâm, trong họ địa chỉ bạn quan tâm, với đường hầm ở trạng thái đã được phê duyệt. Sau đó kiểm tra phía nhận hoặc chẩn đoán của chính máy khách, vì đầu xa biết điều gì đã đến theo cách mà màn hình cục bộ không thể. Sau đó thực hiện trường hợp đường hầm không khả dụng đã được phê duyệt và xem lưu lượng có dừng lại không, vì đó là hành vi mà yêu cầu thường thực sự nói tới.
DNS xứng đáng có quan sát riêng. Người nhận truy vấn và tuyến đường mà truy vấn đã đi là hai sự thật, và một màn hình băng thông không hiển thị cả hai.
Dùng iftop làm bằng chứng hỗ trợ
Chỉ khi đó iftop mới thêm giá trị, và nó thêm giá trị như một sự xác nhận. sudo iftop -i wg0 -n -B -P -f "host 203.0.113.9" cho thấy luồng mong đợi có xuất hiện trên giao diện mong đợi hay không, với số đếm byte khiến một khẳng định về trạng thái rảnh có thể kiểm chứng được.
So sánh điều đó với ss -tnp cho góc nhìn ở mức socket và ip route get cho tuyến đường mà nhân sẽ chọn, và bạn có ba quan sát về một yêu cầu thay vì một ấn tượng về một cỗ máy. Hướng dẫn của iftop ghi lại việc chọn giao diện, cú pháp bộ lọc và hành vi tra cứu, đó là ba điều mà một bài kiểm tra rò rỉ phụ thuộc vào. Một màn hình băng thông định vị hoạt động; tuyến đường, các ngoại lệ và hành vi khi thất bại quyết định liệu hoạt động đó có đáp ứng yêu cầu hay không.