On Mon, 2003-04-07 at 12:23, Vince Littler wrote:
Thanks for this Anders
On Monday 07 April 2003 4:21 pm, Anders Johansson wrote:
On Monday 07 April 2003 17:00, Ken Schneider wrote:
That is not correct. Since your computer nor your router know anything about the address it will search the internet to try and resolve the "hardware" address to the given "ip" address.
resolve hardware address? You mean arp? It won't.
It knows enough about the ip address from looking at the routing table, which should tell it all it needs to know about how to handle it.
I think the problem in this case is that those numbers after telnet aren't numbers, they're characters. It looks like telnet first tries to resolve those characters as though it were a text url. Only after that fails will it try to convert it into a quad IP address.
YES, this is exactly what happens and I think you have put your finger on it in saying that the numbers are just a string as far as telnet understands them.
An strace shows ftp does the same thing. ssh doesn't, for some reason.
Yes, I knew some other service had displayed the behaviour, but it has been a while since I saw it, that I was reluctant t report it.
If you want it to happen faster you could set up a local forwarding dns, which should be able to answer quicker than the remote dns that it's a malformed url.
No, the hosts file is an acceptable work around.
But the question remains, is there not a small bug inherent in this in that the destination address should be checked for being an IP address or a URL, and DNS only invoked for a URL?
Or is it historic that DNS itself does the IP or URL check? [which was reasonable in the days before dialup and is reasonable again with broadband, but is bad behaviour in a dialup context]
regards
Vince Littler
Maybe some simple networking lessons are in order. A "dotted quad address" is always treated as an "IP address" NOT some random text string URL. When you type the "IP address" as the destination, (whether telnet, ftp, http) it eliminates having to go through DNS to resolve a "name" to an "IP address". Once the "IP address" has been determined another query is sent on its way to the routers looking for the "MAC address" that belongs to the "IP address". EVERY request will resolve to a "MAC address" or fail. Try using ethereal to grab the packets as you make the request via an "IP address". Ken Schneider Network Administrator