On Saturday 11 December 2021 at 14:12:14, Sergey Safarov wrote:
You can check DNS response. I think there may be a set flag that indicates "partial response." In this case, the client should switch transport used to send requests from UDP to TCP.
As I know Freewithch (libsofia) do not support DNS request via TCP and this lead to failed DNS lookup.
That's not what the source code seems to indicate. src/mod/endpoints/mod_sofia/sip-dig.c contains: -------- The sip-dig utility accepts following command line options: -p protoname Use named transport protocol. The protoname can be either well-known, e.g., "udp", or it can specify NAPTR service and SRV identifier, e.g., "tls-udp/SIPS+D2U/_sips._udp.". --udp Use UDP transport protocol. --tcp Use TCP transport protocol. --tls Use TLS over TCP transport protocol. --sctp Use SCTP transport protocol. --tls-sctp Use TLS over SCTP transport protocol. --no-sctp Ignore SCTP or TLS-SCTP records in the list of default transports. This option has no effect if transport protocols has been explicitly listed. -4 Query IP4 addresses (A records) -6 Query IP6 addresses (AAAA records). -v Be verbatim. -------- I do wonder whether that last comment should be "Be verbose", but I can't say for certain :) However, this strongly suggests that sofia_dig / sip_dig does support TCP lookups. I have no idea whether that means it will automatically fail over to a TCP lookup if the UDP response is "too large". Antony. -- Normal people think "If it ain't broke, don't fix it". Engineers think "If it ain't broke, it doesn't have enough features yet". Please reply to the list; please *don't* CC me.