Well, I'm not an expert on all the details, but I imagine we'd generate them randomly during makenode (or whenever). Then routes to addresses would be propagated by babel in the same way that ipv4 addresses are now. I'm not sure if the exit server would need an ipv6 address or if it would be good to switch existing nodes over.

-Jehan

On Thu, Apr 27, 2017 at 7:50 PM, Mitar <mitar@tnode.com> wrote:
Hi!

I was asking for the "IPv6 randomly generated link-local
addresses" idea. How would that route?


Mitar

>> And how would you route that over L3 network?
>
> Off the top of my head:
>
> - Packet headed somewhere on the internet with an ipv4 address comes from a
> client device to the home node.
> - Home node pops that packet into an ipv6 packet bearing the ipv6 address
> of the exit server which is then routed over the mesh network
> - Exit server takes the ipv4 packet out and does NAT on it (switches the
> source address to public IP) and sends it out to the internet.
> - Response from internet comes back to exit server, the exit server does
> NAT again (switches the destination address to private IP)
> - Exit server puts the packet into an ipv6 packet with the ipv6 address of
> the home node and sends it onto the mesh (it needs to have kept track of
> the ipv6 address)
> - Home node receives the ipv6 packet, takes the ipv4 packet out and sends
> it to the client.
>
> I'm not an expert, so there might be some issues with this. Here's an RFC
> which might be similar:
>
> https://tools.ietf.org/html/rfc7040
>
> On Thu, Apr 27, 2017 at 1:28 PM, Marc Juul <juul@labitat.dk> wrote:
>
>>
>>
>> On Thu, Apr 27, 2017 at 1:22 PM, Mitar <mitar@tnode.com> wrote:
>>
>>> Hi!
>>>
>>>> IMO, we should put everything on ipv6 randomly generated link-local
>>>> addresses to avoid the whole makenode centralized IP assignment
>>> business.
>>>
>>> And how would you route that over L3 network?
>>>
>>> It would work over L2 Batman network. But not over L3.
>>>
>>> Have you looked into AHCP:
>>>
>>> https://www.irif.fr/~jch/software/ahcp/
>>
>>
>> Ssssh! Why did you have to tell them about AHCP?
>>
>> ... *OBLIVIATE!*
>>
>> --
>> marc/juul
>>
>