Development issues regarding the cerowrt test router project
 help / color / mirror / Atom feed
From: Sebastian Moeller <moeller0@gmx.de>
To: "Toke Høiland-Jørgensen" <toke@toke.dk>
Cc: cerowrt-devel@lists.bufferbloat.net
Subject: Re: [Cerowrt-devel] cerowrt-3.10.32-12 released
Date: Sat, 22 Mar 2014 20:23:59 +0100	[thread overview]
Message-ID: <6D237658-E6E9-4985-AAFD-8A87256E1D77@gmx.de> (raw)
In-Reply-To: <87eh1utrqu.fsf@alrua-x1.karlstad.toke.dk>

Hi Toke,

On Mar 22, 2014, at 12:08 , Toke Høiland-Jørgensen <toke@toke.dk> wrote:

> Sebastian Moeller <moeller0@gmx.de> writes:
> 
>> I have a question about the reasoning behind the whole thing though. I
>> can see that not permitting source addresses that do not belong to
>> cerowrt's subnets makes a ton of sense. But what precisely is the
>> reasoning to not route the private addresses?
> 
> Well, for IPv6, not permitting valid source addresses is exactly how
> this is implemented -- by having source-based routing for the assigned
> prefixes (I suppose you could do a similar private address blocking
> thing for IPv6, but I punted on that for now; and don't think it's as
> important). However, for IPv4 the question of "which addresses are
> valid" becomes harder to answer in anything but the simple case of "one
> network behind the router". I.e. for mesh networks etc.
> 
> At the same time, in general, egress traffic from the home network could
> conceivably go anywhere, so blocking on destination is not viable
> either. Except, basically, for the networks being blocked by the current
> implementation; these are all defined by various RFCs (most well-known
> probably RFC1918) to be invalid on the internet, and so can be safely
> dropped. And since all sorts of equipment probe the default addresses
> (think users on a new net trying to find their home gateway at
> 192.168.1.1, devices that think they are on a VPN but are really not,
> etc), so packets leaking onto the internet can be quite common, and they
> can go a surprisingly long way before being dropped, I'm told.

	Ah, thanks for the information.

> 
>> Or, asked differently, what harm does it to route those except wasting
>> a bit of bandwidth; but since the src is correct it will be relatively
>> easy to pinpoint malicious sources that way?
> 
> Well, a DDOS is just a lot of people "wasting a bit of bandwidth"... ;)

	I had not looked at it from that perspective, makes a lot of sense...

> 
> Really, though, BCP38 (which, btw, is a Best Current Practice document
> From the IETF: http://tools.ietf.org/html/bcp38) should be implemented
> by ISPs to be really effective in DOS mitigation. I think implementing
> it in cerowrt (apart from the "be secure by default" goal) is to
> demonstrate that it's possible to do a workable solution (trough ipsets)
> that doesn't involve traversing a bunch of slow firewall rules, and so
> doesn't impact performance noticeably. You know, the old clue-bat ;)
> 
> 
>> The point I wanted to make is that following
>> http://wiki.openwrt.org/doc/howto/access.modem.through.nat is a bit
>> more involved than what should be required from the typical home user.
> 
> Yeah, I can see that. It would probably be possible to do some
> autodetection (perhaps by crowdsourcing a database of likely modem
> addresses), but I fear the implementation would be annoyingly complex.
> In the perfect world, you could just arping each of the addresses and
> see if they reply, but I have this nagging feeling that the kind of
> equipment we want to talk to will do things like refuse to reply to ARP
> unless the request comes from within its own (probably hard-coded)
> subnet. In which case we would have to assign a bunch of addresses on
> the upstream interface to do the probing, then remove them again,
> leaving to all sorts of annoying potential failure modes... :(
> 
>> Your implementation is so straight forward I could talk my siblings
>> though over the phone, so it passes my ad-hoc tests for viability in
>> the real world ;)
> 
> Haha, great! Sometimes I think someone should write up a formal document
> on the "non-technical family member" test...
> 
>> So on several other pages (like
>> https://gw.home.lan:81/cgi-bin/luci/;stok=e2041363b170e62aa756a4ee3e525f72/admin/network/hosts)
>> the GUI is used slightly different, there is one fixed add button and
>> each entry always comes with its own delete button. I have not looked
>> at the luci code for that though.
> 
> Well I didn't do a lot of research on luci primitives for this, but did
> come across that one. That widget is a different one that mirrors a
> different configuration primitive (adding config *sections* rather than
> a list of config *entries*). I don't *think* there's a better widget for
> the lists, but would be happy to be proved wrong :)

	I thought a bit about this, and I think there might be a way to use the available widgets in a way that emulates consistency ;) (well at least in theory)
If the first entry would not hog the singleton entry field with the add button, but would spawn a new empty field with an add button, while the just entered (and saved & applied) entry would be followed by the delete button, he whole thing would be consistent enough to not confuse the user. I will see whether I can implement that in the luci code.

Best Regards
	Sebastian

> 
> -Toke


  parent reply	other threads:[~2014-03-22 19:24 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-03-21 17:47 Dave Taht
2014-03-21 18:51 ` Toke Høiland-Jørgensen
2014-03-21 22:00 ` Sebastian Moeller
2014-03-21 22:53   ` Toke Høiland-Jørgensen
2014-03-21 23:04     ` Sebastian Moeller
2014-03-21 23:26       ` Toke Høiland-Jørgensen
     [not found]         ` <608F3E46-3D81-48A3-B60C-E90661DD3AB2@gmx.de>
2014-03-22 11:08           ` Toke Høiland-Jørgensen
2014-03-22 17:09             ` Dave Taht
2014-03-22 18:18               ` Toke Høiland-Jørgensen
2014-03-22 20:20               ` Sebastian Moeller
2014-03-22 19:23             ` Sebastian Moeller [this message]
2014-03-22 19:36               ` Toke Høiland-Jørgensen
2014-03-22 20:24                 ` Sebastian Moeller
2014-03-24  0:56 ` Valdis.Kletnieks
2014-03-24 14:35   ` Jim Reisert AD1C
2014-03-26  4:37     ` Kai Yang
2014-03-24 16:32 ` [Cerowrt-devel] upnp oddness (was " Valdis.Kletnieks

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://lists.bufferbloat.net/postorius/lists/cerowrt-devel.lists.bufferbloat.net/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=6D237658-E6E9-4985-AAFD-8A87256E1D77@gmx.de \
    --to=moeller0@gmx.de \
    --cc=cerowrt-devel@lists.bufferbloat.net \
    --cc=toke@toke.dk \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox