Answers to some of the questions I have received about WhatRoute.
Why does WhatRoute ask for my administrator password?
UDP vs ICMP for tracing routes - whats the difference?
What is WhatRouteHelper?
WhatRoute crashes when starting up
Why is the map so inaccurate?
Nothing works in this program
How do I remove this software?
WhatRoute uses your administrator access to give root permissions to the WhatRouteHelper program that is contained within
the WhatRoute software bundle. Most network software sends data within a TCP or UDP frame and the networking stack on the computer
is responsible for further encapsulation of that data to ensure it reaches its correct destination. Traceroute and Ping work slightly differently
and require the sending software to do its own encapsulation and set the appropriate bits in the packet header. To send
this data on MacOS X requires privileged access to the network stack. WhatRoute makes no use of your administrator
access other than to open this priviliged interface (raw socket) to the kernel network software, by way of the WhatRouteHelper
WhatRoute offers two different packet formats for probing the network. The format to use is selected with the Use UDP Traceroute
option. UDP packets are historically the format used by the Unix traceroute command. A UDP packet is sent to the target machine addressed
to a UDP port that is unlikely to be open for receiving data. The maximum number of hops to send the packet is set to a low value and incremented
at each probe. If either the packet cannot be forwarded by the router (because of a low maximum hop count) or the UDP port is unreachable
(i.e. nothing is listening on that port at the target machine, WhatRoute will receive an ICMP response from the router or host.
If you choose to send ICMP packets (i.e Use UDP Traceroute
is disabled) the intervening routers will respond with an appropriate
ICMP packet and WhatRoute reports the response.
The choice as to which format to use is based on the 'what ever works' formula. Some routers will not respond to UDP packets but silently
discard them. Others will work with UDP but silently drop ICMP probes. Some are contrary and drop both. If one format doesnt work then try
the other, but remember that if you are doing comparisons to different hosts, then you should use the same format in each set of tests.
WhatRouteHelper is a small program that performs privileged network operations on behalf the main WhatRoute gui. When
you supply your administrator password the first time you run WhatRoute, WhatRouteHelper is modified to be a privileged
program. WhatRoute then communicates with this program and requests it to send / receive raw packets to / from the network.
The most common cause of crashes during startup are corrupted preference and/or cache files. To fix this you should remove (or rename)
the WhatRoute Preferences and Cache directories.
WhatRoute will recreate these directories and files the next time it is run.
The directories are located within the Library directory in your home folder.
The data used to create the map comes from the free GeoLite City database, updated monthly by MaxMind
This is a free service and the data is provided 'as-is'. If you require more accurate information it will be necessary to purchase data from
a commercial provider - and that is beyond the scope of a donationware product such as WhatRoute. The bottom line - "You get what
you pay for."
If you're finding that you are getting no results from the program, e.g. just a bunch of red asterisks when you do a Ping or Traceroute, then
you probably need to check the firewall settings on your Mac, your wireless router if you use one and also the modem/router that connects
you to your ISP.
You could also try changing the Use UDP Traceroute
option to see if that makes a difference.
- WhatRoute requires that ICMP packets are forwarded in both directions through your network.
- UDP traceroute requires UDP ports 33435 to 33495 to be open for sending
- Whois requires TCP port 43 to be open
- Finger requires TCP port 79. This service is rarely used and best left disabled
- DNS requires TCP and UDP port 53 - this is probably already enabled
- Geo Location queries are made over TCP port 80 and will also use a Proxy server if your Mac is configured to use one. This port
setting should be OK as it is the same port used by your web browser
- Drag the WhatRoute application bundle to the trash. That gets rid of all the executable components of WhatRoute
- Delete all the preference files to get rid of any settings and cached data.