Un fork de packetdrill qui ajoute le support pour
et des corrections de bugs génériques, en particulier plusieurs correctifs requis pour que packetdrill fonctionne sur FreeBSD. MacOS (El Capitan et supérieur) est également pris en charge.
Il existe quelques articles (; connexion : octobre 2013, USENIX ATC '13) et une présentation (ICCRG IETF87) décrivant packetdrill.
Téléchargez les sources, compilez-les et installez le binaire :
git clone https://github.com/nplab/packetdrill.git
cd packetdrill/gtests/net/packetdrill/
./configure
make
sudo cp packetdrill /usr/bin
Pour installer les packages requis, exécutez :
sudo apt-get install make git libsctp-dev bison flex python3 libssl-dev
Téléchargez ensuite les sources, compilez-les et installez le binaire :
git clone https://github.com/nplab/packetdrill.git
cd packetdrill/gtests/net/packetdrill/
./configure
make
sudo cp packetdrill /usr/bin
Pour installer les packages requis, exécutez :
sudo pkg install git bison python
Téléchargez ensuite les sources, compilez-les et installez le binaire :
git clone https://github.com/nplab/packetdrill.git
cd packetdrill/gtests/net/packetdrill/
./configure
make
sudo cp packetdrill /usr/local/bin
Pour pouvoir exécuter packetdrill en combinaison avec sudo
run
sudo sysctl -w vm.old_mlock=1
ou ajouter
vm.old_mlock=1
dans /etc/sysctl.conf
et redémarrez.
packetdrill n'a pas de support Windows, mais le mode distant packetdrill fonctionne dans le sous-système Windows pour Linux version 1 (WSL1). Notez que WSL1 mappe les appels système Linux aux appels système Windows, alors que WSL2 est essentiellement une machine virtuelle Linux. Pour tester l'implémentation Windows, WSL1 est requis.
Suivez les instructions Linux pour l'installation.
Le mode distant packetdrill nécessite deux hôtes, le wire_client (c'est-à-dire le système testé, Windows) et le wire_server (c'est-à-dire le système qui capture les paquets, par exemple Ubuntu).
Pour démarrer le wire_server avec l'interface enp0s5f0 se connectant à wire_client.
sudo packetdrill --wire_server --wire_server_dev=enp0s5f0
Pour démarrer wire_client sous Windows, démarrez d'abord un cmd en tant qu'administrateur et exécutez wsl à l'intérieur. Dans le wsl, exécutez
sudo packetdrill --wire_client --wire_client_dev=eth1 --wire_server_ip=10.1.2.3 <script_path>
où eth1 est l'interface de wsl avec wire_server et 10.1.2.3 est la véritable adresse IP de l'interface enp0s5f0 de wire_server.
L'état des tests d'intégration continue est disponible auprès de Buildbot.