Hello!
(sorry for my garbage english)
I have a native IPv6 connectivity, but it has some flaws. I wonder there
is a better solution, what i did is more like a hack.
(IPv6 addresses presented here are imaginary)
Using the command ip (iproute2) for configuring.
My ISP own the address space 1234::/16
I own the address space 1234:100::/32
My ISP gave me the extra address 1234:0:ffff:100::2 (lower than my
address space) from their address space, and using 1234:0:ffff:100::1 as
gateway. This subnet is only /126 large. My ISP forbids to use this
extra IP for global purposes, it's only for routing, they even firewall
it out, when i try let's say ping6 ipv6.google.com with that address.
eth0 has global address 1234:0:ffff:100::2
Default gateway is 1234:0:ffff:100::1
eth1 has global address 1234:100::1
Computers behind eth1 using 1234:100::1 as default gateway, their
connectivity is fine.
And here started my problem, on the gateway i would like to maintain a
service, eg. NTP.
programs picks up the address 1234:0:ffff:100::2 so they won't reach
their destination.
So i added the ip 1234:100::1 to eth0 too (noticed that programs picks
up the last added IP address mostly), and then removed the subnet
routing rule to prevent the comp to search hosts belonging that subnet
over eth0. This (while i think this is a hack) works with most of the
programs, like ping6, links, bind, nc ...
But programs like ntpd found out 1234:100::1 is on eth1,
1234:0:ffff:100::2 is on eth0, and no way to tell how to use the
addresses...
With IPv4 i could easily solve this problem with iptables nat table, but
since IPv6 doesn't have that, i wonder what is the proper solution to this.
Someone has an idea or solution?
I was thinking on different things, i know the kernel can hold multiple
routing tables, so:
If it would use a different comp, only for routing (no other services),
it would be the easiest solution. I could even do it over a xen domU,
but i would call it quite an overhead to launch a whole kernel just to
route over. Can't the linux kernel do a hook like this inside itself
with advanced routing? (like hide eth0 and a dummy interface, and make a
virtual routing over it)
Using xen patched kernel 2.6.18.
Zoltán Halassy
--
To unsubscribe from this list: send the line "unsubscribe linux-net" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html