728x90
반응형
스위치 포트에 1개 대한 패킷 캡쳐
#!/bin/sh
interface=vmnic0 # 인터페이스
output_dir=/vmfs/volumes/ # 파일 위치
max_size=$((5*1024*1024)) # 파일 용량 설정 5GB
file_number=1
# 패킷캡처
pktcap-uw --uplink $interface --dir 2 -o $output_dir/${interface}_${file_number}.pcap &> /dev/null &
pid=$! #pid 설정
#--dir 0=수신 , 1=송신, 2= 양방향
# 파일 로테이트
while true; do
sleep 15
size=$(du -k $output_dir/${interface}_${file_number}.pcap | awk '{print $1}')
if [ $size -gt $max_size ]; then
kill $pid
file_number=$((file_number+1))
pktcap-uw --uplink $interface --dir 2 -o $output_dir/${interface}_${file_number}.pcap &> /dev/null &
pid=$!
fi
done
VM 포트 확인 명령어
net-stats -l | grep "<테스트용 VM 이름>" | grep "<스위치 이름>"
스위치포트 2, VM 포트 1 캡쳐
#!/bin/sh
output_dir=/vmfs/volumes/62c53930-3048bddd-4014-005056ae18dd/pktcap # 파일 위치
max_size=$((10*1024*1024)) # 파일 용량 설정 10GB
# 첫 번째 패킷캡처
interface1=vmnic0
file_number1=1
pktcap-uw --uplink $interface1 --dir 2 -o $output_dir/${interface1}_${file_number1}.pcap &> /dev/null &
pid1=$!
# 두 번째 패킷캡처
interface2=vmnic1
file_number2=1
pktcap-uw --uplink $interface2 --dir 2 -o $output_dir/${interface2}_${file_number2}.pcap &> /dev/null &
pid2=$!
# 세 번째 패킷캡처
vm_port=0
file_number3=1
pktcap-uw --switchport $vm_port --dir 2 -o $output_dir/vm_port_${vm_port}_${file_number3}.pcap &> /dev/null &
pid3=$!
# 파일 로테이트
while true; do
sleep 15
# 첫 번째 파일 로테이트
size=$(du -k $output_dir/${interface1}_${file_number1}.pcap | awk '{print $1}')
if [ $size -gt $max_size ]; then
kill $pid1
file_number1=$((file_number1+1))
pktcap-uw --uplink $interface1 --dir 2 -o $output_dir/${interface1}_${file_number1}.pcap &> /dev/null &
pid1=$!
fi
# 두 번째 파일 로테이트
size=$(du -k $output_dir/${interface2}_${file_number2}.pcap | awk '{print $1}')
if [ $size -gt $max_size ]; then
kill $pid2
file_number2=$((file_number2+1))
pktcap-uw --uplink $interface2 --dir 2 -o $output_dir/${interface2}_${file_number2}.pcap &> /dev/null &
pid2=$!
fi
# 세 번째 파일 로테이트
size=$(du -k $output_dir/vm_port_${vm_port}_${file_number3}.pcap | awk '{print $1}')
if [ $size -gt $max_size ]; then
kill $pid3
file_number3=$((file_number3+1))
pktcap-uw --switchport $vm_port --dir 2 -o $output_dir/vm_port_${vm_port}_${file_number3}.pcap &> /dev/null &
pid3=$!
fi
done
[참고 링크]
패킷 캡처를 위한 pktcap-uw 명령 구문
패킷이 ESXi 호스트의 네트워크 스택을 이동하는 동안 패킷 내용을 검사하려면 pktcap-uw 유틸리티를 사용합니다.
docs.vmware.com
반응형