1 điểm bởi GN⁺ 4 giờ trước | 1 bình luận | Chia sẻ qua WhatsApp
  • Để tự kiểm tra lưu lượng nhàn rỗi của smart TV, tác giả đã sao chép Throwing Star LAN Tap giá €39 bằng các bo breakout RJ45 và mini breadboard
  • Tap này được đặt inline giữa router và thiết bị mục tiêu, sao chép tín hiệu sang hai cổng giám sát, hoạt động không cần nguồn, phần mềm hay cấu hình
  • J1-J2 được để như cáp patch nối thẳng 8 chân, còn J3·J4 gửi từng cặp TX hai chiều sang cặp RX của thiết bị giám sát để quan sát lưu lượng theo từng hướng
  • Gắn 2 tụ điện 220 pF vào các cặp không dùng trên cổng giám sát để cản trở tự động đàm phán Gigabit, hạ link xuống 100 Mbps và chỉ tap hai cặp của 100BASE-TX
  • Trong thử nghiệm với smart TV, trong 7,5 phút đã bắt được 2.769 gói với trung bình 14 kbps; link 100 Mbps được duy trì không có lỗi CRC, đủ dùng như một tap thụ động cho thử nghiệm

Ethernet tap thụ động làm bằng breadboard

  • Sau khi thấy Throwing Star LAN Tap, tác giả muốn kiểm tra smart TV giao tiếp nhiều đến mức nào, nhưng thay vì trả €39 thì đã làm một bản sao bằng mini breadboard
  • Ethernet tap thụ động là một thiết bị inline đơn giản đặt giữa thiết bị mục tiêu và router
    • Sao chép tín hiệu sang hai cổng giám sát bổ sung
    • Về mặt vật lý không thể bơm lại lưu lượng vào mạng
    • Không cần nguồn, phần mềm hay cấu hình
    • Vì các cổng giám sát chỉ nhận, khả năng vô tình gây DoS cho mạng là thấp
  • Đấu dây và ép về 100 Mbps

    • Tap có 4 jack RJ45
    • J1 nối với máy tính, J2 nối với router
    • J1 và J2 được nối thẳng theo từng chân, về điện hoạt động như một cáp patch
    • J3 giám sát lưu lượng từ máy tính đến router
    • Cặp TX của J1 là chân 1·2 được đưa sang cặp RX của J3 là chân 3·6
    • J4 phụ trách lưu lượng theo hướng ngược lại
    • Cặp TX của J2 được đưa sang cặp RX của J4
    • Chân 1·2 của J3 và J4 được để hở để máy tính giám sát không thể phát tín hiệu
    • 2 tụ gốm 220 pF bắc cầu các cặp không dùng của jack giám sát
    • C1 nối chân 4-5 của J3, C2 nối chân 7-8 của J4
    • Các tụ này phá vỡ tự động đàm phán Gigabit trên cặp xanh dương và nâu, khiến link hạ xuống 100 Mbps
    • Ethernet 100 Mbps chỉ dùng hai trong bốn cặp, và cấu hình này tap đúng hai cặp đó
    • Nếu đàm phán lên Gigabit, dữ liệu sẽ trải trên cả bốn cặp nên khó quan sát bằng tap này

Kết quả chế tạo và bắt gói

  • Throwing Star LAN Tap gốc dùng PCB tùy chỉnh, nhưng bản chế này gồm 4 bo breakout RJ45, 2 tụ điện và một mini breadboard
  • Đường inline nối thẳng J1-J2 bằng 8 dây ở một phía của breadboard
  • Các tap giám sát rẽ nhánh từ đường inline
    • J3 nối jumper từ chân 1·2 của J1 sang chân 3·6 của J3
    • J4 nối từ chân 3·6 của J2 sang chân 3·6 của J4
    • Các tụ điện bắc cầu trực tiếp các cặp không dùng của jack giám sát
  • Có lo ngại rằng thành phần ký sinh của breadboard có thể làm hỏng tín hiệu
    • 100BASE-TX hoạt động ở 125 MHz
    • Điện dung ký sinh giữa các hàng liền kề của breadboard thường là 2-5 pF và trở kháng cũng không khớp
    • Do dây inline ngắn nên tín hiệu vẫn được duy trì không vấn đề
    • Dùng breadboard trong mạng production thì khó, nhưng nó hoạt động đủ tốt cho thử nghiệm tap thụ động
  • Đặt tap giữa smart TV và router, rồi nối desktop vào cổng giám sát để bắt gói
    • Trong 7,5 phút đầu tiên, quan sát được 2.769 gói, trung bình 14 kbps
    • Smart TV ở trạng thái nhàn rỗi chủ yếu chỉ gửi lưu lượng điều khiển và lưu lượng khám phá thiết bị
    • TV gửi 877 gói SSDP NOTIFY đến 239.255.255.250 trong chưa đầy 5 phút
    • Cùng các dịch vụ và thông báo được broadcast bằng mDNS trên cả IPv4 lẫn IPv6
    • Thiết bị thông minh 192.168.3.7 ở subnet khác gửi burst gồm 34 frame broadcast
    • Router 192.168.2.254 phản hồi mọi thứ bằng truy vấn IGMP
  • Trong tổng cộng 2.769 frame, có 0 lỗi CRC, và đèn link duy trì ổn định ở 100 Mbps
  • Khi USB Ethernet adapter về đến nơi, tác giả cũng có thể tap lưu lượng laptop thực tế

1 bình luận

 
Các ý kiến trên Lobste.rs
  • Nếu có một switch có thể cấu hình, khả năng khá cao là nó hỗ trợ port mirroring cho mục đích như thế này
    Nếu không muốn tự làm thì đó là cách dễ hơn

    • Router do ISP cho thuê không có tính năng đó, nhưng nếu sau này mua switch rời thì tôi sẽ lưu ý đến port mirroring
    • Tuy vậy, tiền đề đó khá lớn
      Ít nhất thì tôi chưa từng thấy managed switch dành cho người tiêu dùng
  • Trọng tâm của dự án kiểu này có vẻ là việc capture, nên tôi ước phần packet capture được nhấn mạnh hơn
    Smart TV của tôi cũng tạo ra rất nhiều lưu lượng không mong muốn khi ở chế độ chờ, ngoài mDNS và SSDP

    • Tôi chỉ capture vừa đủ để xác nhận thiết bị có hoạt động hay không
      Tôi vẫn chưa có USB Ethernet adapter để dùng với laptop, nên cấu hình đặt nó giữa desktop và TV khá bất tiện
      Khi adapter đến, có lẽ tôi sẽ viết một bài thú vị hơn tập trung vào phần đó
  • Một cách rẻ hơn và thô sơ hơn là dùng hai keystone jack kiểu punchdown để làm cùng việc
    https://janitha.com/articles/passive-splice-network-tap/

  • Khi học về networking, tôi nhớ đã được học rằng có loại hub Ethernet được cấu hình để broadcast phía truyền của từng cổng Ethernet sang phía nhận của tất cả các cổng khác
    Tôi nghĩ như vậy cũng gần đạt được một nửa mục tiêu rồi
    Tất nhiên tôi chưa từng thấy một hub nguyên thủy như thế ngoài đời. Có lẽ tôi còn quá trẻ…

    • Trên mạng vẫn có bán các sản phẩm Ethernet splitter rẻ tiền hoạt động theo kiểu đó
      Dĩ nhiên chúng dễ bị collision nên không đáng tin cậy lắm
      Tôi chưa mua thử, nhưng đã xem bên trong nó trong video này: https://youtu.be/QgrVVyIzecM?t=266
    • Tôi có một cái hub nguyên thủy như vậy
      Nhờ nó mà tôi thấy mình già đi ;-)
    • Đúng vậy, những thứ đó phần lớn có vẻ là đồ từ thời 10BASE-T
      Tôi nghĩ sau đó nguy cơ collision đã trở thành vấn đề quá lớn