Hello,
Am 15.03.2011 um 16:15 schrieb Linus Lüssing:
On Mon, Mar 14, 2011 at 01:39:51PM +0100, Jan Lühr wrote:
We're up to deploy batman-adv in an wireless mesh network with multiple routers / gateways providing access to the outside world. Furthermore deploying an IPv4 / v6 dual stack networking is one goals we're trying to archive. We stumbled up on batman-adv and its gateway feature, which looks quite promising. (http://www.open-mesh.org/wiki/batman-adv-gateways) However, since dhcp is used for implementing batman-adv gateways, this feature doesn't affect IPv6 ND / icmp6 - am I right?
Yes, that's right, the gateway feature only applies for DHCPv4/6. And IPv6 ND / icmp6 is not being touched at all. Like ARP needs to be done for IPv4, also still IPv6 needs to do IPv6 ND with all hosts.
Also the IPv6 Router Advertisements, which I guess you were indirectly refering to with the icmp6, are untouched, they are still being flooded through the mesh. There were some ideas on how a batman-adv gateway optimization could look like for that, based on RFC4191, Router Preference, but some tests showed that the Router Preference in Linux was not working as expected: http://comments.gmane.org/gmane.linux.ipv6.usagi.users/2242
But do you actually need that, is there a difficulty with using DHCPv6 in your use-case?
Having this in mind, what do you think is a suitable deployment strategy for IPv6 in batman-adv networks? Of course, assigning a single /64 to the mesh-cloud is a simple option, but icmp6 flooding might occur ...
As said previously, IPv6 ND will be needed anyway, so there's ICMP flooding anyway. However that's rather low bandwidth traffic and doesn't happen that frequently.
Could you describe your use-case a little further? So far no one has noticed any constraints with that in practical setups, afaik.
Thanks for you reply - I'm even not sure about our "use"-case. We're currently discussing options on running an batman-adv in a freifunk-style network, using global IPv6 adresses. My concern is, that using batman-adv has the achilles heel of creating a single collision domain, that'll cause scaling issues.
By that, seperating the mesh into different collision domains (using multiple /64 for exmaple) is an option - however, I'm still looking for a practical approach to do so. For instance: If we deploy a bunch of ipv6 routers to our cloud, we have to make sure, that IPv6 autoconfiguration will use the address-space of a nearby router. If we'd connect all /64-Annoucing Routers via batman-adv, clients will get multiple /64 Addresses by that routers.
So each node must be smart on what icmp6-messages have to be forwareded ... However - this is quite vague and we're looking for a feasible routing strategy.
Thanks, Jan