1 # figure out interface mac address
3 t42:/home/dpavlin# ip link show eth0
4 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
5 link/ether 00:0d:60:79:26:67 brd ff:ff:ff:ff:ff:ff
6 t42:/home/dpavlin# ip link show eth2
7 4: eth2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN mode DEFAULT group default qlen 1000
8 link/ether 00:e0:4c:39:00:78 brd ff:ff:ff:ff:ff:ff
12 # make sure that mac tables in switches are populated (ping something available in that vlan)
14 t42:/home/dpavlin# arping -S 10.20.30.77 -i eth0 10.4.0.1
15 t42:/home/dpavlin# arping -S 10.20.30.78 -i eth2 193.198.212.1
19 # pull new bridge tables from switches
21 dpavlin@black:~/dell-switch$ ./sw-mac-port.sh # pull all switches
23 or you can just pull few interesting ones which is faster:
25 dpavlin@black:~/dell-switch$ ./snmp-mac-port sw-e300
26 dpavlin@black:~/dell-switch$ ./snmp-mac-port sw-e300-2
30 # find switch and port for mac
32 dpavlin@black:~/dell-switch$ ./find-port-for-mac 00:0d:60:79:26:67 # t42 eth0
33 sw-e300 4 00:0d:60:79:26:67 17
34 # mac 00:0d:60:79:26:67 on 19 switches
36 dpavlin@black:~/dell-switch$ ./find-port-for-mac 00:e0:4c:39:00:78 # t42 eth2
37 sw-e300 1 00:e0:4c:39:00:78 23
38 sw-e300-2 1 00:e0:4c:39:00:78 21
39 # mac 00:e0:4c:39:00:78 on 42 switches
43 # repeat all that again for eeepy
45 dpavlin@eeepy:~$ ip link show eth0
46 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
47 link/ether 00:1e:8c:0a:49:3c brd ff:ff:ff:ff:ff:ff
49 dpavlin@eeepy:~$ sudo arping -i eth0 -S 10.20.30.55 193.198.212.1
51 dpavlin@black:~/dell-switch$ ./find-port-for-mac 00:1e:8c:0a:49:3c # eeepy eth0
52 sw-a200-s 1 00:1e:8c:0a:49:3c 17
53 # mac 00:1e:8c:0a:49:3c on 43 switches
56 # figure out which vlans are on which switches
58 dpavlin@black:~/dell-switch$ ./vlan-ports.pl ./log/*sw-{e300,a200-s}*vlan* 2>/dev/null
59 ----------- ----- 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16{17}18 19 20 21 22 23 24
60 sw-a200-s 1 X X X X X X X X X X X X X X X X e0 X X X X X . X eeepy eth0
61 sw-a200-s 4 . . . . . . . . . . . . . . . . . . . . . . X X
62 sw-a200-s 5 . . . . . . . . . . . . . . . . . . . . . . X X
63 sw-a200-s 20 . . . . . . . . . . . . . . . . . . . . . . X X
64 ----------- ----- 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16{17}18 19 20 21 22 23 24
65 sw-e300 1 X X X X X X X X X X X X X X X X . X X X X . X X
66 sw-e300 4 . . . . . . . . . . . . . . . . t0 . . . . X . X t42 eth0
67 sw-e300 5 . . . . . . . . . . . . . . . . . . . . . X . X
68 sw-e300 20 . . . . . . . . . . . . . . . . . . . . . X X X
69 ----------- ----- 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20{21}22 23 24
70 sw-e300-2 1 X X X X X X X X X X X X X X X X X X X X t2 X X X th42 eth2
71 sw-e300-2 20 . . . . . . . . . . . . . . . . . . . . . . . X
76 eeepy:/home/dpavlin# uname -a
77 Linux eeepy 3.16.0-4-586 #1 Debian 3.16.51-2 (2017-12-03) i686 GNU/Linux
79 eeepy:/home/dpavlin# tshark -i eth0 | grep 'frame'
81 1 0.000000 00.00.00 -> 80.00.00 FC 86 Unknown frame
82 2 0.044321 00.00.00 -> 80.00.00 FC 86 Unknown frame
83 4 0.088655 00.00.00 -> 80.00.00 FC 86 Unknown frame
84 6 0.132972 00.00.00 -> 80.00.00 FC 86 Unknown frame
85 11 0.177300 00.00.00 -> 80.00.00 FC 86 Unknown frame
86 14 0.221633 00.00.00 -> 80.00.00 FC 86 Unknown frame
88 different wired packets on different machine with newer kernel:
90 t42:/home/dpavlin# uname -a
91 Linux t42 4.9.0-6-686 #1 SMP Debian 4.9.88-1+deb9u1 (2018-05-07) i686 GNU/Linux
93 t42:/home/dpavlin# tshark -i eth2 | grep Ethernet
95 2 0.006734442 fe:80:00:00:00:00 → e5:37:7f:e7:f0:fa 0x0000 86 Ethernet II
96 5 0.051063305 fe:80:00:00:00:00 → e5:37:7f:e7:f0:fa 0x0000 86 Ethernet II
97 9 0.095479055 fe:80:00:00:00:00 → e5:37:7f:e7:f0:fa 0x0000 86 Ethernet II
98 11 0.139803448 fe:80:00:00:00:00 → e5:37:7f:e7:f0:fa 0x0000 86 Ethernet II
99 17 0.184132590 fe:80:00:00:00:00 → e5:37:7f:e7:f0:fa 0x0000 86 Ethernet II
100 20 0.228461174 fe:80:00:00:00:00 → e5:37:7f:e7:f0:fa 0x0000 86 Ethernet II
101 22 0.273977679 fe:80:00:00:00:00 → e5:37:7f:e7:f0:fa 0x0000 86 Ethernet II
102 25 0.317120297 fe:80:00:00:00:00 → e5:37:7f:e7:f0:fa 0x0000 86 Ethernet II
103 30 0.361353892 fe:80:00:00:00:00 → e5:37:7f:e7:f0:fa 0x0000 86 Ethernet II
104 33 0.405682196 fe:80:00:00:00:00 → e5:37:7f:e7:f0:fa 0x0000 86 Ethernet II
105 34 0.450103254 fe:80:00:00:00:00 → e5:37:7f:e7:f0:fa 0x0000 86 Ethernet II
106 35 0.494430162 fe:80:00:00:00:00 → e5:37:7f:e7:f0:fa 0x0000 86 Ethernet II
107 37 0.538770200 fe:80:00:00:00:00 → e5:37:7f:e7:f0:fa 0x0000 86 Ethernet II
108 40 0.583004074 fe:80:00:00:00:00 → e5:37:7f:e7:f0:fa 0x0000 86 Ethernet II
110 those where also visible as Unknown frame on eeepy on same port.
114 # change switch port vlan
116 dpavlin@black:~/dell-switch$ ssh sw-e300
123 sw-e300(config)# interface ethernet g17
124 sw-e300(config-if)# switchport access vlan 1
125 sw-e300(config-if)# exit
126 sw-e300(config)# exit
128 Connection to sw-e300 closed.
134 dpavlin@black:~/dell-switch$ ./dell-switch.pl sw-e300 'show vlan'
136 dpavlin@black:~/dell-switch$ ./vlan-ports.pl ./log/*sw-e300_*vlan* 2>/dev/null
137 ----------- ----- 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
138 sw-e300 1 X X X X X X X X X X X X X X X X . X X X X . X X
139 sw-e300 4 . . . . . . . . . . . . . . . . X . . . . X . X
140 sw-e300 5 . . . . . . . . . . . . . . . . . . . . . X . X
141 sw-e300 20 . . . . . . . . . . . . . . . . . . . . . X X X