Subject: ipf, ipv6 & arp questions
To: None <tech-net@netbsd.org>
From: Tomi Nylund <wizard@oulu.invalid>
List: tech-net
Date: 10/16/2001 01:44:54
Hello all,
first of all, sorry for a longish mail.
I'm building a proxy-arp'ed subnet for some of our machines
in our university. Our setup looks like this:
------Router------
[subnet 1 192.168.0.0/16]
-----proxy-arp & firewall-----
[subnet 2 192.168.30.128/28]
--------------------------------
There is a bigger network 192.168/16, and a small portion of
it proxy-arped behind my gw at 192.168.30.128/28.
This is in order to be able to test ipv6 & other stuff inside the
"sandbox" without disrupting the rest of the LAN,
in case something goes wrong.
To answer the first two questions straightaway: no, the /16 cannot
be subnetted into smaller parts, and no, there is no possibility
of getting a direct route from Router to my subnet. So I'm stuck
with proxy-arp.
I am running NetBSD 1.5.2/sparc.
Now, I read the archives, did some homework and managed to get the
system up and running. However, two problems are still unresolved:
1) In order to use ipv6, I must enable ipv6 on the kernel. However,
ipfilter does not filter it at all (see PR# 13178. Should
this be finally documented in 1.5.3?).
2) How do I compile a more recent ipfilter into the kernel, with
ipv6 support enabled, either
as a module, or directly into kernel? For example, ipf 3.4.20
distribution's compilation instructions are a bit outdated, at
least for a stupid bofh like me ;) I tried the BSD/kupgrade as
instructed on some mail, actually managed to
compile something but it did not work ( ipfstat -io segfaulted after
inserting some rules). Same thing with make netbsd & bsd-install.
Also, it would be nice if it did not by default overwrite your
good & working /sbin/ipf etc. ;)
Are there any howto's, or would someone throw some instructions
to the mailing list?
3) I publish arp entries for the /28 using arp -f <filename> like this:
inside the file:
ipv6ws1 00:00:c0:de:84:56
ipv6ws1 08:00:20:58:e5:2e pub
I have two arp entries: first is the real one, for the machine
to be proxyed, and the second is for the proxy arp to work correctly
(gw's MAC address). I tried arpd from pkgsrc,
but it just ate all cpu, didn't work as supposed, so I stayed
with the normal "arp" command.
Now, the problems start when a windows machine
on the inside boots up, and sends an arp query for it's own ip
address, and my gateway replies to it. According to docs, this
should not happen, but it happens. There's a bug regarding this
on database, PR# 10482. Based on my experiments, it's still
unresolved, or I've been doing something terribly wrong.
So, my questions again in brief:
1) How to compile a kernel with ipv6-capable ipfilter?
2) How to publish arp info correctly, so that my gateway does
not answer to arp queries from inside the subnet, only to the
outside?
Thanks for any answers!
Tomi