I am using GNS3 to simulate an environment. I have 4 docker containers which all host Python programs. Three of the devices communicate with each other via the programs (Program 1, Program 2, Program 3).

enter image description here

I am wanting to sniff the traffic between these devices. I have a Python program that sniffs packets on the NIC chip, but do not know how to capture data from the switch. I am wondering if anyone has any resources or experience on sniffing data flowing through a switch in GNS3, specifically in Python. The switch model I am wanting to simulate is Siemens RuggedCom RS900.

  • Did you configure mirroring? You mirror the ports you are interested in to a port where you have your monitor device connected. – Ron Maupin Nov 19 '20 at 13:46
  • @RonMaupin I have not. Doing mirroring would defeat the purpose of my simulation. I need to sniff data via the switch. Does Siemens RuggedCom RS900 support this? – logic_bomb_walter Nov 19 '20 at 14:02
  • 2
    Mirroring is on the switch, and that is how you do it. If you do not mirror on the switch, then the switch does not send the switched traffic to any port other than the port where the destination is connected. That is the entire point of switching. – Ron Maupin Nov 19 '20 at 14:04
  • @RonMaupin so essentially I cannot actually "sniff" the data flowing through the switch? I will have to do port mirroring which will redirect the data to the computer hosting the sniffer application? – logic_bomb_walter Nov 19 '20 at 14:44
  • Yes. The point of switching is that the switch learns where each MAC address is connected, and it only sends the frames for a MAC address to the port on which that MAC address is connected. Mirroring will also send the frames to a specific port where you connect monitoring equipment. – Ron Maupin Nov 19 '20 at 14:47

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.