Re: [9fans] 9vx dns funny
Nathaniel W Filardo wrote: Just a reminder, nothing novel: if you don't mind being root on the host briefly (to run ifconfig, brctl, and tunctl commands), you can create a new TAP interface (and use the file descriptor in 9vx to back a devether) and use Linux's bridging to get ethernet frames to/from the real network interface. I've not tried it with 9vx but for my Qemu setup I use VDE http://vde.sourceforge.net/ You can start vblades on the tap0 and mount them in the OS on Qemu.
Re: [9fans] 9vx dns funny
On Tue, Jul 08, 2008 at 01:17:53PM -0400, Russ Cox wrote: > > i guess this gets to a more philosophical question > > on how 9vx networking relates to the host. > > > > personally, i feel it would be more useful to be > > able to use plan 9's native network stack. but > > i'm biased. i want to send aoe/cec/il packets. > > I'm happy to accomodate these kinds of things, > but I don't want to make it required. Running the > native TCP/IP stack requires being able to send and > receive raw ethernet frames on an otherwise unused > ethernet device, something most machines don't have > and also something that usually requires being root. > This would hamper portability quite a bit. > > It would be trivial to write a devether, like devip, > that handles raw ethernet frames. You'd still have to > be root on most systems, but if you stay away from > sending TCP and UDP packets, you can coexist > with the host OS on a single ethernet device. > That would be make sending aoe and cec very easy, > and if you did a bit more work and the host OS turned > a blind eye, you might even get away with IL. > I'd rather see that than drag in the entire network > stack from the Plan 9 kernel. Just a reminder, nothing novel: if you don't mind being root on the host briefly (to run ifconfig, brctl, and tunctl commands), you can create a new TAP interface (and use the file descriptor in 9vx to back a devether) and use Linux's bridging to get ethernet frames to/from the real network interface. This eliminates any "stay away from TCP/UDP" requirement and also lets you use just a single ethernet device. If the Linux host needs to be on the network, it can get its own IP or can be made to masquerade (yick). IIRC THNX does something similar; is there a reason this is unsatisfactory for the uses at hand? --nwf; pgpYskIpm959h.pgp Description: PGP signature
Re: [9fans] 9vx dns funny
> I intend 9vx to be a very thin layer atop the host's > resources, not a second machine that you have > to administer. If you want a second machine, there is > always VMware. as far as i know, neither plan 9 terminals nor cpu servers need individual administration. - erik
Re: [9fans] 9vx dns funny
> here's the symptom > > ndb/dnsquery 9hal.ath.cx > 9hal.ath.cx ip 9.0.0.0 Fixed. Instead of the tacky solution, one can check the return value from v4parseip. > on a related note, would it be worth while to > put effort into supporting ptr queries, ip6 &c using > the host's lookup facilities or should that effort be > directed into adding bits to enable ndb/dns to run? If someone sends me code to answer other DNS queries or to convert the current devip to IPv6, I would gladly take it. I intend 9vx to be a very thin layer atop the host's resources, not a second machine that you have to administer. If you want a second machine, there is always VMware. That said, if some people do want to switch over to Plan 9-provided versions of some host resources, that doesn't bother me, as long as they aren't required. I'm happy to make it possible to run ndb/dns or fossil instead of using the host's DNS and file system, but it's important that they're not required. > i guess this gets to a more philosophical question > on how 9vx networking relates to the host. > > personally, i feel it would be more useful to be > able to use plan 9's native network stack. but > i'm biased. i want to send aoe/cec/il packets. I'm happy to accomodate these kinds of things, but I don't want to make it required. Running the native TCP/IP stack requires being able to send and receive raw ethernet frames on an otherwise unused ethernet device, something most machines don't have and also something that usually requires being root. This would hamper portability quite a bit. It would be trivial to write a devether, like devip, that handles raw ethernet frames. You'd still have to be root on most systems, but if you stay away from sending TCP and UDP packets, you can coexist with the host OS on a single ethernet device. That would be make sending aoe and cec very easy, and if you did a bit more work and the host OS turned a blind eye, you might even get away with IL. I'd rather see that than drag in the entire network stack from the Plan 9 kernel. The relevant low-level Linux ethernet device code is in p9p. In fact, you could probably just add a new ether0 protocol directory to devip instead of writing a new devether wrapper driver. Russ
Re: [9fans] 9vx dns funny
> > personally, i feel it would be more useful to be > > able to use plan 9's native network stack. but > > i'm biased. i want to send aoe/cec/il packets. > > > > Part of the reason I have not stopped using lguest, although now I use > both 9vx and lguest. > > You could write a plan 9 device for vx that drives raw frames to linux > I suppose. i was trying to say that was one of two potential ways to go. the question is, which way is 9vx going. or, - is there any reason writing #l for 9vx is not a good idea technically; and - is #l something that might have a chance to become part of 9vx? - erik p.s. wild idea: 9pxevxload.
Re: [9fans] 9vx dns funny
On Sun, Jul 6, 2008 at 8:56 AM, erik quanstrom <[EMAIL PROTECTED]> wrote: > personally, i feel it would be more useful to be > able to use plan 9's native network stack. but > i'm biased. i want to send aoe/cec/il packets. > Part of the reason I have not stopped using lguest, although now I use both 9vx and lguest. You could write a plan 9 device for vx that drives raw frames to linux I suppose. ron
[9fans] 9vx dns funny
here's the symptom ndb/dnsquery 9hal.ath.cx 9hal.ath.cx ip 9.0.0.0 the problem is that devip.c:/^lookuphost tries to avoid calling gethostbyname when given an ip address by testing to see if the return value of v4parseip is nozero. unfortunately, v4parseip parses "9hal.ath.cx" as the ip address 9.0.0.0. here is one tacky solution: ; diff -c devip.c /tmp devip.c:811,817 - /tmp/devip.c:811,816 v4parseip(to, s); ip = nhgetl(to); if(ip != 0) - if(strspn(s, "0123456789.") == strlen(s)) return 0; if((s = hostlookup(s)) == nil) return -1; on a related note, would it be worth while to put effort into supporting ptr queries, ip6 &c using the host's lookup facilities or should that effort be directed into adding bits to enable ndb/dns to run? i guess this gets to a more philosophical question on how 9vx networking relates to the host. personally, i feel it would be more useful to be able to use plan 9's native network stack. but i'm biased. i want to send aoe/cec/il packets. - erik