> 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


Reply via email to