지원을 추가하는 packetdrill 포크
일반적인 버그 수정, 특히 FreeBSD에서 packetdrill이 작동하도록 하는 데 필요한 몇 가지 수정 사항이 있습니다. MacOS(El Capitan 이상)도 지원됩니다.
packetdrill을 설명하는 몇 가지 문서(;login: October 2013, USENIX ATC '13)와 프레젠테이션(ICCRG IETF87)이 있습니다.
소스를 다운로드하고 컴파일한 후 바이너리를 설치합니다.
git clone https://github.com/nplab/packetdrill.git
cd packetdrill/gtests/net/packetdrill/
./configure
make
sudo cp packetdrill /usr/bin
필수 패키지를 설치하려면 다음을 실행하세요.
sudo apt-get install make git libsctp-dev bison flex python3 libssl-dev
그런 다음 소스를 다운로드하고 컴파일한 후 바이너리를 설치합니다.
git clone https://github.com/nplab/packetdrill.git
cd packetdrill/gtests/net/packetdrill/
./configure
make
sudo cp packetdrill /usr/bin
필수 패키지를 설치하려면 다음을 실행하세요.
sudo pkg install git bison python
그런 다음 소스를 다운로드하고 컴파일한 후 바이너리를 설치합니다.
git clone https://github.com/nplab/packetdrill.git
cd packetdrill/gtests/net/packetdrill/
./configure
make
sudo cp packetdrill /usr/local/bin
sudo
run과 함께 packetdrill을 실행할 수 있으려면
sudo sysctl -w vm.old_mlock=1
또는 추가
vm.old_mlock=1
/etc/sysctl.conf
로 이동하고 재부팅합니다.
packetdrill은 Windows를 지원하지 않지만 packetdrill 원격 모드는 WSL1(Linux용 Windows 하위 시스템 버전 1) 내에서 작동합니다. WSL1은 Linux 시스템 호출을 Windows 시스템 호출에 매핑하는 반면 WSL2는 기본적으로 Linux VM입니다. Windows 구현을 테스트하려면 WSL1이 필요합니다.
설치를 위해서는 Linux 지침을 따르십시오.
packetdrill 원격 모드에는 wire_client(즉, 테스트 중인 시스템, Windows)와 wire_server(즉, 패킷을 캡처하는 시스템, 예: Ubuntu)라는 두 개의 호스트가 필요합니다.
wire_client에 연결하는 인터페이스 enp0s5f0을 사용하여 wire_server를 시작합니다.
sudo packetdrill --wire_server --wire_server_dev=enp0s5f0
Windows에서 wire_client를 시작하려면 먼저 cmd를 관리자로 시작하고 그 안에서 wsl을 실행하세요. WSL 내부에서 다음을 실행합니다.
sudo packetdrill --wire_client --wire_client_dev=eth1 --wire_server_ip=10.1.2.3 <script_path>
여기서 eth1은 wire_server에 대한 wsl의 인터페이스이고 10.1.2.3은 wire_server enp0s5f0 인터페이스의 실제 IP 주소입니다.
지속적인 통합 테스트 상태는 Buildbot에서 확인할 수 있습니다.