java tcp 获取状态_TCP连接状态
服务端,端口的状态变化
先在本机(IP地址为:192.168.1.10)配置FTP服务,然后在其它计算机(IP地址为:192.168.1.1)访问FTP服务,从TCPView看看端口的状态变化。
下面黑体字显示的是从TCPView中截取的部分。
1、LISTENING状态
FTP服务启动后首先处于侦听(LISTENING)状态。
State显示是LISTENING时表示处于侦听状态,就是说该端口是开放的,等待连接,但还没有被连接。就像你房子的门已经敞开的,但还没有人进来。
从TCPView可以看出本机开放FTP的情况。它的意思是:程序inetinfo.exe开放了21端口,FTP默认的端口为21,可见在本机开放了FTP服务。目前正处于侦听状态。
inetinfo.exe:1260 TCP 0.0.0.0:21 0.0.0.0:0 LISTENING
2、ESTABLISHED状态
现在从192.168.1.1这台计算机访问一下192.168.1.10的FTP服务。在本机的TCPView可以看出端口状态变为ESTABLISHED。
ESTABLISHED的意思是建立连接。表示两台机器正在通信。
下面显示的是本机的FTP服务正在被192.168.1.1这台计算机访问。
inetinfo.exe:1260 TCP 192.168.1.10:21 192.168.1.1:3009 ESTABLISHED
注意:处于ESTABLISHED状态的连接一定要格外注意,因为它也许不是个正常连接。后面我们要讲到这个问题。
3、 TIME_WAIT状态
现在从192.168.1.1这台计算机结束访问192.168.1.10的FTP服务。在本机的TCPView可以看出端口状态变为TIME_WAIT。
TIME_WAIT的意思是结束了这次连接。说明21端口曾经有过访问,但访问结束了。
[System Process]:0 TCP 192.168.1.10:21 192.168.1.1:3009 TIME_WAIT
4、小技巧
a、可以telnet一个开放的端口,来观察该端口的变化。比如看1025端口是开放的,在命令状态(如图1运行cmd)运行:
telnet 192.168.1.10 1025
b、从本机也可以测试,只不过显示的是本机连本机
c、在Tcpview中双击连接可看出程序的位置,右键点击该连接,选择End Process即可结束该连接
客户端,端口的状态变化
客户端口实际上就是从本机访问其它计算机服务时打开的源端口,最多的应用是上网,下面就以访问www.baidu.com为例来看看端口开放以及状态的变化情况。
1、SYN_SENT状态
SYN_SENT状态表示请求连接,当你要访问其它的计算机的服务时首先要发个同步信号给该端口,此时状态为SYN_SENT,如果连接成功了就变为ESTABLISHED,此时SYN_SENT状态非常短暂。但如果发现SYN_SENT非常多且在向不同的机器发出,那你的机器可能中了冲击波或震荡波之类的病毒了。这类病毒为了感染别的计算机,它就要扫描别的计算机,在扫描的过程中对每个要扫描的计算机都要发出了同步请求,这也是出现许多SYN_SENT的原因。
下面显示的是本机连接www.baidu.com网站时的开始状态,如果你的网络正常的,那很快就变为ESTABLISHED的连接状态。
IEXPLORE.EXE:2928 TCP 192.168.1.10:1035 202.108.250.249:80 SYN_SENT
2、ESTABLISHED状态
下面显示的是本机正在访问www.baidu.com网站。如果你访问的网站有许多内容比如访问www.yesky.com,那会发现一个地址有许多ESTABLISHED,这是正常的,网站中的每个内容比如图片、flash等都要单独建立一个连接。看ESTABLISHED状态时一定要注意是不是IEXPLORE.EXE程序(IE)发起的连接,如果是EXPLORE.EXE之类的程序发起的连接,那也许是你的计算机中了木马了。
IEXPLORE.EXE:3120 TCP 192.168.1.10:1045 202.108.250.249:80 ESTABLISHED
3、TIME_WAIT状态
如果浏览网页完毕,那就变为TIME_WAIT状态。
[System Process]:0 TCP 192.168.1.10:4259 202.108.250.249:80 TIME_WAIT
java tcp 获取状态_TCP连接状态相关推荐
- 连接状态_TCP 连接状态及相关命令学习
在平时的开发工作中,我们都使用被封装完好的 TCP/HTTP 库去完成需求开发,很少关心底层 TCP 的连接状态,但是一旦遇到较难定位的线上事故,往往都是因为 TCP 连接参数或者使用姿势不对导致的, ...
- java tcp 断开检测_TCP连接网线断开时的情况测试
TCP send断开的一些测试 测试结论: 服务端循环接收,客户端每隔1s发送,使用默认缓冲区大小,短暂断开服务端网线后再接上(3s左右),现象是客户端继续发送无异常,服务端接收阻塞10s左右后,会一 ...
- 怎样使用C# 获取WIFI的连接状态?
怎样使用C# 获取WIFI的连接状态? 行文导航 思路 问题得到解决 代码展示 断开与连接WIFI状态效果 在OrangePI Linux Arm32上的测试效果 C# 获取WIFI的连接状态 本文是 ...
- 请使用命令行统计各tcp状态的数量_TCP 连接状态及相关命令学习
在平时的开发工作中,我们都使用被封装完好的 TCP/HTTP 库去完成需求开发,很少关心底层 TCP 的连接状态,但是一旦遇到较难定位的线上事故,往往都是因为 TCP 连接参数或者使用姿势不对导致的, ...
- iOS获取当前网络连接状态WiFi、5G、4G、3G、2G
iOS获取网络连接状态 通过AFNetworking获取的网络状态只有未知.无网络连接.手机自带网络.WIFI,需求是需要准确的定位到是WiFi.5G.4G.3G.2G,所以AFNetworking并 ...
- java tcp端口复用_tcp端口复用
Java TCP/IP协议的Socket如何设置端口复用? 情境如下: 1). 使用new Socket(ServerAddress, ServerPort, ClientAddr你的其中一端的连接没 ...
- kotlin_08:wlan直连/wifi_p2p的页面跳转以及实时获取连接状态
前言之前一段时间一直加班,淦.五一,有点时间,简单的陈述一下,wlan直连页面的跳转和状态获取以及监听. 1. 先看效果 2. 布局文件 2.1 wifi_p2p_actvity_main.xml & ...
- iptables防火墙的连接状态
前言 在前面的文中讲过了iptables防火墙连接状态中的ESTABLISHED状态(http://waringid.blog.51cto.com/65148/512140).除了这个状态之外,ipt ...
- Java-MQTT客户端监控连接状态事件
MQTT客户端监控连接状态事件 项目采用paho.mqtt.java客户端,需要监控连接状态变更事件,以进行异常维测和处理. 代码中提供了MqttCallback接口如下: org.eclipse.p ...
最新文章
- 为你的程序添加监听器
- 2018宁夏邀请赛 - Copy and Submit II(推公式)
- group client policy无法登录,谢绝访问
- amqp rabbitmq_通过Spring Integration和RabbitMQ获得高可用性的AMQP支持的消息通道
- 2020-08-07
- sender分析之Selector
- 有没有轻便又好用的CRM管理应用?
- mysql5.7.20新特_Mysql5.7新特性
- 各种杀毒软件序列号注册码大全
- python查单词音标_有没有通过读音或音标就能查出英语单词的办法,比如发音查词软件?...
- Lum Proxy全球代理IP,真实家庭住宅网络!
- 通用计算机指令,计算机移位指令
- 易语言取颜色值与c语言,易语言如何取某坐标颜色值
- 计算机专业省赛一等奖有什么好处,厉害了!计算机应用专业的他获省级书法比赛一等奖...
- 【黑马Java笔记+踩坑】Maven高级
- latex(2)排版论文《自动化学报》
- Unity+Mirror实现虚拟现实下的多人连接
- kk音标导读(下):赖世雄老师26个英语字母导读示范 (附我备注)
- 一阶逻辑与二阶逻辑的区别【转】
- mac太空射击游戏:Nova Drift (新星漂移)中文版
热门文章
- 如何修复和解决 IP 地址冲突
- HTTPS协议详解(三):PKI 体系
- matlab bar中画显著性水平线,科学网—简析条形图(bar plot)上的误差线 - 于淼的博文...
- JSON里的大括号{}和中括号[]。(关于JSON的结构)
- chm文件打开空白无内容的解决办法
- 19-20-1计算机网络quiz7
- 五个简单的 Requests 库爬虫实例
- 红外扫码,条形码,小票打印,打印机
- css实现图片放大效果
- AI时代下的编程教育 | 蓝宙天枢人工智能学习套件线上首发