当前位置:  技术问答>linux和unix

linux下的一个socket可以先后连续连接不同的server吗?

    来源: 互联网  发布时间:2016-04-04

    本文导语:  要做一个端口扫描程序,运行在linux下。 先问一个问题:通过socket的connect,根据连接成功或失败,能不能作为端口开启的依据? 如果扫描某个端口,连接上了,如何继续用这个socket连接下一个端口?shutdown之后再conn...

要做一个端口扫描程序,运行在linux下。
先问一个问题:通过socket的connect,根据连接成功或失败,能不能作为端口开启的依据?

如果扫描某个端口,连接上了,如何继续用这个socket连接下一个端口?shutdown之后再connect,不行。能不能通过调用setsockopt使socket重复使用?

本来可以采用close之后,再创建一个socket的办法。不过epoll的脾气很怪,此时如果创建socket,对这个socket会一直收到EPOLLOUT消息,而我就是根据异步connect之后,产生的消息是EPOLLERR还是EPOLLOUT,来断定connect是否成功,这样就被干扰了。

|
to:如果扫描某个端口,连接上了,如何继续用这个socket连接下一个端口?shutdown之后再connect,不行。能不能通过调用setsockopt使socket重复使用? 

LZ可以通过bind来对指定的端口进行连接(port>1024)(最大的记不清了,好像是65535),,
例如:先指定一个port=5000,如果绑定成功,再指定下一个端口5001,这个循环下去,可以满足LZ的要求

shutdown之后不能重用,这里可能与2MSL有关,也就是在断开连接后一段时间内,此端口号是不能重用的,要
等到2MSL以后才可能重新连接,(MSL=60s,在正常情况下,也有可能是120s,不同的操作系统设定值不同)

 

|


还得用epoll,管他回不回呢,回就处理,不回自动超时再另行处理,so pretty

    
 
 

您可能感兴趣的文章:

  • 在XP下使用VMWare安装了Linux AS 5.6之后,使用FTP工具可以远程连接Linux,而在cmd命令行中却连接不上,什么原因 ?
  • linux 有线连接了却显示有线连接断开是怎么回事
  • 请问unix/linux下动态连接库和静态连接库有什么区别?
  • LINUX中连接C++的库怎么连接.库在什么位置,还有什么特殊命令吗?
  • 在linux下可以使用dao方式连接数据库吗?可以连接musql吗?回答就给分!急
  • 在线请教:linux下用MySQL C API 连接MySQL 4.1.12出现的连接问题,提示升级客户端!!!!!!
  • ftp连接问题,就是linux连接windows ftp的问题,高手请进(在线等待)!!!!!
  • Linux下的C++程序怎么连接WIN2000下的SQL Server 2000?或者如何连接MySQL?
  • linux 下连接创建连接数据库程序,什么都可以 。谁知道300分
  • [疑问] [linux网络连接]Linuxmint网络连接
  • LINUX C 进行TCP网络连接,怎样设置连接超时时间?
  • 我在telnet到linux上的时候报不能打开到主机的连接, 在端口23: 连接失败 请问是什么原因
  • linux vsftpd连接问题
  • Linux 下的C语言实现数据库连接池操作。
  • Linux 代理 一个客户端来就创建一个连接
  • SecureCRT连接linux。为什么我在linux的/etc/sysconfig/下找不到iptables?
  • linux问题 secureCRT连接的问题 在线等急!~~
  • 我想用Linux的串口和S3c2410x连接,请问在Linux里面怎么找到那个超级终端?
  • 高分求教,linux下的GPRS连接!!!
  • 用xmanager远程连接不上linux桌面
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 安装vmware软件,不用再安装linux系统,就可以模拟linux系统了,然后可以在其上学习一下LINUX下的基本操作 了?
  • 用linux(服)windows(客)传输文件,windows端可以,linux端不可以,怎么回事???
  • 求redhat linux 9.0下可以使用的oracle 10g或9i,还有redhat linux 9.0下可以使用的eclipse下载地址
  • WINDOWS下可以使用flashget来下载软件,那在linux下用什么工具软件来下载程序呢?哪里有linux平台下的下载工具可以下载?谢谢!
  • linux可不可以和windows共享??可以的话,该怎么做?
  • 可以从硬盘上安装redhat吗?linux可以用ghost备份吗?
  • 为什么我在linux7.1中有些命令有时可以用有时不可以用?
  • 我发现在Redhat Linux中有个选项可以连上MSN,不知怎么才可以连上,谢谢
  • linux如何创建一个共享内存 可以mount 可以创建目录之类 跟硬盘分区一样
  • 弱弱地问,请问从哪里可以下载到新版本常用的linux,可以直接制作成光盘进行安装吗?
  • linux可以限定访问的IP,可以限定访问的物理地址吗 ?
  • 请问直接把linux光盘里面的内容放到硬盘上面可不可以安装?如果可以的话要用哪一个执行文件安装?
  • Linux中最多同时可以开多少个进程,一个进程可以开多少个线程?
  • 关于大一的计算机系新手学习用虚拟机学习linux大家可以给点意见啊,以前完全没有接触过,可以指点下不
  • 论坛 iis7站长之家
  • 请问用jb7编写的程序是否可以超平台,即在win下写的程序是否可以在linux下运行?
  • linux下可不可以运行window下开发的程序啊,有没有什么方法可以办到啊?是用VB开发的!
  • 请问Linux下单个进程带有的线程数目的最大值在哪里可以查到呢,可以修改么?谢谢
  • linux下文件可以看到但不可以使用
  • 在linux(red hat 9.0)下可以直接安装windows版本的oracle8.17可以吗??
  • linux c/c++ IP字符串转换成可比较大小的数字
  • 在虚拟机上安装的linux上,能像真的linux系统一样开发linux程序么?
  • linux哪个版本好?linux操作系统版本详细介绍及选择方案推荐
  • 我重装window后,把linux的引导区覆盖了,进不了linux怎么办?急啊,望热心的人帮助 (现在有linux的盘)
  • secureCRT下Linux终端汉字乱码解决方法
  • 红旗Linux主机可以通过127.0.0.1访问,但如何是连网的Win2000机器通过Linux的IP去访问Linux
  • Linux c字符串中不可打印字符转换成16进制
  • 我重装window后,把linux的引导区覆盖了,进不了linux怎么办?急啊,望热心的人帮助 (现在没有linux的盘,只有DOS启动盘)
  • Linux常用命令介绍:更改所属用户群组或档案属性
  • 如何让win2000和linux共存。我装好WIN2000,再装LINUX7.0,但LILO只能找到LINUX,不能引导WIN2000
  • linux命令大全详细分类介绍及常用linux命令文档手册下载


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3