From owner-freebsd-hackers@FreeBSD.ORG Sat Mar 8 03:52:10 2014 Return-Path: Delivered-To: freebsd-hackers@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 34C733EA; Sat, 8 Mar 2014 03:52:10 +0000 (UTC) Received: from mail-oa0-x22f.google.com (mail-oa0-x22f.google.com [IPv6:2607:f8b0:4003:c02::22f]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id DEF7A2DF; Sat, 8 Mar 2014 03:52:09 +0000 (UTC) Received: by mail-oa0-f47.google.com with SMTP id i11so5045496oag.6 for ; Fri, 07 Mar 2014 19:52:09 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=e0vlI6KYm8aby0DeK+OGdXran98+c+3t0N9TqoUKvOw=; b=Cc+kQsHofnuDaF7MVaHa+KKrr1k8VdTsnBSy3Xs7QT0UQLbFflho2Zo+QjP38grS6U sgKTxCVyYvHiuvNasp2ai7D7SLYJXKPaFpXHLUkPNIyt7PjCp1TXm2v5esc6X4CWAkMt v7U9Svjhjk3jhxMC/Pn/vpWyN5ja1sCgLb587OYS5lGDG6g6iLwHux2YJquVSuXE5l2Y kDpolOm5N2875JcUTO2lekVAx2ruBGQBc9V4zVsJbiTkqM/+IJdoT52ly0TMf4oa/mPI n9kiY4uSEMPJrHcCziESM3U5XOnCybk/lqkZJ3JNAhOkFn7SYdTU8ZwTNf1OryiFoWxo 8gNw== MIME-Version: 1.0 X-Received: by 10.60.93.168 with SMTP id cv8mr303402oeb.21.1394250729177; Fri, 07 Mar 2014 19:52:09 -0800 (PST) Received: by 10.182.76.201 with HTTP; Fri, 7 Mar 2014 19:52:09 -0800 (PST) In-Reply-To: References: <53181410.1030107@freebsd.org> <5318B836.7040301@grosbein.net> <19cd01cf3974$dffa5bf0$9fef13d0$@FreeBSD.org> <1a1801cf39d4$1155a830$3400f890$@FreeBSD.org> Date: Fri, 7 Mar 2014 22:52:09 -0500 Message-ID: Subject: Re: How do I create a cloned interface when there is no static connection? From: Joe Nosay To: Devin Teske Content-Type: text/plain; charset=ISO-8859-1 X-Content-Filtered-By: Mailman/MimeDel 2.1.17 Cc: FreeBSD Hackers , Eugene Grosbein X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Mar 2014 03:52:10 -0000 On Fri, Mar 7, 2014 at 10:37 PM, Joe Nosay wrote: > > > On Fri, Mar 7, 2014 at 10:00 PM, Joe Nosay wrote: > >> >> >> >> On Fri, Mar 7, 2014 at 2:08 AM, wrote: >> >>> >>> >>> > -----Original Message----- >>> > From: Joe Nosay [mailto:superbisquit@gmail.com] >>> > Sent: Thursday, March 6, 2014 6:52 PM >>> > To: Devin Teske >>> > Cc: FreeBSD Hackers; Eugene Grosbein >>> > Subject: Re: How do I create a cloned interface when there is no static >>> > connection? >>> > >>> > On Thu, Mar 6, 2014 at 2:47 PM, wrote: >>> > >>> > > >>> > > >>> > > > -----Original Message----- >>> > > > From: Eugene Grosbein [mailto:eugen@grosbein.net] >>> > > > Sent: Thursday, March 6, 2014 10:03 AM >>> > > > To: Joe Nosay >>> > > > Cc: FreeBSD Hackers >>> > > > Subject: Re: How do I create a cloned interface when there is no >>> > > > static connection? >>> > > > >>> > > > On 07.03.2014 00:39, Joe Nosay wrote: >>> > > > >>> > > > > I'll need a dummy interface inside of the that can be bridged to >>> > > > > wlan0 outside of the jail. Normal jail with aliases. >>> > > > >>> > > > Try epair(4) and give one part of pair to jail and bridge another >>> > > > part >>> > > with >>> > > > wlan0. >>> > > > >>> > > >>> > > Never tried bridging a wlan with netgraph, but I wonder if the method >>> > > I use for bridging Ethernet with netgraph would work... >>> > > >>> > > Using the ngctl command to create an ng_bridge and then multiple >>> > > ng_eiface devices that you can be shoved into the jail. >>> > > >>> > > kldload ng_ether >>> > > kldload ng_bridge >>> > > kldload ng_eiface >>> > > ngctl >>> > > + mkpeer {IFACE}: bridge lower link0 >>> > > + connect {IFACE}: {IFACE}:lower upper link1 >>> > > + name {IFACE}:lower {IFACE}bridge >>> > > + quit >>> > > ifconifg {IFACE} up >>> > > ngctl >>> > > + msg {IFACE}: setpromisc 1 >>> > > + msg {IFACE}: setautosrc 0 >>> > > + mkpeer {IFACE}:lower eiface link{N} ether >>> > > + name {IFACE}bridge:link{N} >>> > > + show -n {IFACE}bridge: >>> > > Name: ngeth0 Type: eiface ID: XXXXXXXX >>> Num >>> > > hooks: N >>> > > + name {IFACE}bridge:link{N} {NEWIFACE} >>> > > ifconfig ngeth0 name {NEWNAME} >>> > > ifconfig {NEWNAME} vnet {JID} >>> > > >>> > > Taking care to replace the following from above: >>> > > {IFACE} - the name of the interface you want to bridge (eg, em0) {N} >>> - >>> > > link number (starts at 2; increments by-one for each new eiface) >>> > > {NEWIFACE} - the name of the new eiface (ngethN) device to create >>> > > {JID} - the jail ID of the jail you want to shove the interface into >>> > > >>> > > Of course, never tried this with WiFi. >>> > >>> > I did not properly create the jail.conf script. I believe the file of >>> /etc/rc.d/jail >>> > should be followed; yet, there is no tutorial on setting it up. >>> > My /etc/rc.conf file is also improperly setup. How? I don't know; but, >>> I >>> can tell >>> > because the system will not boot completely and ctrl+C must be hit to >>> allow >>> > logging in. >>> >>> What release are you using? "uname -spr" is often succinct enough. >>> -- >>> Devin >>> >>> _____________ >>> The information contained in this message is proprietary and/or >>> confidential. If you are not the intended recipient, please: (i) delete the >>> message and all copies; (ii) do not disclose, distribute or use the message >>> in any manner; and (iii) notify the sender immediately. In addition, please >>> be aware that any message addressed to our domain is subject to archiving >>> and review by persons other than the intended recipient. Thank you. >>> >> >> >> FreeBSD 10.0-RELEASE amd64 >> The /etc/rc.d/jail script is interpreting the name at -G in >> FreeBSD-Google_projects to be a command line option. I am going to see what >> happens if I just change the name. >> > > > Ok. > The jail.conf is in /etc, the name is without hypens or undescores, and > the script dies with "/etc/rc no such file or directory" from jail.conf. > There is a /etc/rc but I know that jail exists in /etc/rc.d? > Wait a sec. > Okay. Herein lies the problem: I used /bin/sh plus location of jail plus the command to start and stop. The system does not seem to be able to find the script. I have not ran /usr/libexec/locate.updatedb yet. That may help, I don't know. Hold a sec, let me test. exec.start = "/bin/sh /etc/rc.d/jail jail_start"; exec.stop = "/bin/sh /etc/rc.d/jail jail_stop";