Re: Erratic ping behavior, was Re: Pi3 answers ssh only if outbound ping is running on -current

From: Mark Millard <marklmi_at_yahoo.com>
Date: Thu, 28 Apr 2022 05:42:57 UTC
On 2022-Apr-27, at 22:04, Mark Millard <marklmi@yahoo.com> wrote:

> On 2022-Apr-27, at 19:32, bob prohaska <fbsd@www.zefox.net> wrote:
> 
>> On Sun, Mar 13, 2022 at 09:45:02PM -0700, Mark Millard wrote:
>>> 
>>> A point of testing is to compare/contrast different contexts
>>> instead of guessing about the alternatives. If the test
>>> that I proposed showed the failure, it would disprove your
>>> hypothesis --and it that happened it would be good to know.
>>> 
>> 
>> You're correct, as usual....
>> 
>> I just tried booting the 13.1-RC4 candidate on my Pi3 from
>> microSD. It exhibits the same strange "no response to inbound
>> ping" as before. It does seem to set time successfully using
>> ntp, and outbound ping works fine. 
>> 
>> Inbound ping from both the same (public) network and across
>> a NAT link from my LAN work very poorly. The NAT'd link shows 
>> 92% packet loss, the direct link around 88% loss. 
>> 
>> The USB devices present are an FTDI232 and an ASMT usb-sata
>> bridge, neither is in active use. 
>> 
>> Inbound ssh connections time out, even with outbound ping 
>> running and getting answers. Not even a password prompt.
>> 
>> It's hard to believe I'm the only one seeing this......
> 
> RPi3B? RPi3B+? Which Rev?
> 
> So, if I gather correctly, if I expand:
> 
> FreeBSD-13.1-RC4-arm64-aarch64-RPI.img.xz
> 
> onto an microsd card, boot an RPi3B with
> EtherNet plugged in, and test pinging to
> it, I will have replicated your context
> except for, possibly:
> 
> A) RPi3B exact Model/Revision
> B) presence of a FTDI232 plugged into a USB2 port
> C) presence of a ASMT usb-sata bridge plugged into
>   a USB2 port (no drive?)
> D) the details of the EtherNet network that I'd
>   being using. (No public network or NAT in
>   the path between machines [same local subnet,
>   no other local subnets present], just a simple
>   local switch, the cables, the RPi3B, whatever
>   other computer(s) I use, and the device that
>   provides DHCP assignments for the network.)
> 
> If true, I can try such. But to get to a matching
> test, you would have to deal with eliminating
> (B-C) from the context and setting up something
> like (D) as the networking context. (Seems more
> reasonable than me trying to replicate your
> public network/NAT context.)
> 
> Note: I would normally have a serial port connected
> to the proper pins for having a boot console. Once
> I prove I have correctly set up/booting microsd card
> media context, I could eliminate that. (The other
> end is USB but that is not what the RPi3B is connected
> to.)
> 

Well, booting it and not even logging in to it,
pinging it from the Rock64, where I am logged in:

# ping 192.168.1.143
PING 192.168.1.143 (192.168.1.143): 56 data bytes
64 bytes from 192.168.1.143: icmp_seq=0 ttl=64 time=1.223 ms
64 bytes from 192.168.1.143: icmp_seq=1 ttl=64 time=0.575 ms
64 bytes from 192.168.1.143: icmp_seq=2 ttl=64 time=0.552 ms
64 bytes from 192.168.1.143: icmp_seq=3 ttl=64 time=0.663 ms
64 bytes from 192.168.1.143: icmp_seq=4 ttl=64 time=0.536 ms
64 bytes from 192.168.1.143: icmp_seq=5 ttl=64 time=0.539 ms
64 bytes from 192.168.1.143: icmp_seq=6 ttl=64 time=0.529 ms
64 bytes from 192.168.1.143: icmp_seq=7 ttl=64 time=0.641 ms
64 bytes from 192.168.1.143: icmp_seq=8 ttl=64 time=0.610 ms
64 bytes from 192.168.1.143: icmp_seq=9 ttl=64 time=0.635 ms
64 bytes from 192.168.1.143: icmp_seq=10 ttl=64 time=0.617 ms
64 bytes from 192.168.1.143: icmp_seq=11 ttl=64 time=0.618 ms
64 bytes from 192.168.1.143: icmp_seq=12 ttl=64 time=0.652 ms
64 bytes from 192.168.1.143: icmp_seq=13 ttl=64 time=0.605 ms
64 bytes from 192.168.1.143: icmp_seq=14 ttl=64 time=0.730 ms
64 bytes from 192.168.1.143: icmp_seq=15 ttl=64 time=1.319 ms
64 bytes from 192.168.1.143: icmp_seq=16 ttl=64 time=0.618 ms
64 bytes from 192.168.1.143: icmp_seq=17 ttl=64 time=0.567 ms
64 bytes from 192.168.1.143: icmp_seq=18 ttl=64 time=0.563 ms
64 bytes from 192.168.1.143: icmp_seq=19 ttl=64 time=0.560 ms
64 bytes from 192.168.1.143: icmp_seq=20 ttl=64 time=0.556 ms
64 bytes from 192.168.1.143: icmp_seq=21 ttl=64 time=0.624 ms
64 bytes from 192.168.1.143: icmp_seq=22 ttl=64 time=0.530 ms
64 bytes from 192.168.1.143: icmp_seq=23 ttl=64 time=0.532 ms
64 bytes from 192.168.1.143: icmp_seq=24 ttl=64 time=0.655 ms
64 bytes from 192.168.1.143: icmp_seq=25 ttl=64 time=0.643 ms
64 bytes from 192.168.1.143: icmp_seq=26 ttl=64 time=0.634 ms
64 bytes from 192.168.1.143: icmp_seq=27 ttl=64 time=0.630 ms
64 bytes from 192.168.1.143: icmp_seq=28 ttl=64 time=0.601 ms
64 bytes from 192.168.1.143: icmp_seq=29 ttl=64 time=0.590 ms
64 bytes from 192.168.1.143: icmp_seq=30 ttl=64 time=0.618 ms
64 bytes from 192.168.1.143: icmp_seq=31 ttl=64 time=0.526 ms
64 bytes from 192.168.1.143: icmp_seq=32 ttl=64 time=0.629 ms
64 bytes from 192.168.1.143: icmp_seq=33 ttl=64 time=1.482 ms
64 bytes from 192.168.1.143: icmp_seq=34 ttl=64 time=0.538 ms
64 bytes from 192.168.1.143: icmp_seq=35 ttl=64 time=0.628 ms
64 bytes from 192.168.1.143: icmp_seq=36 ttl=64 time=0.547 ms
64 bytes from 192.168.1.143: icmp_seq=37 ttl=64 time=0.642 ms
64 bytes from 192.168.1.143: icmp_seq=38 ttl=64 time=0.539 ms
64 bytes from 192.168.1.143: icmp_seq=39 ttl=64 time=0.614 ms
64 bytes from 192.168.1.143: icmp_seq=40 ttl=64 time=0.641 ms
64 bytes from 192.168.1.143: icmp_seq=41 ttl=64 time=0.621 ms
64 bytes from 192.168.1.143: icmp_seq=42 ttl=64 time=0.542 ms
64 bytes from 192.168.1.143: icmp_seq=43 ttl=64 time=0.658 ms
64 bytes from 192.168.1.143: icmp_seq=44 ttl=64 time=0.614 ms
64 bytes from 192.168.1.143: icmp_seq=45 ttl=64 time=0.781 ms
64 bytes from 192.168.1.143: icmp_seq=46 ttl=64 time=0.784 ms
64 bytes from 192.168.1.143: icmp_seq=47 ttl=64 time=0.573 ms
64 bytes from 192.168.1.143: icmp_seq=48 ttl=64 time=0.586 ms
64 bytes from 192.168.1.143: icmp_seq=49 ttl=64 time=0.564 ms
64 bytes from 192.168.1.143: icmp_seq=50 ttl=64 time=0.553 ms
^C
--- 192.168.1.143 ping statistics ---
51 packets transmitted, 51 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 0.526/0.648/1.482/0.184 ms


Then logging in and creating an account for ssh access to
use, tested from a macOS system on the network:

Password for markmi@generic:
FreeBSD 13.1-RC4 releng/13.1-n250133-283d1b98251 GENERIC

Welcome to FreeBSD!

Release Notes, Errata: https://www.FreeBSD.org/releases/
Security Advisories:   https://www.FreeBSD.org/security/
FreeBSD Handbook:      https://www.FreeBSD.org/handbook/
FreeBSD FAQ:           https://www.FreeBSD.org/faq/
Questions List: https://lists.FreeBSD.org/mailman/listinfo/freebsd-questions/
FreeBSD Forums:        https://forums.FreeBSD.org/

Documents installed with the system are in the /usr/local/share/doc/freebsd/
directory, or can be installed later with:  pkg install en-freebsd-doc
For other languages, replace "en" with a language code like de or fr.

Show the version of FreeBSD installed:  freebsd-version ; uname -a
Please include that output and any error messages when posting questions.
Introduction to manual pages:  man man
FreeBSD directory layout:      man hier

To change this login announcement, see motd(5).
If you want to recursively copy a directory preserving file and directory
attributes use
"cp -a source target"

		-- Lars Engels <lme@FreeBSD.org>
markmi@generic:~ $ ifconfig
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> metric 0 mtu 16384
	options=680003<RXCSUM,TXCSUM,LINKSTATE,RXCSUM_IPV6,TXCSUM_IPV6>
	inet6 ::1 prefixlen 128
	inet6 fe80::1%lo0 prefixlen 64 scopeid 0x1
	inet 127.0.0.1 netmask 0xff000000
	groups: lo
	nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
ue0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
	options=80009<RXCSUM,VLAN_MTU,LINKSTATE>
	ether b8:27:eb:df:cf:a5
	inet 192.168.1.143 netmask 0xffffff00 broadcast 192.168.1.255
	media: Ethernet autoselect (100baseTX <full-duplex>)
	status: active
	nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
markmi@generic:~ $ gpart show -p
=>      63  62333889    mmcsd0  MBR  (30G)
        63      2016            - free -  (1.0M)
      2079    102312  mmcsd0s1  fat32lba  [active]  (50M)
    104391  62228537  mmcsd0s2  freebsd  (30G)
  62332928      1024            - free -  (512K)

=>       0  62228537   mmcsd0s2  BSD  (30G)
         0        57             - free -  (29K)
        57  62228480  mmcsd0s2a  freebsd-ufs  (30G)

markmi@generic:~ $ 


So trying from something based on FreeBSD [main, so: 14],
a RPi4B on the same local subnet:

# ssh markmi@192.168.1.143
(markmi@192.168.1.143) Password for markmi@generic:
Last login: Thu Apr 21 04:13:50 2022 from 192.168.1.106
FreeBSD 13.1-RC4 releng/13.1-n250133-283d1b98251 GENERIC

Welcome to FreeBSD!

Release Notes, Errata: https://www.FreeBSD.org/releases/
Security Advisories:   https://www.FreeBSD.org/security/
FreeBSD Handbook:      https://www.FreeBSD.org/handbook/
FreeBSD FAQ:           https://www.FreeBSD.org/faq/
Questions List: https://lists.FreeBSD.org/mailman/listinfo/freebsd-questions/
FreeBSD Forums:        https://forums.FreeBSD.org/

Documents installed with the system are in the /usr/local/share/doc/freebsd/
directory, or can be installed later with:  pkg install en-freebsd-doc
For other languages, replace "en" with a language code like de or fr.

Show the version of FreeBSD installed:  freebsd-version ; uname -a
Please include that output and any error messages when posting questions.
Introduction to manual pages:  man man
FreeBSD directory layout:      man hier

To change this login announcement, see motd(5).
You can `set autologout = 30' to have tcsh log you off automatically
if you leave the shell idle for more than 30 minutes.
markmi@generic:~ $ 



So the basic test does not show any problems that
you are reporting. 

Can you replicate the simpler environment and see if
you have the problem in it?


===
Mark Millard
marklmi at yahoo.com