Lưu lượng giữa các khách VirtualBox không hiển thị trong tcpdump


9

Tôi có thiết lập môi trường thử nghiệm với 4 khách VirtualBox đang chạy CentOS 6. Mỗi khách có một thiết bị mạng được gắn với bộ điều hợp cầu nối, đó là kết nối mạng chính của tôi trên PC, với địa chỉ IP tĩnh (từ 192.168.2.95-98) bởi bất kỳ thiết bị nào trên mạng của tôi.

Đôi khi tôi cần có khả năng phân tích các gói vì lý do này hay lý do khác. Lúc đầu, tôi chỉ SSH vào bộ định tuyến của mình và sử dụng tcpdump để chụp tất cả các gói từ khách. Chà, nó không hoạt động như kế hoạch ...

Các gói duy nhất hiển thị bằng tcpdump là lưu lượng giữa 98 và các thiết bị khác trên mạng của tôi ngoài khách. 98 là khách duy nhất liên lạc với các thiết bị khác trên mạng của tôi (bên cạnh lưu lượng SSH); phần còn lại giao tiếp với khách khác.

Tôi bắt đầu lọc tcpdump theo máy chủ cho từng địa chỉ IP của khách. Cuối cùng tôi đã tước nó xuống để vứt bỏ mọi thứ . Vì tất cả các gói đều đi qua bộ điều hợp mạng trên PC của tôi, tôi đã bắt được tất cả các gói cho thẻ đó mà vẫn không thành công!

VirtualBox quản lý, tiêm và loại bỏ các gói trên bộ điều hợp khi sử dụng kết nối mạng. Nếu gói được chuyển đến một khách khác, VirtualBox có giữ gói đó và chuyển tiếp cho khách thích hợp không? Nếu vậy, làm thế nào tôi có thể chụp các gói đó?


Hệ điều hành nào là máy tính chủ của bạn?
heavyyd

Và tcpdump (hoặc gói sniffer khác) trên máy chủ của bạn có hiển thị bất kỳ lưu lượng truy cập nào không? Tôi đoán hệ điều hành máy chủ / VirtualBox của bạn đủ thông minh để không thực sự gửi các gói đến bộ định tuyến của bạn chỉ để chúng quay lại ngay trên cùng một giao diện.
Goyuix

@ematvyd - đó là Windows 7.
Logan Bibby

@Goyuix - Đó là lý do tại sao tôi chụp tất cả các gói trên thẻ. Nó cho thấy điều tương tự như bãi chứa từ bộ định tuyến của tôi. Nếu nó giữ các gói, tôi có thể tìm thấy chúng ở đâu?
Logan Bibby

Câu trả lời:


6

Khi bạn sử dụng chế độ kết nối cầu nối của VirtualBox, VirtualBox hoạt động như một công tắc ảo giữa giao diện vật lý của máy chủ của bạn và mạng ảo. Các gói đi giữa các máy tính trên mạng ảo không bao giờ đến được điểm trong ngăn xếp mạng máy chủ nơi tcpdump có thể nhận chúng, vì vậy bạn không thể thấy lưu lượng truy cập đó từ máy chủ.

Bạn có thể thử sử dụng tính năng theo dõi mạng tích hợp của VirtualBox . Đây là một công cụ gỡ lỗi, nhưng nó tạo ra các tệp pcap và được xây dựng dễ cài đặt. Để bật theo dõi mạng, bạn có thể sử dụng VBoxManagedòng lệnh với các --nictrace*tùy chọn:

VBoxManage modifyvm [your-vm] --nictrace[adapter-number] on --nictracefile[adapter-number] file.pcap

Đã thử nó ra và nó làm việc như một lá bùa. Đây là tất cả những gì tôi cần! Tôi ước tôi có thể nâng cấp điều này 10 lần ... Bạn không biết vấn đề này đã làm tôi lo lắng bao lâu.
Logan Bibby

1
Bất cứ ý tưởng tại sao tcpdump-ing bên trong khách không chụp VM-to-VM giao thông? Tôi không quan tâm lắm đến ngăn xếp IP máy chủ; đúng hơn tôi mong đợi để xem tcpdumpchạy trong hệ điều hành khách chính xác. Nhìn bề ngoài, đó là một kỳ vọng hợp lý, vì ngăn xếp mạng khách có lẽ sẽ hoạt động như bình thường. Vì vậy những gì là sai?
ulidtko

@ulidtko Tôi khuyên bạn nên tạo một câu hỏi mới với các chi tiết cụ thể của bạn bao gồm OS-es, phiên bản và cấu hình mạng.
heavyyd
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.