On May 30, 2013, at 6:38 PM, "Teske, Devin" <devin.te...@fisglobal.com> wrote:

> 
> On May 30, 2013, at 9:18 AM, Joe wrote:
> 
>> Pietro Paolini wrote:
>>> On May 30, 2013, at 2:29 PM, Joe <fb...@a1poweruser.com> wrote:
>>>> Pietro Paolini wrote:
>>>>> Hello all,
>>>>> I am a new bye on the FreeBSD and I am looking at the VIMAGE features 
>>>>> experiencing some problems.
>>>>> I added the options :
>>>>> VIMAGE
>>>>> if_bridge
>>>>> and I removed
>>>>> STCP
>>>>> then I recompiled my kernel and install it.
>>>>> After that, following this tutorial 
>>>>> http://imunes.tel.fer.hr/virtnet/eurobsdcon07_tutorial.pdf I tried the 
>>>>> "Exercise 2" which consist on the following commands:
>>>>> vimage -c n1
>>>>> vimage -c n2
>>>>> ngctl mkpeer efface ether ether
>>>>> ngctl mkpeer efface ether ether
>>>>> ngctl mkpeer em0: bridge lower link0
>>>>> ngctl name em0:lower bridge0
>>>>> ngctl connect em0: bridge0: upper link1
>>>>> ngctl connect ngeth0: bridge0: ether link2
>>>>> ngctl connect ngeth1: bridge0: ether link3
>>>>> vimage -i n1 ngeth0 e0
>>>>> But my virtual interface on the n1 vimage does not receive any packet 
>>>>> from the external network while I can see the packet go out from it.
>>>>> For instance using DHCP, e0 on n1 sends DHCP packets but it does not 
>>>>> receive the answers (which are send, I verified it from wireshark), in 
>>>>> adding
>>>>> the ARP request for his IP address (if I try to add it statically) are 
>>>>> not received then it can not answer.
>>>>> At the end of the line the question is: how can I make this "virtual 
>>>>> network" and the external real network be able to communicate ?
>>>>> Thanks in advance.
>>>>> Pietro.
>>>> 1. That link is from 2007. So very much has changed since then.
>>>> There are more current links on the internet about this subject. Most are 
>>>> for 8.X releases.
>>>> 
>>>> 2. If your running 8.2-RELEASE or 9.1-RELEASE all you need to add is 
>>>> "options vimage" statement to your kernel source and recompile.
>>>> 
>>>> 3. There are 2 networking methods available for creating vnet/vimage jail 
>>>> networks, if_bridge/epair and netgraph. The if_bridge/epair method is far 
>>>> simpler to config and use then the netgraph method.
>>>> 
>>>> 4. There are 2 methods of jail setup, the rc.d method where your jail 
>>>> definition parameters go into the hosts rc.conf and the jail(8) method 
>>>> where you can place each jails definition parameter in separate files.
>>>> 
>>>> 5. There are two very important show stopper PRs on vimage,
>>>> 164763 memory leak and 149050 the rc.d keyword "nojail" problem.
>>>> Vimage is a very long way from prime time usage, thats why it's labeled as 
>>>> highly experimental. Host system freezes and page faults are common.
>>>> 
>>>> 6. When it comes to running a firewall in a vnet/vimage jail your limited 
>>>> to IPFW and it has limitations. Dummynet and in kernel NAT cause system 
>>>> freezes. IPFILTER causes page fault at boot time. PF will run on the host 
>>>> but not run in the vnet/vimage jail. Here are a bunch of PRs on vimage 
>>>> firewall problems, 143621, 176092, 161094, 176992, 143808, 148155, 165252, 
>>>> 178480, 178482
>>>> 
>>>> 
>>>> Check out these links
>>>> 
>>>> http://druidbsd.sourceforge.net/vimage.shtml
>>>> http://devinteske.com/vimage-jails-on-freebsd-8
>>>> http://lists.freebsd.org/pipermail/freebsd-virtualization/2011-September/000747.html
>>>> 
>>>> http://bsdbased.com/2009/12/06/freebsd-8-vimage-epair-howto
>>>> http://zewaren.net/site/?q=node/78
>>>> 
>>>> 
>>>> _______________________________________________
>>>> freebsd-questions@freebsd.org mailing list
>>>> http://lists.freebsd.org/mailman/listinfo/freebsd-questions
>>>> To unsubscribe, send any mail to 
>>>> "freebsd-questions-unsubscr...@freebsd.org"
>>> Thanks so much, really interesting and good links but I can't again 
>>> accomplish my task - I followed 
>>> http://bsdbased.com/2009/12/06/freebsd-8-vimage-epair-howto as a base 
>>> tutorial - I would like simulate more client for my PC using this 
>>> technology, and that's my topology:
>>> 1 - Two epairs created 2 - Two jail created
>>> 3 - Assign one intf for jail
>>> 4 - Add the real interface to a bridge where I put all the interfaces
>>> -------
>>> JAIL1
>>> 0b
>>> -------
>>> -------
>>> JAIL2          1b
>>> -------
>>> -------
>>> HOST
>>> 0a
>>> 1a
>>> em0 --> REAL
>>> -------
>>> Where {0,1}a is the first pair and {0,1}b is the second and em0 is my real 
>>> interface (it has an IP address), then I got to the problem, I tried to :
>>> jexec 2 dhclient epair1b  And I can see the DHCP packet with the correct 
>>> MAC address going out, the server reply (I have a sniffer pc) but the 
>>> transaction does not end successfully, what is really strange is that if I 
>>> attach tcpdump on em0 I can NOT see the answer server sends while when I try
>>> dhclient em0 I can see the packet going in and out and the DHCP transaction 
>>> finish successfully. Do you have any idea about how can I accomplish my 
>>> target ? Maybe I am using the wrong technology ?
>>> I would not surprised if I make a error on my configuration but what really 
>>> interest me is if I CAN do that using jail.
>>> Thanks a lot, and in advance ! :-)
>>> Pietro.
>> 
>> 
>> Pietro;
>> 
>> You really have to provide a lot more info about your host system and jail 
>> configuration.
>> 
>> What version of FreeBSD are you running?
>> 
>> Which method do you use to create your jails, rc.d/rc.conf or jail(8).
>> 
>> How are your creating the if_bridge/epair network, IE entering commands by 
>> hand or using a script? Post the script.
>> 
>> Can you post the output of ifconfig command after you have your jail network 
>> created?
>> 
>> How are you handling the "rc.d nojail keyword" problem?
>> 
>> Have you manually assigned a private LAN ip address and default route to the 
>> epairXb interface inside of the vnet jail?
>> 
>> DHCP will not work from inside of the vnet jail. Your ISP only assigns a 
>> single dymamic IP address per each account. You already used your assigned 
>> ip address for your host. If the computer your running the vnet/vimage jail 
>> on is on a local area network and the gateway host is running a DHCP server 
>> to dynamically assign private ip address to computers on the LAN, then DHCP 
>> in the vnet/vimage jail may work.
>> 
> 
> I imagine that most vimage solutions do not do what mine does… 
> (http://druidbsd.sourceforge.net/download.shtml#vimage)
> 
> Which is to actually give each bridged interface a unique MAC address.
> 
> This makes each vimage truly appear as a separate host. This makes DHCP from 
> a vimage possible because the DHCP server sees discretely unique systems, 
> through-and-through.
> 
> 
> 
>> To the broader question, why do you think you need a vnet/vimage jail in the 
>> first place. You wrote "simulate more client for my PC", If client means 
>> hosting paying clients then you sure don't want to be using vimage because 
>> it highly experimental and NOT reliable.
>> 
> 
> The reports of vimages unreliability must be coupled with the feature-set you 
> desire.
> 
> I say this because yesterday afternoon… we shipped our first-ever production 
> platform to a customer -- based entirely on FreeBSD 8.1 + vimage + zfs + 
> sysutils/zxfer + multipath + nullfs + nfs. No single point of failure.
> 
> We ran vimage in the lab for about 2.5 years before arriving at the point 
> that we were ready to put it into production. (NOTE: FreeBSD-8.1 is about 36 
> months old).
> 
> So to say that it's not reliable enough for production… it depends on your 
> definition of production. From the FreeBSD Foundation side… I'd say that this 
> sounds about correct (because "production" means to the FreeBSD Foundation… 
> able to work with all GENERIC features). However, in our case "production" 
> means… able to work with the features *we* need.
> 
> The features VIMAGE doesn't work with today are PF and a few other things (I 
> saw Joe post in a different reply that "nooptions SCTP" may not be required 
> anymore… so progress seems to be afoot).
> 
> But with respect to stability and reliability… if you can get them to run… 
> they're solid…
> 
> Just don't do any of the following:
> 
> 1. Expose /dev/mem to the jail via a ruleset
> 
> 2. Expose /dev/kmem (same problem as #1 … you could find yourself in a kernel 
> panic)
> 
> NOTE: Both of the above are self-inflicted gunshot wounds. These devices are 
> not exposed by default (and the only reason to do so is to try to get things 
> like Xorg or "netstat -nr" to work within the vimage; side-note: "route -n 
> get default" works).
> 
> Oh… and then there's the issue that when you stop a vimage, some KVA pages 
> are supposedly lost.
> 
> Well… in true production, we don't make it a habit of stopping vimages (once 
> they are up, they stay up). Usually the only reason for a vimage to go down 
> is if the base machine goes down or you need to change the mounts… in either 
> case, the KVA pages will be refreshed on a reboot of the base machine… so 
> it's really not an issue to the way we run production.
> -- 
> Devin
> 
> 
>> Jails are a security feature that encloses a process in a container. By 
>> process I mean "postfix email server" or "apache web server". If your 
>> "client" means "processes", then this is what the non-vnet/vimage jail is 
>> for.
>> 
>> _______________________________________________
>> freebsd-questions@freebsd.org mailing list
>> http://lists.freebsd.org/mailman/listinfo/freebsd-questions
>> To unsubscribe, send any mail to "freebsd-questions-unsubscr...@freebsd.org"
> 
> _____________
> 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.

I am running a 9.1-RELEASE with VIMAGE option enabled, I don't see any problem 
with my DHCP server because I am in a custom env then DHCP is running on a 
machine than I configured.

I used both ways

http://imunes.tel.fer.hr/virtnet/eurobsdcon07_tutorial.pdf 

or

http://bsdbased.com/2009/12/06/freebsd-8-vimage-epair-howto

All I wish is to connect my external network on the real ethernet interface to 
my virtual network stack (jail, visage, as you wish call it).




_______________________________________________
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to "freebsd-questions-unsubscr...@freebsd.org"

Reply via email to