Академический Документы
Профессиональный Документы
Культура Документы
00
(c) Copyright 2001 - 2012 Kwakkelflap
Written by Wouter Dhondt
Web: http://www.kwakkelflap.com
E-Mail: info@kwakkelflap.com
-------------------------------------------------------------------------------Fping is a simple ping program, intended to be used instead of the
standard ping program that comes with windows. It was first made
to ping faster than once every second. Options have been added since
then and fping is now a very handy tool (at least I think it is).
PLATFORMS:
Windows 95, 98, NT 4.0, 2000, ME, XP, 2003 server, Vista, 7 and 2008 server
-------------------------------------------------------------------------------Legal mumbo jumbo :
This program and the accompanying documentation are Copyright (C) 2001 - 2008
by Kwakkelflap. You are allowed to redistribute it, provided that all
the files in the original archive are distributed together and no changes
are made to any file in the distribution. You can't charge for the
program, only for distributing it. You have to clearly identify me
(Wouter Dhondt) as the author.
This program comes without any warranty either implied or expressed. In no
case shall the author be liable for any damage or unwanted behaviour of any
computer hardware and/or software.
The same things in English:
- I own it. It's mine. Muahahaha! (But I let you use it too.)
- I can't guarantee that it works, or that it works correctly.
- If it breaks, it's your fault. But you do get to keep the pieces.
- If it breaks something else, it's your fault too.
- If you copy it, don't claim that you've made it yourself, or
change it in any way; and copy both program and documentation.
- You are free to offer the program on your web page. All I ask for
is that you give a link back to mine, and that you state that the
program was made by Wouter Dhondt.
-------------------------------------------------------------------------------Ping is one of the most useful network debugging tools available. The first ping
program was written by Mike Muuss in December 1983 for use on Unix machines. Muu
ss
named his program after the sonar sounds used for echolocation by submarines,
although some say ping stands for "Packet InterNet Grouper". Ping sends a small
packet of information containing an ICMP ECHO_REQUEST to a specified computer,
which then sends an ECHO_REPLY packet in return. The ping program then evaluates
this reply, and a report is shown. You can check several things with the ping
program: can you reach another computer, how long does it take to bounce a packe
t
off of another site, ... You can ping either a domain name, or an IP address.
Functionality to show domain names when using IP addresses is supported. Even
routing options are available, alas only 9 routes can be shown due to the
structure of the IP header (RFC 792). Why did I write my own ping program?
There are two main reasons: a) It wanted to know how the ping program worked. I
found it really intriguing and was very curious and b) There was a need for a
better ping program here at the lab where I work.
Usage:
fping <host(-list)> [-t time] [-w timeout] [-c] [-n count] [-s data_size]
[-S size1/size2] [-R min/max] [-d ping_data] [-h TTL] [-v TOS]
[-r routes] [-f] [-j] [-g host1/host2] [-H filename] [-a] [-A]
[-p(x)] [-i] [-b(-)] [-T] [-D] [-l] [-o] [-L filename]
Options:
-t : time between 2 pings in ms up to 1000000
-w : timeout in ms to wait for each reply
-c : continuous ping (higher priority than -n)
to see statistics and continue - type Control-Break;
to stop - type Control-C.
-n : number of pings to send to each host
-s : amount of data in bytes up to 65500
-S : size sweep: ping with size1, size1 + 1, ..., size2 bytes
-R : random length between min and max (disabled when using -S)
-d : ping with specified data
-h : number of hops (TTL: 1 to 128) + print hops
-v : Type Of Service (0 to 255) (IPv4-only)
-r : record route (1 to 9 routes) (IPv4-only)
-f : set Don't Fragment flag in packet (IPv4-only)
-j : print jitter with each reply (only when pinging one host)
-g : ping IP range from host1 to host2 (IPv4-only)
-H : get hosts from filename (comma delimited, filename with full path)
-a : resolve addresses to hostnames
-A : print addresses with each reply
-p : use a thread pool to ping multiple hosts (enables ICMP dll)
x is optional and allows you to choose the number of threads
e.g. -p uses a thread for every host
-p5 uses a pool of 5 threads/core
-i : use ICMP dll instead of raw socket (disables -r)
-b : beep on every successful reply (-b- to beep on timeout)
-T : print timestamp with each reply
-D : print datestamp with each reply
-l : limit the output to ping results and errors
-o : limit the output to ping statistics
-L : logging to a text file
fping uses raw sockets. This can be a problem for NT / 2000 / XP system
users without administrator rights. Raw socket creation will fail
due to a silly and useless socket protection. Fping will switch
to the ICMP dll if this happens (to ping the micro$oft way). To
disable this protection (and take full advantage of fping) you can
do the following:
a) NT4 users should change / add the following registry variable
and set its value to DWORD 1:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Afd\Parameters\DisableRawSe
curity
b) 2000 / XP users should set the following registry variable to DWORD 1
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Tcpip\Parameters\AllowUserR
awAccess
Also, if you want to change the TOS on 2000/XP systems, you need to add the
following value in the registry and set it to 0:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\TCPip\Parameters\DisableUse
rTOSSetting
after you change the registry, you will need to reboot.
You can also run the reg file in accordance with your os.
Return Values:
Reply: 0
Reply timed out: 1
Host not found: 2
Packet size exceeds MTU: 3
Too few bytes: 4
Non-echo type: 5
Send questions (and bug reports) 2 support@kwakkelflap.com
-------------------------------------------------------------------------------Known bugs: none
Possible future enhancements:
- loose and strict route ping options
- other ping options
-------------------------------------------------------------------------------Revision History:
Version 3.00 (16/02/12)
- Changed the order of ping options
- Timestamp in milliseconds
- Datestamp option without timestamp, you can combine both
- Option to ping in different threads
- Option to print addresses instead of input
- Bugfix: crash when unable to resolve host in ICMP ping
- General cleanup
Version 2.22 (12/11/08)
- Fix for Win2K for the getaddrinfo() function (since version 2.19) (234)
Version 2.21 (31/10/08)
- Limit the output to statistics only (214)
- Use the real data size with -d option if not set with -s option (224)
- Removed the first 4 bytes of the RAW socket ping which had timing information
(obsolete since 2.11) (224)
- Ping with random size and known data (225)
- Set the timer resolution to allow fast pings (231)
Version 2.20 (09/04/08)
- Calculate jitter when pinging one host (210)
- Print hops when using the TTL option for IPv4 (210)