ss
mostra conexões que ainda não foram resolvidas pelo arp. Eles estão no estado SYN-SENT
. O problema é que tal estado é mantido por apenas alguns segundos, então a conexão falha, então você pode não vê-lo. Você poderia tentar uma pesquisa rápida com
while ! ss -p state syn-sent | grep 1.1.1.100; do sleep .1; done
Uma maneira de estender o tempo neste estado é definir um endereço mac arbitrário com fio para o endereço IP em sua tabela arp. Em seguida, uma conexão levará mais de 30 segundos para expirar e será mais fácil ver com ss
.
Por exemplo, com minha eth0 em 192.168.1.1
$ socat tcp:192.168.1.100:80 -
$ arp -i eth0 -n | grep 192.168.1.100
192.168.1.100 (incomplete) eth0
configurar o endereço mac torna a socat facilmente visível
$ sudo arp -i eth0 -s 192.168.1.100 80:ef:00:ff:ff:ff
$ socat tcp:192.168.1.100:80 - &
$ ss -p state syn-sent
Netid Recv-Q Send-Q Local Address:Port Peer Address:Port
tcp 0 1 192.168.1.1:46608 192.168.1.100:http users:(("socat",pid=20230,fd=3))