Re: ping -6 ignores -e parameter

From: KOT MATPOCKuH <matpockuh_at_gmail.com>
Date: Sun, 19 Dec 2021 21:55:19 UTC
Hello!

I downloaded a daily snapshot VM from:
https://download.freebsd.org/ftp/snapshots/VM-IMAGES/13.0-STABLE/amd64/20211216/FreeBSD-13.0-STABLE-amd64-20211216-defb7da9772-248589.raw.xz

root@freebsd:~ # uname -a
FreeBSD freebsd 13.0-STABLE FreeBSD 13.0-STABLE #0
stable/13-n248589-defb7da9772: Thu Dec 16 02:33:55 UTC 2021
root@releng3.nyi.freebsd.org:/usr/obj/usr/src/amd64.amd64/sys/GENERIC  amd64

It's 3 days later than 13th Dec.
I checked on this VM and got the same behavior.
Also I registered a bug:
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=260474

There You can find steps to reproduce this problem.

Also can You assign this report to a proper responsible?


сб, 18 дек. 2021 г. в 04:16, Kubilay Kocak <koobs@freebsd.org>:

> On 16/12/2021 9:30 pm, KOT MATPOCKuH wrote:
> > Hello, Alan!
> >
> > I'm sorry, I'm forget to add freebsd-stable@ to CC: list.
> >
> > Yes, I'm using FreeBSD 13:
> > 13.0-STABLE
> >
> > Today I have a native IPv6 access and my inet6 routing table is:
> > # netstat -rn6 | grep -v -e lo0
> > Routing tables
> >
> > Internet6:
> > Destination                       Gateway                       Flags
> > Netif Expire
> > default                           fe80::206:29ff:fee9:32a9%lan0 UG
> lan0
> > fd00:dead:beef:100::/64           link#5                        U    lan0
> > fe80::%lan0/64                    link#5                        U    lan0
> > fe80::%bridge0/64                 link#6                        U bridge0
> >
> > This means my default gateway is reachable via lan0.
> > A node which link-local address fe80::2a0:98ff:fe1d:e270 is reachable
> > via bridge0:
> > # ping -c 1 fe80::2a0:98ff:fe1d:e270%bridge0
> > PING6(56=40+8+8 bytes) fe80::5a9c:fcff:fe10:ff9e%bridge0 -->
> > fe80::2a0:98ff:fe1d:e270%bridge0
> > 16 bytes from fe80::2a0:98ff:fe1d:e270%bridge0, icmp_seq=0 hlim=64
> > time=0.804 ms
> >
> > But ping anyway sends packets via lan0.
> > Also I tried to configure fd13:dead:beef::2 on bridge0, on corresponding
> > node I configured fd13:dead:beef::1, and then run a command:
> > ping -6 -e fd13:dead:beef::1 google.com
> >
> > In this way ping uses source IP address from bridge0 interface, but
> > sends via lan0 and to next-hop fe80::206:29ff:fee9:32a9%lan0:
> > # tcpdump -epni lan0 icmp6
> > 12:33:23.308763 8c:ec:4b:e9:28:23 > 00:06:29:e9:32:a9, ethertype IPv6
> > (0x86dd), length 70: fd13:dead:beef::2 > 2a00:1450:4010:c1e::8a: ICMP6,
> > echo request, seq 52, length 16
> >
> > I'm wrote a simple script to check this problem. I checked this script
> > on image of VM from freebsd'site which FreeBSD-13.
> > Please see attached file.
> >
> > On 15/12/2021 21:32, Alan Somers wrote:
> >> On Wed, Dec 15, 2021 at 11:16 AM KOT MATPOCKuH <matpockuh@gmail.com>
> >> wrote:
> >>>
> >>> Hello!
> >>>
> >>> In a man page for ping(8) and in it's help output I found option "-e":
> >>>       -e gateway
> >>>               Specifies to use gateway as the next hop to the
> >>> destination.  The
> >>>               gateway must be a neighbor of the sending node.
> >>>
> >>> I tried to use this argument, ping ignores this parameter and sends
> >>> the packet via default gateway.
> >>> For example I have a tun0 which has ipv6 default gw, and an
> >>> established bridge0 which has available some LL addresses:
> >>> Neighbor                             Linklayer Address  Netif
> >>> Expire    S Flags
> >>> fe80::2a0:98ff:fe1d:e270%bridge0     00:a0:98:1d:e2:70 bridge0
> >>> 23h56m34s S R
> >>>
> >>> I tried to run:
> >>> ping -6 -e FE80::2A0:98FF:FE1D:E270%bridge0 google.com
> >>> But the packet was sent via tun0 interface.
> >>>
> >>> What is wrong with it?
> >>>
> >>> --
> >>> MATPOCKuH
> >>
> >> What version of FreeBSD are you using?  There was a major change to
> >> ping's code in FreeBSD 13.  Please show the output of
> >> 'freebsd-version' and 'netstat -rn'.
> >> -Alan
> >>
> >
>
> Potentially relevant issue issue who's stable/13 merge landed 2021-12-13:
>
>    https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=258048
>
> Is your uname -a version prior to or after this date?
>
> If after, can you test reverting this revision?
>


-- 
MATPOCKuH