Поиск по этому блогу

пятница, 10 августа 2012 г.

Use CDP protocol to determine connection port on Linux

for netDEV in `cat /proc/net/dev | grep :[1-9] | grep "eth" | awk -F ":" '{print $1}'`;  do echo $netDEV;  /usr/sbin/tcpdump  -nn -vvv -i $netDEV -s 1500 -c 1 'ether host 01:00:0c:cc:cc:cc and ether[20:2] == 0x2000' 2> /dev/null | grep "Device-ID\|Address \|Port-ID"; done | perl -P -e 'while () { chomp; if (m/eth[0-9]/) { $hn=`hostname -s`; chomp($hn); print $hn.";".$&.";"; } if (m/Device-ID/) { @array = split(/ /); print pop(@array).";"; } if (m/Port-ID[\d\D]+:/) {   @array = split(/ /); print pop(@array)."\n";  } }'


Комментариев нет:

Отправить комментарий