http://www.finnie.org/software/2ping/
2ping is a bi-directional ping utility. It uses 3-way pings (akin to TCP SYN, SYN/ACK, ACK) and after-the-fact state comparison between a 2ping listener and a 2ping client to determine which direction packet loss occurs.
Python 2.7 is recommended for 2ping. Python 2.6 is also supported, with the following notes:
- The argparse module is also required.
- Monotonic clock support is not available on Unix platforms, instead falling back to
time.time()
(which will likely be usinggettimeofday()
).
To install:
sudo python setup.py install
Please see the 2ping manpage for invocation options, but in short, start a listener on the far end:
2ping --listen
And run 2ping on the near end, connecting to the far end listener:
2ping $LISTENER
Where "$LISTENER" is the name or IP address of the listener.
2ping - A bi-directional ping utility
Copyright (C) 2015 Ryan Finnie
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.