Determining availability of a remote machine
Steve Jenkin
sjenkin at pcug.org.au
Wed Apr 2 17:43:21 EST 2003
'traceroute' relies on the proper intermediate handling of expired 'time to
live', not ICMP ECHO (ping).
From my (linux) manpage:
-I Use ICMP ECHO instead of UDP datagrams.
-p Set the base UDP port number used in probes
(default is 33434). Traceroute hopes that nothing
is listening on UDP ports base to base + nhops - 1
at the destination host (so an ICMP PORT_UNREACH
ABLE message will be returned to terminate the
route tracing). If something is listening on a
port in the default range, this option can be used
to pick an unused port range
... .then listening for an ICMP "time exceeded" reply from a gateway.
--
Would be nice if it would use an designated TCP port, would work just as well
and could be 'jiggled' to go through various firewalls. [tcp:80/http is an
obvious default choice]
Mikal - you've got the source :-)
cheers
sj
On Wed, 2 Apr 2003 15:50, Warwick Mitchell wrote:
> Traceroute relies on ICMP.
>
> You could always try a tcp connection and wait for a RST packet or a SYN
> ACK, depending if the machine is listening on the port or not. You would
> still need a timeout if the machine was dead though, but I can't see
> anyway around that. And firewalls etc would still be in the way, but
> firewalls are always going to get in the way, that's their job.
>
> Warwick
>
> On Wed, 2 Apr 2003, Stephen Jenkin wrote:
> > Would 'traceroute' work?
> >
> > Steve Jenkin, Unix Sys Admin
> > 0412 786 915 (+61 412 786 915)
> > PO Box 48, Kippax ACT 2615, AUSTRALIA
--
--
Steve Jenkin
PO Box 48, Kippax ACT 2615
(m) 0412 786 915
More information about the linux
mailing list