Board index » delphi » TCP Transport into DNSResolver.

TCP Transport into DNSResolver.

Hi All,
  I want to add TCP transport the the DNSResolver Component. I want to
be able to pick between the TCP and UDP protocols. I noticed that
TIdDNSResolver is set up as class(TIdUDPClient) wouldn't it be better to
make it a class(TObject) and add a protocol property that allows you to
pick between the TCP and UPD? Maybe I'm being to simplistic but not
being able to do AXFR zone transfers is bugging me, and TCP is alot more
reliable. Any takers????
Later
 Andre
 

Re:TCP Transport into DNSResolver.


Andre <an...@web.solutions.net.au> wrote in
<3A9C8B2C.93786...@web.solutions.net.au>:

Quote
>  I want to add TCP transport the the DNSResolver Component. I want to
>be able to pick between the TCP and UDP protocols. I noticed that
>TIdDNSResolver is set up as class(TIdUDPClient) wouldn't it be better to
>make it a class(TObject) and add a protocol property that allows you to
>pick between the TCP and UPD? Maybe I'm being to simplistic but not
>being able to do AXFR zone transfers is bugging me, and TCP is alot more
>reliable. Any takers????

Sounds like a good idea. Look at BIND's res_* API and it's _res object for
an idea of what's needed. (This is documented in the O'Reilly "BIND & DNS"
book.) One thing that immediately comes to mind is the need for the ability
to select between maintaining the connection and rebuilding it for each
query (the default for BIND). The resolver also needs to be able to run
with UDP and fall back to TCP when an answer is too big.

Other Threads