[Cerowrt-devel] 6relayd

Dave Taht dave.taht at gmail.com
Sun Jan 5 22:15:20 EST 2014


On Sun, Jan 5, 2014 at 4:42 PM, Matt Mathis <mattmathis at google.com> wrote:
> Background: some time earlier this year Comcast started allocating IPv6
> addresses, and everything magically all worked (I know that real magic
> requires wizards to work very hard behind the scenes.)

We'd got it up and running in comcast's lab in feburary or so.

> I was running the WNDR 3700, that we flashed at your (Dave's) place this
> summer (3.10.7-1).
>
> Sometime during the holidays IPv6 stopped working.  I didn't notice it
> immediately, so I don't know if there should have been any obvious triggers.
> Note that both Comcast and my remotely managed clients (Android, etc)
> probably received updates in this window.  LuCI status->overview indicates a
> /128 on the upstream interface but no /60 or /64 (although I now see that
> even with a global address block, this pages does not show it).  From the
> router I can ping6 out.
>
> I have a spare 3700, which is now freshly flashed with cerowrt 3.10.24 #1
> Tue Dec 24 10:50:15 PST 2013.  I installed the 6relay fix on it.
> My config is 100% vanilla except for SSIDs, pw's and the 6relay fix.
>
> Still no joy for my home devices (both WiFi and wired), however now ifconfig
> on the 3700 reports /64 subnets on all of its interfaces (and they appear in
> LuCi networks but not the status overview).
>
> 6relay does not seem to actually start anything, and odhcp6c is running,
> which feels a bit odd.  Is this correct?

odhcp6c is the client that makes the dhcpv6-pd request.

Hmm. if you uncomment everything in /etc/dnsmasq.conf and restart
dnsmasq what happens? If you have got /64s you would end up doing
slaac and ra announcements via dnsmasq in this case.

That was on by default before (and what was tested in feburary). Later
on 6relayd started having a race with it and seemed to be "the
future", so I disabled the dnsmasq version, thinking that 6relayd was
the answer. It's entirely possible that's
merely configured wrong.

> Can you point me to the relevant RFCs?  Actually an overview of IPv6 address
> and router discovery would be most useful.  The IPv6 versions of dhcp, arp,
> etc.

That's a rather large list.

> I need IPv6 at home for some other unrelated server side debugging...
>
> Thanks,
> --MM--
> The best way to predict the future is to create it.  - Alan Kay
>
> Privacy matters!  We know from recent events that people are using our
> services to speak in defiance of unjust governments.   We treat privacy and
> security as matters of life and death, because for some users, they are.
>
>
> On Sat, Jan 4, 2014 at 1:30 AM, Steven Barth <cyrus at openwrt.org> wrote:
>>
>> On 03.01.2014 19:43, Dave Taht wrote:
>>>
>>>
>>> I was also experiencing a race condition with dnsmasq, while I had it
>>> enabling
>>> ra and dhcpv6 via dnsmasq. At the moment that's turned off by default,
>>> but
>>> I did rather prefer having dns names for my ipv6 addresses...
>>
>> Well 6relayd and odhcpd collect hostnames of clients acquired via stateful
>> DHCPv6 and export them to dnsmasq in an additional hostfiles. At least that
>> seemed to work when I last tried it a few months ago. The only disadvantage
>> is that there is no "ra-names" feature there.
>>
>>
>>>
>>> is there a good way for 6relayd and dnsmasq-dhcpv6 to co-exist?
>>
>> Ideally they could coexist in a way that you could select dnsmasq and / or
>> odhcpd for different interfaces on the same machine. odhcpd supports that
>> but dnsmasq the last time I've looked seemed to use a single socket binding
>> to all interfaces for DHCP/v6 which prevents coexistance from working
>> correctly because odhcpd / 6relayd can't bind the socket after dnsmasq did
>> and vice versa.
>>
>>
>>>
>>>> Feel free to provide me with some debugging information of the system
>>>> while
>>>> PD fails for you so I can have a look at the probable cause:
>>>>
>>>> * "ifstatus ge00" (replace ge00 with your IPv6 upstream interface)
>>>> * "ip addr list dev ge01" (replace ge01 with the interface your
>>>> downstream
>>>> router is connected)
>>>> * "ps | grep 6relayd"
>>>>
>>>> Anyway I will migrate all the stuff to odhcpd soon (it's successor which
>>>> shares a good part of the codebase but is a bit better integrated with
>>>> the
>>>> rest of the environment).
>>>
>>> same question re dnsmasq.
>>
>> Yeah as pointed out coexistence is a matter of binding sockets. odhcpd
>> will bring the functionality of dynamically enabling / disabling DHCPv4/v6
>> on interfaces without restarting the daemon and loosing state. This is one
>> of the main reasons for the change and very much eases things for high-level
>> protocols that do dynamic wan/lan detection.
>>
>>
>> Cheers,
>>
>> Steven
>>
>>
>>
>>>
>>>>
>>>> Regards,
>>>>
>>>> Steven
>>>>
>>>>
>>>>
>>>> On 03.01.2014 18:31, Dave Taht wrote:
>>>>>
>>>>> On Fri, Jan 3, 2014 at 11:50 AM, cb.list6 <cb.list6 at gmail.com> wrote:
>>>>>>
>>>>>>
>>>>>>
>>>>>> On Fri, Jan 3, 2014 at 8:40 AM, Dave Taht <dave.taht at gmail.com> wrote:
>>>>>>>
>>>>>>> At one level I am happy to figure out this is a recently introduced
>>>>>>> bug.
>>>>>>>
>>>>>>> On the other hand I am not sure if it is 6relayd.
>>>>>>>
>>>>>>> What version of cero was working for you?
>>>>>>
>>>>>>
>>>>>> I am not entirely sure, but i think it was from September.
>>>>>>
>>>>>> CB
>>>>>
>>>>> At the moment I lack the ability to debug the breakage in ipv6 dhcp-pd
>>>>> (which is odhcpd) (I am travelling).
>>>>>
>>>>> I will on my next stop next week (tuesday) setup a dhcpv6pd server and
>>>>> see what I can see.
>>>>>
>>>>>>> On Jan 3, 2014 12:21 AM, "cb.list6" <cb.list6 at gmail.com> wrote:
>>>>>>>>
>>>>>>>> Hi,
>>>>>>>>
>>>>>>>> I have been using CeroWRT on Comcast with a 3800 for about 6 month.
>>>>>>>> The
>>>>>>>> DHCP-PD config has always been a little unstable for me, but
>>>>>>>> working.
>>>>>>>>
>>>>>>>> I recently upgraded to:
>>>>>>>>
>>>>>>>>    root at cerowrt:/etc/config# uname -a
>>>>>>>> Linux cerowrt 3.10.24 #1 Tue Dec 24 10:50:15 PST 2013 mips GNU/Linux
>>>>>>>>
>>>>>>>> My WAN gets a /128, but i cannot get DHCP-PD to work to get
>>>>>>>> addresses
>>>>>>>> on
>>>>>>>> the rest of my interfaces.  The router does seem to have good IPv6
>>>>>>>> access.
>>>>>>>>
>>>>>>>>
>>>>>>>> I fiddled with the 6relayd config and came up with this, but it does
>>>>>>>> not
>>>>>>>> work.  Any pointers on how to get this back on track?  The result of
>>>>>>>> the
>>>>>>>> below config is that the /128 from the WAN interfaces is now present
>>>>>>>> on
>>>>>>>> all
>>>>>>>> the interfaces but my attached computers get no addresses.
>>>>>>>>
>>>>>>>>
>>>>>>>> config server 'default'
>>>>>>>>           option rd 'server'
>>>>>>>>           option dhcpv6 'server'
>>>>>>>>           option management_level '1'
>>>>>>>>           list network 'ge01'
>>>>>>>>           list network 'gw00'
>>>>>>>>           list network 'gw01'
>>>>>>>>           list network 'gw10'
>>>>>>>>           list network 'gw11'
>>>>>>>>           list network 'se00'
>>>>>>>>           list network 'sw00'
>>>>>>>>           list network 'sw10'
>>>>>>>>           option fallback_relay 'rd dhcpv6 ndp'
>>>>>>>>           option master 'ge00'
>>>>>>>>
>>>>>>>> root at cerowrt:/etc/config# uname -a
>>>>>>>>
>>>>>>>> _______________________________________________
>>>>>>>> Cerowrt-devel mailing list
>>>>>>>> Cerowrt-devel at lists.bufferbloat.net
>>>>>>>> https://lists.bufferbloat.net/listinfo/cerowrt-devel
>>>>>>>>
>>>>>
>>>
>>>
>>
>



-- 
Dave Täht

Fixing bufferbloat with cerowrt: http://www.teklibre.com/cerowrt/subscribe.html



More information about the Cerowrt-devel mailing list