Package: traceroute Version: 1:2.1.0-2+deb11u1 Severity: normal Dear Maintainer,
I resend this from Devuan, because the package is not forked. I've been using traceroute to monitor network state of the server for years. It is called for each interface by a cron job running a few times per hour. Since yesterday, an interface stopped working, but the job never noticed it. Manually calling traceroute only shows the (natted) modem interface: :~# ip addr show eth1r 3: eth1r: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 link/ether 00:26:55:e0:d0:e8 brd ff:ff:ff:ff:ff:ff inet 192.168.1.254/24 brd 192.168.1.255 scope global eth1r valid_lft forever preferred_lft forever inet6 fe80::226:55ff:fee0:d0e8/64 scope link valid_lft forever preferred_lft forever :~# traceroute -4 -n -i eth1r -m 4 -s 192.168.1.254 185.204.135.186 traceroute to 185.204.135.186 (185.204.135.186), 4 hops max, 60 byte packets 1 192.168.1.1 0.235 ms 0.282 ms 0.289 ms 2 * * * 3 * * * 4 * * * Exit code is 0. In fact recvmsg reports no error. The relevant calls are: 23495 sendto(14, "@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_", 32, 0, NULL, 0) = 32 23495 recvmsg(3, {msg_name={sa_family=AF_INET, sin_port=htons(33434), sin_addr=inet_addr("185.204.135.186")}, msg_namelen=28->16, msg_iov=[{iov_base="@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_", iov_len=1280}], msg_iovlen=1, msg_control=[{cmsg_len=32, cmsg_level=SOL_SOCKET, cmsg_type=SO_TIMESTAMP_OLD, cmsg_data={tv_sec=1692345052, tv_usec=96190}}, {cmsg_len=20, cmsg_level=SOL_IP, cmsg_type=IP_TTL, cmsg_data=[64]}, {cmsg_len=48, cmsg_level=SOL_IP, cmsg_type=IP_RECVERR, cmsg_data={ee_errno=113, ee_origin=2, ee_type=11, ee_code=0, ee_info=0, ee_data=0, offender={sa_family=AF_INET, sin_port=htons(0), sin_addr=inet_addr("192.168.1.1")}}}], msg_controllen=104, msg_flags=MSG_ERRQUEUE}, MSG_ERRQUEUE) = 32 23495 recvmsg(4, {msg_name={sa_family=AF_INET, sin_port=htons(33435), sin_addr=inet_addr("185.204.135.186")}, msg_namelen=28->16, msg_iov=[{iov_base="@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_", iov_len=1280}], msg_iovlen=1, msg_control=[{cmsg_len=32, cmsg_level=SOL_SOCKET, cmsg_type=SO_TIMESTAMP_OLD, cmsg_data={tv_sec=1692345052, tv_usec=96276}}, {cmsg_len=20, cmsg_level=SOL_IP, cmsg_type=IP_TTL, cmsg_data=[64]}, {cmsg_len=48, cmsg_level=SOL_IP, cmsg_type=IP_RECVERR, cmsg_data={ee_errno=113, ee_origin=2, ee_type=11, ee_code=0, ee_info=0, ee_data=0, offender={sa_family=AF_INET, sin_port=htons(0), sin_addr=inet_addr("192.168.1.1")}}}], msg_controllen=104, msg_flags=MSG_ERRQUEUE}, MSG_ERRQUEUE) = 32 23495 recvmsg(5, {msg_name={sa_family=AF_INET, sin_port=htons(33436), sin_addr=inet_addr("185.204.135.186")}, msg_namelen=28->16, msg_iov=[{iov_base="@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_", iov_len=1280}], msg_iovlen=1, msg_control=[{cmsg_len=32, cmsg_level=SOL_SOCKET, cmsg_type=SO_TIMESTAMP_OLD, cmsg_data={tv_sec=1692345052, tv_usec=96277}}, {cmsg_len=20, cmsg_level=SOL_IP, cmsg_type=IP_TTL, cmsg_data=[64]}, {cmsg_len=48, cmsg_level=SOL_IP, cmsg_type=IP_RECVERR, cmsg_data={ee_errno=113, ee_origin=2, ee_type=11, ee_code=0, ee_info=0, ee_data=0, offender={sa_family=AF_INET, sin_port=htons(0), sin_addr=inet_addr("192.168.1.1")}}}], msg_controllen=104, msg_flags=MSG_ERRQUEUE}, MSG_ERRQUEUE) = 32 23495 +++ exited with 0 +++ The modem obviously needs a reset. The point is that I was expecting traceroute to detect that, since the interface doesn't work. If this is not a bug in the code, it is in the documentation, tagged 11 October 2006, which doesn't mention exit code at all. Thanks Ale -- System Information: Debian Release: 11.1 Architecture: amd64 (x86_64) Foreign Architectures: i386 Kernel: Linux 5.10.0-24-amd64 (SMP w/8 CPU threads) Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE not set Shell: /bin/sh linked to /bin/bash Init: sysvinit (via /sbin/init) Versions of packages traceroute depends on: ii libc6 2.31-13+deb11u6 traceroute recommends no packages. traceroute suggests no packages. -- no debconf information