#992807 addressless interface prevents dict from connecting to localhost

Package:
dict
Source:
dictd
Description:
dictionary client
Submitter:
Ryan Kavanagh
Date:
2021-08-23 17:09:03 UTC
Severity:
normal
#992807#5
Date:
2021-08-23 17:08:05 UTC
From:
To:
The dict client cannot connect to the dictd server running on localhost
if I have an interface without addresses configured. This is not dictd's
fault: I can still manually query the server using netcat. I can
reproduce this with both dummy interfaces and my wireless interface.

rak@zeta:~$ sudo ip link set dummy0 up
rak@zeta:~$ ip addr show dummy0
6: dummy0: <BROADCAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc noqueue state UNKNOWN group default qlen 1000
    link/ether 92:71:33:c9:a2:56 brd ff:ff:ff:ff:ff:ff
    inet6 fe80::9071:33ff:fec9:a256/64 scope link
       valid_lft forever preferred_lft forever
rak@zeta:~$ dict -I -v
Configuration file:
   server 127.0.0.1
Cannot connect to any servers
rak@zeta:~$ dict -I -v -h 127.0.0.1 -p 2628
Configuration file:
   server 127.0.0.1
Cannot connect to any servers
rak@zeta:~$ echo 'SHOW SERVER' | nc 127.0.0.1 2628
220 zeta.rak.ac dictd 1.13.0/rf on Linux 5.10.0-8-amd64 <auth.mime> <36.2418655.1629582933@zeta.rak.ac>
114 server information
dictd 1.13.0/rf on Linux 5.10.0-8-amd64
On zeta.rak.ac: up 5+00:32:19, 36 forks (0.3/hour)

Database      Headwords         Index          Data  Uncompressed
gcide     185761       3515 kB         11 MB         34 MB
wn        147311       3002 kB       9247 kB         29 MB
vera       12665        144 kB        225 kB        746 kB

.
250 ok
rak@zeta:~$ sudo ip addr add 10.0.0.1/32 dev dummy0
rak@zeta:~$ dict -I -v
Configuration file:
   server 127.0.0.1
  dictd 1.13.0/rf on Linux 5.10.0-8-amd64
  On zeta.rak.ac: up 5+00:33:05, 37 forks (0.3/hour)

  Database      Headwords         Index          Data  Uncompressed
  gcide     185761       3515 kB         11 MB         34 MB
  wn        147311       3002 kB       9247 kB         29 MB
  vera       12665        144 kB        225 kB        746 kB

rak@zeta:~$ sudo ip addr del 10.0.0.1/32 dev dummy0
rak@zeta:~$ dict -I -v
Configuration file:
   server 127.0.0.1
Cannot connect to any servers
rak@zeta:~$ sudo ip link set dummy0 down
rak@zeta:~$ dict -I -v
Configuration file:
   server 127.0.0.1
  dictd 1.13.0/rf on Linux 5.10.0-8-amd64
  On zeta.rak.ac: up 5+00:33:29, 38 forks (0.3/hour)

  Database      Headwords         Index          Data  Uncompressed
  gcide     185761       3515 kB         11 MB         34 MB
  wn        147311       3002 kB       9247 kB         29 MB
  vera       12665        144 kB        225 kB        746 kB