tcpingコマンドpingを使用してポートを指定する


pingはネットワーク接続の状況を簡単にテストする小さなツールで、一般ユーザーにとって実用的ですが、pingにはポートを指定できないという欠点があります.また、ソースアドレスがpingを禁止すると、pingコマンドが虚構になります.--前言
tcpingコマンドはtcpモニタリングに対してもping値が表示され、ソースアドレスのping禁止でもtcpingによってサーバネットワーク状態をモニタリングすることができ、簡単なpingのほか、tcpingの最大の特徴はモニタリングのポートを指定できることである.tcpingコマンドの使い方は簡単です
  • tcpingツールをダウンロードします.http://www.elifulkerson.com/projects/tcping.php(具体バージョン:32 bit、64 bit)
  • がダウンロードするtcping.exe又はtcping 64.exeファイルはC:WindowsSystem 32ディレクトリの下に置く(pingコマンドもこのディレクトリの下にある)
  • 使用コマンド:tcping 64-d-t 127.0.0.1 6001
  • 注意:tcpingをダウンロードした場合はexeはファイル名を変更していないので、cmdで使用する場合はtcping-p ip xxxを入力して使用する必要があります.もしあなたが64 bitのtcping 64をダウンロードしたら.exeはファイル名を変更せず、cmdで使用する場合はtcping 64-p ip xxxを入力して使用する必要があります
    公式使用チュートリアル
    NAME
        tcping - simulate "ping" over tcp by establishing a connection to network hosts.
        Measures the time for your system to [SYN], receive the target's [SYN][ACK] and send [ACK].  Note that the travel time for
        the last ACK is not included - only the time it takes to be put on the wire a the sending end.
    SYNOPSIS
        tcping [-tdsvf46] [-i interval] [-n times] [-w interval] [-b n] [-r times][-j depth] [--tee filename] [-f] destination [port]
    DESCRIPTION
        tcping measures the time it takes to perform a TCP 3-way handshake (SYN, SYN/ACK, ACK) between itself and a remote host.
        The travel time of the outgoing final ACK is not included, only the (minimal) amount of time it has taken to drop it on
        the wire at the near end.  This allows the travel time of the (SYN, SYN/ACK) to approximate the travel time of the
        ICMP (request, response) equivalent.
    OPTIONS
        -4      Prefer using IPv4
        -6      Prefer using IPv6
        -t      ping continuously until stopped via control-c
        -n count
                send _count_ pings and then stop.  Default 4.
        -i interval
                Wait _interval_ seconds between pings.  Default 1.  Decimals permitted.
        -w interval
                Wait _interval_ seconds for a response.  Default 2.  Decimals permitted.
        -d      include date and time on every output line
        -f      Force sending at least one byte in addition to making the connection.
        -g count
                Give up after _count_ failed pings.
        -b type
                Enable audible beeps.
                '-b 1' will beep "on down".  If a host was up, but now its not, beep.
                '-b 2' will beep "on up".  If a host was down, but now its up, beep.
                '-b 3' will beep "on change".  If a host was one way, but now its the other, beep.
                '-b 4' will beep "always".
        -c      only show output on a changed state
        -r count
                Every _count_ pings, we will perform a new DNS lookup for the host in case it changed.
        -s      Exit immediately upon a success. 
        -v      Print version and exit.
        -S source_address
                Use _source_address_ as the tcp client's source address.  Must be a valid IP address on the client system.
    
        -j      Calculate jitter.  Jitter is defined as the difference between the last response time and the historical average.
        -js depth
                Calculate jitter, as with -j but with an optional _depth_ argument specified. If _depth_ is specified tcping will
                use the prior _depth_ values to calculate a rolling average.
        --tee _filename_
                Duplicate output to the _filename_ specified.  Windows can still not be depended upon to have a useful command line 
                environment. Don't tease me, *nix guys.   
        --file
                Treat the "destination" option as a filename.  That file becomes a source of destinations, looped through on a
                line by line basis.  Some options don't work in this mode and statistics will not be kept.
        destination
                A DNS name, an IP address, or (in "http" mode) a URL.
                Do not specify the protocol ("http://") in "http" mode.  Also do not specify server port via ":port" syntax.
                For instance:   "tcping http://www.elifulkerson.com:8080/index.html" would fail
                Use the style:  "tcping www.elifulkerson.com/index.html 8080" instead.                       
        port
                A numeric TCP port, 1-65535.  If not specified, defaults to 80.
        --header
                include a header with the command line arguments and timestamp.  Header is implied if using --tee.
        --block
                use a "blocking" socket to connect.  This prevents -w from working, uses the default timeout of around 20 seconds,
                and might break other expected behavior.  However, it can detect an actively refused connection vs a timeout.   
    HTTP MODE OPTIONS   
        -h      Use "http" mode.  In http mode we will attempt to GET the specified document and return additional values including
                the document's size, http response code, kbit/s.
        -u      In "http" mode, include the target URL on each output line.
        --post  Use POST instead of GET in http mode.
        --head  Use HEAD instead of GET in http mode.
        --get   Shorthand to invoke "http" mode for consistency's sake.
        --proxy-server _proxyserver_
                Connect to _proxyserver_ to request the url rather than the server indicated in the url itself.
        --proxy-port _port_
                Specify the numeric TCP port of the proxy server.  Defaults to 3128.
        --proxy-credentials username:password
                Specify a username:password pair which is sent as a 'Proxy-Authorization: Basic' header.
    RETURN VALUE
        tcping returns 0 if all pings are successful, 1 if zero pings are successful and 2 for mixed outcome.
    BUGS/REQUESTS
        Please report bugs and feature requests to the author via contact information on http://www.elifulkerson.com
    AVAILABILITY
        tcping is available at http://www.elifulkerson.com/projects/tcping.php

    一般的なコマンド:
    -4/-6IPv4/IPv6-d       (       )
    -t       (-t        ,    ctrl + c    )
    -h       (  http  )
    -u       ( -h    ,     url)
    -n      (       ,  4-i        (         ,  1s,     )
    -w        (          ,  2s,     )

    実際の応用
    C:\Users\zhangyd>tcping64 -d -h -u -n 10 -i 0.1 -w 0.1 xxx.xx.xxx.xx 6001
    ** Pinging continuously.  Press control-c to stop **
    ** Requesting  from xxx.xx.xxx.xx:
    (for various reasons, kbit/s is an approximation)
    2016:12:06 10:36:07 Probing xxx.xx.xxx.xx:6001/tcp - HTTP is open - time=204.694ms page:http://xxx.xx.xxx.xx rcv_time=203.528 status=200 bytes=583 kbit/s=~22.916
    2016:12:06 10:36:07 Probing xxx.xx.xxx.xx:6001/tcp - HTTP is open - time=208.675ms page:http://xxx.xx.xxx.xx rcv_time=208.560 status=200 bytes=583 kbit/s=~22.363
    2016:12:06 10:36:08 Probing xxx.xx.xxx.xx:6001/tcp - HTTP is open - time=246.553ms page:http://xxx.xx.xxx.xx rcv_time=1040.546 status=200 bytes=583 kbit/s=~4.482
    2016:12:06 10:36:09 Probing xxx.xx.xxx.xx:6001/tcp - HTTP is open - time=181.520ms page:http://xxx.xx.xxx.xx rcv_time=183.293 status=200 bytes=583 kbit/s=~25.446
    2016:12:06 10:36:09 Probing xxx.xx.xxx.xx:6001/tcp - HTTP is open - time=195.658ms page:http://xxx.xx.xxx.xx rcv_time=202.854 status=200 bytes=583 kbit/s=~22.992
    2016:12:06 10:36:10 Probing xxx.xx.xxx.xx:6001/tcp - HTTP is open - time=181.833ms page:http://xxx.xx.xxx.xx rcv_time=186.513 status=200 bytes=583 kbit/s=~25.006
    2016:12:06 10:36:10 Probing xxx.xx.xxx.xx:6001/tcp - HTTP is open - time=227.706ms page:http://xxx.xx.xxx.xx rcv_time=226.750 status=200 bytes=583 kbit/s=~20.569
    2016:12:06 10:36:11 Probing xxx.xx.xxx.xx:6001/tcp - HTTP is open - time=247.957ms page:http://xxx.xx.xxx.xx rcv_time=263.903 status=200 bytes=583 kbit/s=~17.673
    2016:12:06 10:36:11 Probing xxx.xx.xxx.xx:6001/tcp - HTTP is open - time=235.967ms page:http://xxx.xx.xxx.xx rcv_time=187.247 status=200 bytes=583 kbit/s=~24.908
    2016:12:06 10:36:11 Probing xxx.xx.xxx.xx:6001/tcp - HTTP is open - time=257.262ms page:http://xxx.xx.xxx.xx rcv_time=264.820 status=200 bytes=583 kbit/s=~17.612
    Ping statistics for xxx.xx.xxx.xx:6001
         10 probes sent.
         10 successful, 0 failed.
    Approximate trip times in milli-seconds:
         Minimum = 181.520ms, Maximum = 257.262ms, Average = 218.782ms
    Approximate download times in milli-seconds:
         Minimum = 183.293ms, Maximum = 1040.546ms, Average = 296.801ms

    以上のコマンドの意味は、httpモード(-h)を用いる、戻りデータにターゲットソースurlアドレス(-u)を表示するようにipにxxxと解釈する.xx.xxx.xxポートが6001のサーバは、10回のパケット(-n 10)を送信し、戻りデータ行にパケット送信日時(-d)を表示し、パケット送信毎の間隔を0.1秒(-i 0.1)、パケット待ちの間隔を0.1秒(-w 0.1)と指定する
    注:-tと-nが同時に存在する場合、-nを優先的に指定する、すなわち、tcping 64-t-n 10 xxx.xx.xxx.xxコマンドはパケットを10回しか送信しません.-tの持続的な送信ではありません.