[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <cf099564-2b3c-e525-82cd-2d8065ba7fb3@gmail.com>
Date: Fri, 14 Apr 2023 18:12:06 +0200
From: Lars Ekman <uablrek@...il.com>
To: Stephen Hemminger <stephen@...workplumber.org>
Cc: netdev@...r.kernel.org
Subject: Re: iproute2 bug in json output for encap
Hi,
Thanks for the reply. You are right, it is jq that eats one ot the
double "dst" items.
vm-002 ~ # ip -j -p route show proto 5
[ {
"dst": "192.168.11.0/24",
"encap": "ip6",
"id": 0,
"src": "::",
"dst": "fd00::c0a8:2dd",
"hoplimit": 0,
"tc": 0,
"dev": "dummy0",
"scope": "link",
"flags": [ ]
} ]
vm-002 ~ # ip -j -p route show proto 5 | jq
[
{
"dst": "fd00::c0a8:2dd",
"encap": "ip6",
"id": 0,
"src": "::",
"hoplimit": 0,
"tc": 0,
"dev": "dummy0",
"scope": "link",
"flags": []
}
]
Sorry for the fuss.
Best Regards,
Lars Ekman
And btw I did upgrade *before* posting :-)
vm-002 ~ # ip -V
ip utility, iproute2-6.2.0, libbpf 1.1.0
vm-002 ~ # uname -r
6.2.7
On 2023-04-14 17:21, Stephen Hemminger wrote:
> On Fri, 14 Apr 2023 10:29:15 +0200
> Lars Ekman <uablrek@...il.com> wrote:
>
>> The destination is lost in json printout and replaced by the encap
>> destination. The destination can even be ipv6 for an ipv4 route.
>>
>> Example:
>>
>> vm-002 ~ # ip route add 10.0.0.0/24 proto 5 dev ip6tnl6 encap ip6 dst
>> fd00::192.168.2.221
>> vm-002 ~ # ip route show proto 5
>> 10.0.0.0/24 encap ip6 id 0 src :: dst fd00::c0a8:2dd hoplimit 0 tc 0
>> dev ip6tnl6 scope link
>> vm-002 ~ # ip -j route show proto 5 | jq
>> [
>> {
>> "dst": "fd00::c0a8:2dd",
>> "encap": "ip6",
>> "id": 0,
>> "src": "::",
>> "hoplimit": 0,
>> "tc": 0,
>> "dev": "ip6tnl6",
>> "scope": "link",
>> "flags": []
>> }
>> ]
>>
> Both JSON and regular output show the same address which is coming from
> the kernel. I.e not a JSON problem. Also, you don't need to use jq
> ip has -p flag to pretty print.
>
> I can not reproduce this with current kernel and iproute2.
> # ip route add 192.168.11.0/24 proto 5 dev dummy0 encap ip6 dst fd00::192.168.2.221
>
> # ip route show proto 5
> 192.168.11.0/24 encap ip6 id 0 src :: dst fd00::c0a8:2dd hoplimit 0 tc 0 dev dummy0 scope link
>
> # ip -j -p route show proto 5
> [ {
> "dst": "192.168.11.0/24",
> "encap": "ip6",
> "id": 0,
> "src": "::",
> "dst": "fd00::c0a8:2dd",
> "hoplimit": 0,
> "tc": 0,
> "dev": "dummy0",
> "scope": "link",
> "flags": [ ]
> } ]
>
>
> # ip -V
> ip utility, iproute2-6.1.0, libbpf 1.1.0
> # uname -r
> 6.1.0-7-amd64
>
>
Powered by blists - more mailing lists