All of lore.kernel.org
 help / color / mirror / Atom feed
From: Daniel Lakeland <dlakelan@street-artists.org>
To: David Ahern <dsahern@gmail.com>,
	Stephen Hemminger <stephen@networkplumber.org>
Cc: netdev@vger.kernel.org
Subject: Re: BUG REPORT: iproute2 seems to have bug with dsfield/tos in ip-rule and ip-route
Date: Wed, 13 Dec 2017 14:52:43 -0800	[thread overview]
Message-ID: <a745127e-58f6-47e6-7b44-a1b5e028bd2d@street-artists.org> (raw)
In-Reply-To: <224860aa-17a8-37a1-cbfe-66899c1bba94@gmail.com>

On 12/13/2017 02:40 PM, David Ahern wrote:
>
> In fib4_rule_configure, this the check that is failing:
>
>      if (frh->tos & ~IPTOS_TOS_MASK)
>          goto errout;
>
> and EINVAL is returned.
>
> IPv4 routes has not checking on tos -- it is passed from user and
> rtm_tos to fc_tos to fib alias tos.

it seems to me that this IPTOS_TOS_MASK check should be either gotten 
rid of, or equal to 0x03 in modern usage. The bottom 2 bits are ECN and 
I suppose someone might want to route based on congestion... and hence 
maybe the mask should be dropped entirely, but if you refuse to allow 
routes on ECN then you'd want 0x03 as the mask

it seems to me this is left over from before DSCP.

apparently most people don't route on DSCP or work around this with 
firewall marks, and so this doesn't cause trouble enough to have been 
reported before?

I think the follow up question is does anyone have any idea why someone 
who set up routes with dsfield settings is not seeing packets routed? 
The kernel may not handle ip rule with DSCP, but it takes

ip route add default dsfield CS6 dev veth0

just fine... and shows up in the route table, but for example the person 
is not seeing CS6 marked packets going to veth2 and instead is seeing 
them routed to veth0 the default route...

  reply	other threads:[~2017-12-13 22:52 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-12-13 17:40 BUG REPORT: iproute2 seems to have bug with dsfield/tos in ip-rule and ip-route Daniel Lakeland
2017-12-13 18:12 ` Stephen Hemminger
2017-12-13 18:33   ` Daniel Lakeland
2017-12-13 19:05   ` Daniel Lakeland
2017-12-13 22:40     ` David Ahern
2017-12-13 22:52       ` Daniel Lakeland [this message]
2017-12-13 23:05         ` David Ahern

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

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

  git send-email \
    --in-reply-to=a745127e-58f6-47e6-7b44-a1b5e028bd2d@street-artists.org \
    --to=dlakelan@street-artists.org \
    --cc=dsahern@gmail.com \
    --cc=netdev@vger.kernel.org \
    --cc=stephen@networkplumber.org \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.