Доброго дня!
Пишем софт на Qt (точнее, переписываем с си-шарпа), чтобы он работал и в Windows, и в Linux (AstraLinux).
Столкнулись с непонятным поведением кода, использующего сокеты, в Linux. В Windows всё работает отлично, но тот же код в Linux не работает.
Проблема, как выяснилось в привязке сокета к конкретному IP-адресу. У компьютера два (или более) сетевых интерфейса, поэтому в программе указывается локальный IP-адрес сетевого интерфейса, с которым надо работать.
Так вот, если в функции QUdpSocket.bind указать конкретный IP, то приёма UDP-пакетов нет, а если указать ANY, то приём есть. Как правильно привязать к конкретному IP?