ESXi에서 패킷 캡처를 얻는 방법
5723 단어 패킷 캡처VMware_ESXi네트워크vmware
이 기사의 목적
테스트한 환경
VMware vSphere 6.5 U3f
VMware ESXi 6.5 P04
이번 데이터를 취득하는 대상 범위에 대해서
아래 그림을 참조하십시오. 출처 (그림 3)
vmk0으로 데이터를 얻는 단계
[admin@vcs000:/tmp] esxcli network ip interface ipv4 get
Name IPv4 Address IPv4 Netmask IPv4 Broadcast Address Type Gateway DHCP DNS
---- -------------- --------------- -------------- ------------ ------- --------
vmk0 10.xxx.15.12 255.255.255.192 10.xxx.15.63 STATIC 0.0.0.0 false
vmk2 10.xxx.30.67 255.255.255.192 10.xxx.30.127 STATIC 0.0.0.0 false
vmk3 10.xxx.22.131 255.255.255.192 10.xxx.22.191 STATIC 0.0.0.0 false
vmk1 10.xxx.105.195 255.255.255.192 10.xxx.105.255 STATIC 0.0.0.0 false
[admin@vcs000:/tmp]
[admin@vcs000:/tmp] net-stats -l
PortNum Type SubType SwitchName MACAddress ClientName
50331650 4 0 DvsPortset-0 ac:1f:6b:c6:46:00 vmnic2
50331652 3 0 DvsPortset-0 00:50:56:6c:70:87 vmk0
50331653 3 0 DvsPortset-0 00:50:56:64:9d:d1 vmk1
50331654 3 0 DvsPortset-0 00:50:56:68:3c:c5 vmk2
50331655 3 0 DvsPortset-0 00:50:56:6a:22:1a vmk3
50331656 4 0 DvsPortset-0 ac:1f:6b:c6:45:fe vmnic0
50331658 5 9 DvsPortset-0 00:50:56:84:ee:80 nsxt25-nsxt-ctrlmgr1.eth0
50331663 5 9 DvsPortset-0 00:50:56:84:44:c6 service-edge01.eth2
50331664 5 9 DvsPortset-0 00:50:56:84:2e:a6 service-edge01.eth1
50331665 5 9 DvsPortset-0 00:50:56:84:29:72 service-edge01.eth0
67108866 4 0 DvsPortset-1 ac:1f:6b:c6:45:ff vmnic1
67108868 4 0 DvsPortset-1 ac:1f:6b:c6:46:01 vmnic3
67108870 5 9 DvsPortset-1 00:50:56:84:e1:b0 service-edge01.eth3
[admin@vcs000:/tmp]
-> "50331652"가 vmk0의 PortNum으로 묶여 있는지 확인
* 패킷 캡처 시작 (수신 패킷 dir0 측)
* "pktcap-uw -o/tmp/edge-YYYYDDMM.dir0 --switchport 50331652 --dir 0"명령을 입력합니다.
: Ctl + C에서 패킷 캡처 중지
: 파일 세대를 관리 할 수 있도록 YYYYDDMM (날짜)을 지정합니다.
[admin@vcs000:~] pktcap-uw -o /tmp/edge-YYYYDDMM.dir0 --switchport 50331652 --dir 0
The output file is /tmp/edge-20200916.dir0.
The switch port id is 0x03000004.
No server port specifed, select 45432 as the port.
Local CID 2.
Listen on port 45432.
Accept...
Vsock connection from port 1034 cid 2.
Dump: 19, broken : 0, drop: 0, file err: 0.
Dump: 32, broken : 0, drop: 0, file err: 0.
Dump: 46, broken : 0, drop: 0, file err: 0.
Dump thread exiting...
Receive thread exiting...
Dumped 46 packet to file /tmp/edge-20200916.dir0, dropped 0 packets.
Done.
[admin@vcs000:~]
** 패킷 캡처 시작 (송신 패킷 dir1 측)
* "pktcap-uw -o/tmp/edge-YYYYDDMM.dir1 --switchport 50331652 --dir 1"명령을 입력합니다.
: dir0과는 별도의 새로운 SSH 세션을 시작해야합니다.
[admin@vcs000:~] pktcap-uw -o /tmp/edge-YYYYDDMM.dir1 --switchport 50331652 --dir 1
The output file is /tmp/edge-20200916.dir1.
The switch port id is 0x03000004.
No server port specifed, select 45439 as the port.
Local CID 2.
Listen on port 45439.
Accept...
Vsock connection from port 1035 cid 2.
Dump: 20, broken : 0, drop: 0, file err: 0.
Dump: 32, broken : 0, drop: 0, file err: 0.
Dump thread exiting...
Receive thread exiting...
Dumped 32 packet to file /tmp/edge-20200916.dir1, dropped 0 packets.
Done.
[admin@vcs000:~]
[admin@vcs000:/tmp] ls -l
total 100
-r--r--r-- 1 root root 12116 Sep 16 01:58 edge-20200916.dir0
-r--r--r-- 1 root root 5018 Sep 16 01:58 edge-20200916.dir1
[admin@vcs000:/tmp]
위에서 만든 파일을 scp 등으로 전송하고 Wireshark 등의 패킷 캡처 툴에 읽어들여 데이터 해석이 가능합니다.
보충사항
이번에는 VMKernel (관리 및 vMotion)에서 사용되는 vmk0 데이터 캡처를 얻었습니다. NIC (아래 그림의 예에서는 vmnic2, vmnic3)에서 얻을 수 있다고 생각합니다. (만약 인식이 잘못되었거나 다른 좋은 방법이 있다면 코멘트로 알려 주시면 감사하겠습니다)
기타 참고문헌
VMware Docs 패킷 캡처를 위한 pktcap-uw 명령 구문
Reference
이 문제에 관하여(ESXi에서 패킷 캡처를 얻는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/naoki_fisher/items/7b30c61b94849db24780텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)