通过tcpdump查看源目标mac,通过帮助文档查看, -e Print the link-level header on each dump line. This can be used, for example, to print MAC layer addresses for protocols such as Ethernet and IEEE 802.11.
可以用-e参数。不过在实际抓包的过程中,只看到了源mac地址,看不到目标mac地址。开始以为是抓包命令有问题,于是各种搜索tcpdump查看源目标mac的方法,没有进展。
最终,将抓包下载到本地,用wireshark查看一下,发现也有同样的问题。看到了Linux cooked capture字样,于是查了一下是什么意思。原来当抓包的时候抓所有网卡的时候,即-i any
的时候,会出现这种情况。平时抓包的时候,为了省事儿,通常不会指定特定网卡,直接就用了-ni any抓取所有网卡了。
于是,试着指定一下特定的网卡抓一下包试试。果然都看到了源目标mac地址。