From owner-freebsd-net@FreeBSD.ORG Sun Jul 6 03:06:04 2014 Return-Path: Delivered-To: net@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id F1B32BA7; Sun, 6 Jul 2014 03:06:04 +0000 (UTC) Received: from vps.hungerhost.com (vps.hungerhost.com [216.38.53.176]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id C9F7B288A; Sun, 6 Jul 2014 03:06:01 +0000 (UTC) Received: from pool-96-250-5-187.nycmny.fios.verizon.net ([96.250.5.187]:52945 helo=[192.168.1.10]) by vps.hungerhost.com with esmtpsa (TLSv1:DHE-RSA-AES256-SHA:256) (Exim 4.80.1) (envelope-from ) id 1X3cl6-00076R-BG; Sat, 05 Jul 2014 23:04:56 -0400 From: "George Neville-Neil" To: testing@freebsd.org, net@freebsd.org Subject: A new way to test systems in multiple machine scenarios... Date: Sat, 05 Jul 2014 23:04:55 -0400 Message-ID: MIME-Version: 1.0 Content-Type: text/plain; format=flowed X-Mailer: MailMate (1.7.2r3905) X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - vps.hungerhost.com X-AntiAbuse: Original Domain - freebsd.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - neville-neil.com X-Get-Message-Sender-Via: vps.hungerhost.com: authenticated_id: gnn@neville-neil.com X-BeenThere: freebsd-net@freebsd.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: Networking and TCP/IP with FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 06 Jul 2014 03:06:05 -0000 Hi, I've coded up a system to allow you to control multiple other systems for use in testing. https://github.com/gvnn3/conductor It's BSD licensed, of course, and is only alpha quality but I'm using it in the test lab to control hosts in forwarding tests. I'll be updating the system frequently over the coming months as I build out more test scenarios, add documentation and the like. There are two main scripts, player, and conductor. You run N players, one per machine, and a single conductor. The conductor controls the players by sending down phases which are encoded in INI style configs. There are a few, simple, samples in the config/ directory of the project. Best, George NOTE: Conductor MUST run as root to be useful. Do NOT run on the open Internet. It is meant for private test labs.