很多时候,我们需要测试 tcp 端口。ping 命令虽然好用,但不能测试端口,因为 ping 基于ICMP协议,属于IP层协议,所以无法测试传输层的 TCP/UDP 端口。幸好有tcping命令,可以实现tcp端口检测。

1. 用途
监听主机的端口状态,默认是80端口,也可以指定其它端口

看到ping返回的时间,检测主机是否有延时或者端口不通

2. 安装

访问tcping主页,下载安装包tcping-1.3.5.tar.gz,编译安装tcping(需要安装gcc、make)。
# tar zxvf tcping-1.3.5.tar.gz

# cd tcping-1.3.5

# yum install -y gcc

# make

# cp tcping /usr/bin/

3. tcping参数详解

  • 描述

在本地主机和远程主机之间,tcping可以测试出执行TCP三次握手所需的时间(SYN,SYN / ACK,ACK)。最终ACK传送时间不包括在内,只有最少的时间才能将其丢弃在近端的电线。

选项
-4,优先使用IPv4

-6,优先使用IPv6

-h,使用http模式

-t,让命令持续运行,直到使用ctrl + c指令退出

-n 数字,发送命令的次数,默认4次

-i 数字,发送ping命令的时间间隔,默认1s,可以为小数

-w 数字,等待响应的时间间隔,默认2s,可以为小数

-d,使输出的每一行显示时间和日期

-f,强制ping命令至少发送一个比特(byte)

-g 数字,失败指定次就放弃(注意默认是80端口,若其他端口没开也算失败)

-b 数字,开启蜂鸣器,参数4会一直响铃

-c,只显示改变的信息(ping时间很短一般不会改变)

-r 数字,每发送指定个数据包,就重新查找主机一次(通过DNS或路由查找)

-s,ping通就立即退出

-u,与-h命令连用,每一行输出目标的url

-v,显示版本信息

-j,使用默认的方法,求ping的均值减小波动,网络有一定的不稳定性时,用此参数可以减小波动

-js 数字,用指定个实例求平均值减小波动,使用这个参数,系统会tcping 指定次,然后求出平均值作为一次结果显示,减小波动

–tee file_path,将结果输出到指定位置,tcping –tee /data/test.txt192.168.0.100,会把ping的结果保存在/data下的test文件中

–file,从文件中获得ping的来源;在/data下新建一个test.txt文件,并输入要tcping的所有ip或域名,一行一个,然后执行命令tcping –file /data/test.txt,就会依次tcping文件中指定的地址

destination,可以是DNS地址、IP地址、URL(需要使用-h,http模式)。使用http模式时,不要加https//或:port,例如:tcping http://www.elifulkerson.com:8080/index.html就会失败,使用tcping www.elifulkerson.com/index.html 8080就会成功

port 数字,指定tcp端口(1-65535),如果不指定,默认是80

–header,在头部显示时间和日期,与–tee显示的格式差不多

–block,tcping不通的等待时间,默认是20秒(很长)。–block可以把-w参数冲突掉 ,例如tcping --block www.baiu.com网址不正确,显然tcpping不通,默认会等待20s 。 tcping -w 0.5 –block www.baiu.com还是会等20s,而不是0.5s,因为–block选项会把-w选项冲突掉。

HTTP模式选项
–post,在http模式中,使用post方法

–head,在http模式中,使用head方法

–get Shorthand to invoke “http” mode for consistency’s sake.

–proxy-server,指定代理服务

–proxy-port,指定代理服务端口

–proxy-credentials username:password,使用代理的安全验证,需要输入用户名和密码

返回值
如果所有的pings是成功的,返回0;如果所有ping都失败,返回1;混合结果,返回2

tcping is available at http://www.elifulkerson.com/projects/tcping.php

4. 开放端口和关闭端口
查看哪些端口被打开
# netstat -anp

防火墙关闭端口
# iptables -A INPUT -p tcp --drop 端口号-j DROP

# iptables -A OUTPUT -p tcp --dport 端口号-j DROP

防火墙打开端口
# iptables -A INPUT -p tcp --dport 端口号-j ACCEPT

linux打开端口
// 打开telnet23端口
# nc -lp 23 &

// 查看23端口是否打开
# netstat -an | grep 23

注意:linux每打开一个端口,都需要有相应的监听程序。

5. 实例
# tcping -d -h -u -n 10 -i 0.1 -w 0.1 192.168.1.30 6001

意思:使用http模式(-h),并且在返回数据中显示目标源url地址

(-u),向主机ip为192.168.1.30的6001端口发送10次数据包

(-n 10),在返回数据行中显示发送数据包的日期

(-d),指定每次发送数据包的时间间隔为0.1秒

(-i 0.1),等待数据包相应的时间间隔为0.1秒

(-w 0.1) 注:-t和-n同时存在时,优先指定-n,即tcping -t -n 10 192.168.1.30命令只会发送10次数据包,并不是像-t一样持续发送。

 

TCP端口检测工具的更多相关文章

  1. tcping ,一个好用的TCP端口检测工具

    1.常用的用法(windows) tcp -w 10 -t -d -i 5 -j --color 81.156.165.66 443 2. http模式 -u,与-h命令连用,每一行输出目标的url ...

  2. tcp端口检测

    # coding=utf-8 import sys import socket import re def check_server(address, port): s = socket.socket ...

  3. tcping端口检测工具使用

    大家都知道检测网络状态是,无论是服务器/客户机 最常用的就是ping命令,但ping命令只能检测ICMP协议,若对方禁止ping协议了,自然ping命令也就无法检测了,此时,我们可以通过tcping工 ...

  4. 全平台正向tcp端口转发工具rinetd的使用

    Linux下做地址NAT有很多种方法.比如haproxy.nginx的4层代理,linux自带的iptables等都能实现.其实,Linux下有一个叫rinetd的工具,安装简单,配置也不复杂. 下载 ...

  5. py2.7+pyqt4开发端口检测工具

    使用工具:python2.7,pyqt4,pyinstaller,pywin32 先贴代码 import sys from PyQt4 import QtGui,QtCore import threa ...

  6. Python-通过socket实现一个小型的端口检测工具

    实验机器IP:192.168.220.139,端口开放情况 代码 # -*- coding:utf-8 -*- __author__ = "MuT6 Sch01aR" import ...

  7. 安全测试 - 端口嗅探工具Nmap

    Nmap 在官网下载nmap端口检测工具https://nmap.org/,nmap是一个网络连接端扫描软件,用来扫描网上电脑开放的网络连接端. 使用: 通过cmd命令:nmap www.5i5j.c ...

  8. Python—端口检测(socket)

    基于python检测端口是否在使用 原理:创建一个socket服务,连接对应的 ip:port ,如果能够连接,说明端口被占用:若端口可用,则不可连接. #!/usr/bin/evn python # ...

  9. 基于端口的弱口令检测工具--iscan

    亲手打造了一款弱口令检测工具,用Python编写,主要可以用于内网渗透.弱口令检测等方面,目前集成了常见端口服务,包含 系统弱口令:ftp.ssh.telnet.ipc$ 数据库弱口令:mssql.m ...

随机推荐

  1. 剑指offer-01

    好久没看java, 今天把 runoob 上的java基础简单过了一遍. 来吧,怎么整这个题目呢? 首先遇到的问题是java如何输入一个数组,而且这个数组并不知道长度是多少 用Scanner类 Sca ...

  2. DS博客作业01--日期抽象数据类型设计与实验

    1.思维导图及学习体会(2分) 1.1第一章绪论知识点思维导图 1.2 学习体会 2.大作业作业内容 (6分) 2.1 设计日期的ADT类型(1分) ADT DATE{ 数据对象:D={year,mo ...

  3. python实现单线程多任务非阻塞TCP服务端

    代码 # coding:utf- from socket import * # .创建服务器socket sock = socket(AF_INET, SOCK_STREAM) # .绑定主机和端口 ...

  4. Cookie、Session和自定义分页

    一.cookie Cookie的由来 大家都知道HTTP协议是无状态的. 无状态的意思是每次请求都是独立的,它的执行情况和结果与前面的请求和之后的请求都无直接关系,它不会受前面的请求响应情况直接影响, ...

  5. 【论文速读】Multi-Oriented Scene Text Detection via Corner Localization and Region Segmentation[2018-CPVR]

    方法概述 该方法用一个端到端网络完成文字检测整个过程——除了基础卷积网络(backbone)外,包括两个并行分支和一个后处理.第一个分支是通过一个DSSD网络进行角点检测来提取候选文字区域,第二个分支 ...

  6. nodemanager 无法启动报错“doesn't satisfy minimum allocations”

    在启动nodemanager节点nodemanager时候报错 2019-03-29 14:15:44,648 INFO org.apache.hadoop.yarn.server.nodemanag ...

  7. idea crack

    ThisCrackLicenseId-{ “licenseId”:”11011”, “licenseeName”:”Wechat”, “assigneeName”:”tree-deep-see-dee ...

  8. 阿里云Oss对象存储

    将文件保存到阿里云上. 1.添加对象存储OSS空间 (新建Bucket) 可以在阿里云后台对象存储里面添加,也可以通过api添加.添加之后设置权限. skd使用. 1安装 Aliyun.OSS.SDK ...

  9. java字符串截取指定下标位置的字符串

    public class A { public static void main(String[] args) { //定义的字符串 String s = "Hello World" ...

  10. taotao商城遇到的问题

    1,在进行测试的时候,访问:http://localhost:8080/taotao-manager-web/ 可以出现首页 2,做了mybatis逆向工程之后,整合了spring,mybatis,测 ...