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

 

 

 

[참고 링크]

https://docs.vmware.com/kr/VMware-vSphere/7.0/com.vmware.vsphere.networking.doc/GUID-30003897-2101-459C-81FA-FCB42313237E.html

 

패킷 캡처를 위한 pktcap-uw 명령 구문

패킷이 ESXi 호스트의 네트워크 스택을 이동하는 동안 패킷 내용을 검사하려면 pktcap-uw 유틸리티를 사용합니다.

docs.vmware.com

 

반응형

+ Recent posts