tcp端口检测

# coding=utf-8
import sys
import socket
import re

def check_server(address, port):
    s = socket.socket()
    print ‘Attempting to connect to %s on port %s‘ % (address, port)
    try:
        s.connect((address, port))
        print ‘Connected to %s on port %s‘ % (address, port)
        return True
    except socket.error as e:
        print ‘Connection to %s on port %s failed: %s‘ % (address, port, e)
        return False

if __name__ == ‘__main__‘:
    from argparse import ArgumentParser
    parser = ArgumentParser(description=u‘TCP端口检测‘)
    parser.add_argument(
        ‘-a‘,
        ‘--address‘,
        dest=‘address‘,
        default=‘localhost‘,
        help=‘address for the server‘)
    parser.add_argument(
        ‘-p‘,
        ‘--port‘,
        dest="port",
        default=80,
        type=int,
        help=‘port for the server‘)
    args = parser.parse_args()
    check = check_server(args.address, args.port)
    print ‘check_server returned %s‘ % check
    sys.exit(not check)

测试结果:

[[email protected] Python]$python check_server.py && echo "SUCCESS"
Attempting to connect to localhost on port 80
Connected to localhost on port 80
check_server returned True
SUCCESS
[[email protected]-vm Python]$python check_server.py -p 81 && echo "Failure"
Attempting to connect to localhost on port 81
Connection to localhost on port 81 failed: [Errno 111] Connection refused
check_server returned False
[[email protected]-vm Python]$python check_server.py -p 81 || echo "Failure"
Attempting to connect to localhost on port 81
Connection to localhost on port 81 failed: [Errno 111] Connection refused
check_server returned False
Failure

附:

shell中&&和||的使用方法

命令的返回结果:真(返回0),假(返回非0)

command1  && command2: command1返回真时,command2才会被执行

command1  || command2:command1返回真时,command2就不会被执行

时间: 2024-10-10 17:31:20

tcp端口检测的相关文章

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

1.常用的用法(windows) tcp -w 10 -t -d -i 5 -j --color 81.156.165.66 443 2. http模式 -u,与-h命令连用,每一行输出目标的url destination,可以是DNS地址.IP地址.URL(需要使用-h,http模式).使用http模式时,不要加https//或:port,例如:tcping http://www.elifulkerson.com:8080/index.html就会失败,使用tcping www.elifulk

Python—端口检测

#!/usr/bin/evn python #-*-coding:utf-8 -*- import sys, socket from argparse import ArgumentParser from optparse import OptionParser def net_is_used(port,ip='127.0.0.1'): s = socket.socket(socket.AF_INET,socket.SOCK_STREAM) try: s.connect((ip,port)) s

Python3实现TCP端口扫描

在渗透测试的初步阶段通常我们都需要对攻击目标进行信息搜集,而端口扫描就是信息搜集中至关重要的一个步骤.通过端口扫描我们可以了解到目标主机都开放了哪些服务,甚至能根据服务猜测可能存在某些漏洞. TCP端口扫描一般分为以下几种类型: TCP connect扫描:也称为全连接扫描,这种方式直接连接到目标端口,完成了TCP三次握手的过程,这种方式扫描结果比较准确,但速度比较慢而且可轻易被目标系统检测到. TCP SYN扫描:也称为半开放扫描,这种方式将发送一个SYN包,启动一个TCP会话,并等待目标响应

DNS同时占用UDP和TCP端口53——传输数据超过512时候用tcp,DNS服务器可以配置仅支持UDP查询包

DNS同时占用UDP和TCP端口53是公认的,这种单个应用协议同时使用两种传输协议的情况在TCP/IP栈也算是个另类.但很少有人知道DNS分别在什么情况下使用这两种协议. 先简单介绍下TCP与UDP.     TCP是一种面向连接的协议,提供可靠的数据传输,一般服务质量要求比较高的情况,使用这个协议.UDP---用户数据报协议,是一种无连接的传输层协议,提供面向事务的简单不可靠信息传送服务. TCP与UDP的区别:     UDP和TCP协议的主要区别是两者在如何实现信息的可靠传递方面不同.TC

Zabbix系列之五——监控TCP端口

监控端口的几个主要Keys: net.tcp.listen[port] Checks if this port is in LISTEN state. 0 - it is not, 1 - it is in LISTEN state. 监控TCP端口是否监听 net.tcp.port[<ip>,port] Check, if it is possible to make TCP connection to the port number. 0 - cannot connect, 1 - can

zabbix3.4上使用自定义脚本监控公网tcp端口时延情况

我们搭建了***,主要是利用公网地址上tcp端口映射进行连接,从而达到访问的目的.但是有时候,网络不稳定,或者是公网地址震荡异常,导致***连接异常,所以我们很有必要监控tcp端口的连接的时延情况,当时延大于1000ms时,会严重的影响到使用体验,这时就要排查网络原因了. 如果能利用zabbix监控tcp端口的情况,并统计,当达到一定阈值的时候就告警,方便及时排查. 一.思路     1.linux上,可以使用nmap程序扫描端口之外,还可以统计大致的扫描结果,可以利用每次扫描端口的耗时来衡量网

tcping端口检测工具使用

大家都知道检测网络状态是,无论是服务器/客户机 最常用的就是ping命令,但ping命令只能检测ICMP协议,若对方禁止ping协议了,自然ping命令也就无法检测了,此时,我们可以通过tcping工具以tcp/udp协议方式来代替ping命令检测网络延迟状况,于此同时,我们还可以监听对方开放了哪些端口等信息. windos下: 1.安装tcping工具 去官网下载tcping工具(根据自身系统选择32位/64位)https://elifulkerson.com/projects/tcping.

【翻译自mos文章】OGG replicat 进程使用的 TCP 端口

OGG replicat 进程使用的 TCP 端口 来源于: TCP PORT USED BY REPLICAT PROCESSES (文档 ID 1060954.1) 适用于: Oracle GoldenGate - Version 10.4.0.12 and later Information in this document applies to any platform. ***Checked for relevance on 25-May-2012*** 症状: 若是一个客户基于少量的

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

使用工具:python2.7,pyqt4,pyinstaller,pywin32 先贴代码 1 import sys 2 from PyQt4 import QtGui,QtCore 3 4 import threading 5 import thread 6 import os 7 import re 8 import urllib 9 import socket 10 import time 11 12 13 global maxNum 14 global cnt 15 global sig