On 02/06/2021 18:46, Pascal Hambourg wrote:
> Tests I can think of :
> Run a packet capture on the ethernet interface and see if this traffic
> is visible.
Well, Pascal, this gets weirder.
It's seeing the traffic to 192.168.0.1:any = which is reasonable since
the traffic has its MAC address as corresponding so the ethernet switch
will route it there - but its not responding!
So WTF is?
Its as if there is a virtual interface with another name than
enp0s25...that tcpdump aint seeing...
I've tried rebooting the 100Mbps switch. No difference
# tcpdump -vv --interface=any icmp
tcpdump: listening on any, link-type LINUX_SLL (Linux cooked v1),
capture size 262144 bytes
06:49:30.029548 IP (tos 0x0, ttl 64, id 62895, offset 0, flags [DF],
proto ICMP (1), length 84)
192.168.0.5 >
192.168.0.1: ICMP echo request, id 14398, seq 1,
length 64
06:49:31.029909 IP (tos 0x0, ttl 64, id 63048, offset 0, flags [DF],
proto ICMP (1), length 84)
192.168.0.5 >
192.168.0.1: ICMP echo request, id 14398, seq 2,
length 64
06:49:32.029955 IP (tos 0x0, ttl 64, id 63197, offset 0, flags [DF],
proto ICMP (1), length 84)
192.168.0.5 >
192.168.0.1: ICMP echo request, id 14398, seq 3,
length 64
06:49:33.030085 IP (tos 0x0, ttl 64, id 63361, offset 0, flags [DF],
proto ICMP (1), length 84)
192.168.0.5 >
192.168.0.1: ICMP echo request, id 14398, seq 4,
length 64
06:49:51.088078 IP (tos 0x0, ttl 64, id 14931, offset 0, flags [DF],
proto ICMP (1), length 84)
then (correct address)
192.168.0.5 > cymbeline: ICMP echo request, id 14399, seq 1, length 64
06:49:51.088115 IP (tos 0x0, ttl 64, id 22498, offset 0, flags [none],
proto ICMP (1), length 84)
cymbeline >
192.168.0.5: ICMP echo reply, id 14399, seq 1, length 64
06:49:52.087261 IP (tos 0x0, ttl 64, id 15047, offset 0, flags [DF],
proto ICMP (1), length 84)
192.168.0.5 > cymbeline: ICMP echo request, id 14399, seq 2, length 64
06:49:52.087304 IP (tos 0x0, ttl 64, id 22535, offset 0, flags [none],
proto ICMP (1), length 84)
cymbeline >
192.168.0.5: ICMP echo reply, id 14399, seq 2, length 64
06:49:53.086128 IP (tos 0x0, ttl 64, id 15069, offset 0, flags [DF],
proto ICMP (1), length 84)
192.168.0.5 > cymbeline: ICMP echo request, id 14399, seq 3, length 64
06:49:53.086171 IP (tos 0x0, ttl 64, id 22598, offset 0, flags [none],
proto ICMP (1), length 84)
cymbeline >
192.168.0.5: ICMP echo reply, id 14399, seq 3, length 64
And yet something is responding...
xxx@shylock ~/Desktop $ ping 192.168.0.1
PING 192.168.0.1 (192.168.0.1) 56(84) bytes of data.
64 bytes from
192.168.0.1: icmp_seq=1 ttl=255 time=0.730 ms
64 bytes from
192.168.0.1: icmp_seq=2 ttl=255 time=0.777 ms
64 bytes from
192.168.0.1: icmp_seq=3 ttl=255 time=0.823 ms
64 bytes from
192.168.0.1: icmp_seq=4 ttl=255 time=0.743 ms
^C
--- 192.168.0.1 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3000ms
rtt min/avg/max/mdev = 0.730/0.768/0.823/0.040 ms
xxx@shylock ~/Desktop $ ping 192.168.0.100
PING 192.168.0.100 (192.168.0.100) 56(84) bytes of data.
64 bytes from
192.168.0.100: icmp_seq=1 ttl=64 time=0.260 ms
64 bytes from
192.168.0.100: icmp_seq=2 ttl=64 time=0.417 ms
64 bytes from
192.168.0.100: icmp_seq=3 ttl=64 time=0.283 ms
^C
--- 192.168.0.100 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 1998ms
rtt min/avg/max/mdev = 0.260/0.320/0.417/0.069 ms
The odd thing is that the *correct* IP response is ~half the delay...
and the TTL is set differently on the 'ghost'
only the router and the printer normally set 255 ttls - everything else
seems to be 64..
network is 100MBps switched by and large plus wifi on laptop, Pi zero W
and android phone.
later:
I had to reboot the server after a kernel upgrade.
During the reboot 192.168.0.1 *was still responding*. even when the
'correct' interface was not. I wasn't quick enough to catch it pre boot
sequence starting tho
The only way to stop it is to physically unplug the server Ethernet.
Weirder still the server has come up OK on the right address except it
says that 'network manager is disabled'
So to summarise.
1/. It seems the ghost interface is tightly linked to the servers
ethernet. Has the same MAC address. disappears if ethernet to that
machine is unplugged
2/. However it responds to pings with a different TTL than the normal
interface.
3/. It periodically seems to request DHCP updates.
4/. Apart from responding to arp and ICMP requests and DHCP responses it
seems to have no services attached at all.
5/. It seems to exist before the main interface (enp0s25) is up
6/. It seems to want DHCP quite often. After I rebooted the server I
switched the router off, then on. It is now the only thing IN the DHCP
table.
7/. nmap reveals no open tcp or udp ports (below 1000)
8/. I am beginning to see the idiot Poettering grinning at me. The only
daemon running, now network manager is not, is
/usr/bin/python3 /usr/bin/networkd-dispatcher --run-startup-triggers
From what I can glean files in there still want to use DHCP, But its an
almost undocumented configuration mess worthy of a bureaucrat.
I am thinking that systemd is creating this interface before whatever it
is that DOES create the correct one, creates THAT
anyone know their way round systemd conf files for networking?
--
“Puritanism: The haunting fear that someone, somewhere, may be happy.”
H.L. Mencken, A Mencken Chrestomathy