44장. 네트워크 패킷 캡처
네트워크 문제 및 통신을 디버깅하려면 네트워크 패킷을 캡처할 수 있습니다. 다음 섹션에서는 네트워크 패킷 캡처에 대한 지침 및 추가 정보를 제공합니다.
44.1. xdpdump를 사용하여 XDP 프로그램에서 삭제한 패킷을 포함하여 네트워크 패킷을 캡처 링크 복사링크가 클립보드에 복사되었습니다!
xdpdump 유틸리티는 네트워크 패킷을 캡처합니다. tcpdump 유틸리티와 달리 xdpdump 는 이 작업에 확장된 Berkeley Packet Filter(eBPF) 프로그램을 사용합니다. 이를 통해 xdpdump 는 Express Data Path(XDP) 프로그램에서 삭제된 패킷도 캡처할 수 있습니다. tcpdump 와 같은 사용자 공간 유틸리티는 이러한 삭제된 패키지와 XDP 프로그램에서 수정한 원본 패킷을 캡처할 수 없습니다.
xdpdump 를 사용하여 이미 인터페이스에 연결된 XDP 프로그램을 디버깅할 수 있습니다. 따라서 유틸리티는 XDP 프로그램이 시작되기 전과 작업이 완료된 후 패킷을 캡처할 수 있습니다. 후자의 경우 xdpdump 도 XDP 작업을 캡처합니다. 기본적으로 xdpdump 는 XDP 프로그램 항목에서 들어오는 패킷을 캡처합니다.
AMD 및 Intel 64비트 이외의 아키텍처에서는 xdpdump 유틸리티가 기술 프리뷰로만 제공됩니다. 기술 프리뷰 기능은 Red Hat 프로덕션 서비스 수준 계약(SLA)에서 지원되지 않으며 기능적으로 완전하지 않을 수 있으며 Red Hat은 해당 기능을 프로덕션에 사용하지 않는 것이 좋습니다. 이러한 프리뷰를 통해 향후 제품 기능에 조기 액세스할 수 있어 개발 프로세스 중에 기능을 테스트하고 피드백을 제공할 수 있습니다.
기술 프리뷰 기능에 대한 지원 범위에 대한 정보는 Red Hat 고객 포털에서 기술 프리뷰 기능 지원 범위를 참조하십시오.
xdpdump 에는 패킷 필터 또는 디코딩 기능이 없습니다. 그러나 패킷 디코딩을 위해 tcpdump 와 함께 사용할 수 있습니다.
사전 요구 사항
- XDP 프로그램을 지원하는 네트워크 드라이버입니다.
-
XDP 프로그램이
enp1s0인터페이스에 로드됩니다. 프로그램이 로드되지 않은 경우xdpdump는 이전 버전과의 호환성을 위해tcpdump가 수행하는 것과 유사한 방식으로 패킷을 캡처합니다.
프로세스
enp1s0인터페이스에서 패킷을 캡처하고/root/capture.pcap파일에 쓰려면 다음을 입력합니다.xdpdump -i enp1s0 -w /root/capture.pcap
# xdpdump -i enp1s0 -w /root/capture.pcapCopy to Clipboard Copied! Toggle word wrap Toggle overflow - 패킷 캡처를 중지하려면 Ctrl+C 누릅니다.