tcp连接阿里云linux服务器失败

news2024/12/23 17:19:17

原因:

自己程序bind的是127.0.0.1

应该改成 bind 阿里云的私网地址

client连接的是阿里云公网地址

参考:

阿里云服务器,客户端socket无法连接的问题 - 爱码网

排查过程记录:

1,安全组设置:有正常设置

2,防火墙有没有允许端口:已经允许

root@iZwz9hty12mlm1wlg0jzn0Z:~# ufw allow 8080/tcp
Rule added
Rule added (v6)
root@iZwz9hty12mlm1wlg0jzn0Z:~# ufw status verbose
Status: active
Logging: on (low)
Default: deny (incoming), allow (outgoing), disabled (routed)
New profiles: skip

To                         Action      From
--                         ------      ----
80/tcp                     ALLOW IN    Anywhere                  
80                         ALLOW IN    Anywhere                  
22/tcp                     ALLOW IN    Anywhere                  
443                        ALLOW IN    Anywhere                  
Anywhere                   ALLOW IN    192.168.1.192             
8080                       ALLOW IN    Anywhere                  
8080/tcp                   ALLOW IN    Anywhere                  
80/tcp (v6)                ALLOW IN    Anywhere (v6)             
80 (v6)                    ALLOW IN    Anywhere (v6)             
22/tcp (v6)                ALLOW IN    Anywhere (v6)             
443 (v6)                   ALLOW IN    Anywhere (v6)             
8080 (v6)                  ALLOW IN    Anywhere (v6)             
8080/tcp (v6)              ALLOW IN    Anywhere (v6) 

3,抓包: 三次握手就没握上

查看rst原因:

有以下情况会发送RST包

1.connect一个不存在的端口;

2.向一个已经关掉的连接send数据;

3.向一个已经崩溃的对端发送数据(连接之前已经被建立);

4.close(sockfd)时,直接丢弃接收缓冲区未读取的数据,并给对方发一个RST。这个是由SO_LINGER选项来控制的;

5.a重启,收到b的保活探针,a发rst,通知b。

TCP socket在任何状态下,只要收到RST包,即可进入CLOSED初始状态。

所以怀疑是不是端口没litsen:

netstat -anp | grep 8080

得到又不是

8080       0.0.0.0:*               LISTEN  

4,再次搜索socket连接不上原因  找到文章

阿里云服务器,客户端socket无法连接的问题 - 爱码网

改bind的ip试下,成功。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/562615.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【C++】 模板(泛型编程、函数模板、类模板)

文章目录 模板泛型编程概念 函数模板常规使用显式指定及默认值多模板参数模板函数的声明和定义用函数模板优化冒泡排序 类模板常规使用显式指定及默认值多模板参数类中成员函数的定义和声明嵌套的类模板1.类和类型都能确定2.类和类型都不能确定3.类能确定,类型不确定…

Unity3D下如何实现跨平台低延迟的RTMP、RTSP播放

技术背景 好多开发者,希望我们能探讨下Unity平台RTMP或RTSP直播流数据播放和录制相关的模块,实际上,这块流程我们已经聊过多次,无非就是通过原生的RTMP或者RTSP模块,先从协议层拉取到数据,并解包解码&…

常用的表格检测识别方法——表格结构识别方法(上)

第三章 常用的表格检测识别方法 3.2表格结构识别方法 表格结构识别是表格区域检测之后的任务,其目标是识别出表格的布局结构、层次结构等,将表格视觉信息转换成可重建表格的结构描述信息。这些表格结构描述信息包括:单元格的具体位置、单元格…

子网掩码计算方法

子网掩码是用来划分网络的一种方式,它是一个32位的二进制数,用于将IP地址分成网络地址和主机地址两部分。子网掩码中的1表示网络地址,0表示主机地址。计算子网掩码的方式取决于需要划分的网络数量和主机数量。 以下是一些计算子网掩码的示例…

【LeetCode热题100】打卡第2天:两数相加

两数相加 ⛅前言 大家好,我是知识汲取者,欢迎来到我们的LeetCode热题100刷题专栏! 精选 100 道力扣(LeetCode)上最热门的题目,适合初识算法与数据结构的新手和想要在短时间内高效提升的人,熟练…

【2】tensorflow基本概念及变量函数

目录 1 tensorflow运行机制 1.1 搭建计算图模型 计算图的概念 计算图的使用 新建计算图 1.2 在会话中执行计算图 会话的启动方式 1.3 指定计算图的运行设备 2 tensorflow数据模型 2.1 认识张量及属性 张量的类型 张量的阶 2.2 张量类型转换和形状变换 张量类型转换 张…

TwinCAT ENI 数据详解

使用倍福TwinCAT工具可以生成ENI,先对ENI的cyclic frame数据进行解释说明 需要提前了解EtherCAT报文格式,可参考下面文章 EtherCAT报文格式详解_ethercat listtype 1_EtherCat技术研究的博客-CSDN博客https://blog.csdn.net/gufuguang/article/details/…

理解HAL_UARTEx_ReceiveToIdle_IT的工作过程

先只看没错误发生, 没开DMA时候的情况 将会面临3种结局, 收满数据时候IDLE正好发生, 数据发多了, 数据已经收满时候IDLE还没发生IDLE发生了数据没收满, 首先: 接收开始 主要的动作是 1. status UART_Start_Receive_IT(huart, pData, Size); 开始中断接口 2.…

【国产虚拟仪器】基于 ZYNQ 的电能质量系统高速数据采集系统设计

随着电网中非线性负荷用户的不断增加 , 电能质量问题日益严重 。 高精度数据采集系统能够为电能质 量分析提供准确的数据支持 , 是解决电能质量问题的关键依据 。 通过对比现有高速采集系统的设计方案 , 主 控电路多以 ARM 微控制器搭配…

1992-2022年经过矫正的夜间灯光数据

夜间灯光数据是我们在各项研究中经常使用的数据!我们平时使用的夜间灯光数据主要来源于NPP/VIIRS和DMSP/OLS两种渠道,我们之前也分享过这两种来源的夜间灯光数据,包括: 2012-2021年逐年的NPP/VIIRS夜间灯光数据2012-2021年逐月的…

MySQL查询性能优化之索引覆盖、索引下推、索引潜水、索引合并

索引覆盖 什么是索引覆盖 select的数据列只用从索引中就能够取得,不必读取数据行,换句话说查询列要被所建的索引覆盖。 如何实现索引覆盖? 最常见的方法就是:将被查询的字段,建立到联合索引(如果只有一…

python---变量(2)

此处,首次使用“”对a进行设置值,也就是对a的初始化。 后续位置对a使用“”,实际上是对a赋值。 因此两行代码得到的结果显然是不同的! 变量的种类 1.整数-int-根据数据大小自动扩容 python中的变量类型不需要显示声明&#…

关于 arduino 中的 constrain(x, a, b)函数

当我们需要将一个变量的值限制在某个范围内时,可以使用 constrain(x, a, b) 函数来实现。该函数可以将参数 x 的值限制在区间 [a, b] 之间,如果 x 小于 a,则返回 a,如果 x 大于 b,则返回 b,否则返回 x。下面…

第五篇、基于Arduino uno,获取超声波(HC04)传感器的距离数据——结果导向

0、结果 说明:先来看看串口调试助手显示的结果,显示的是一个距离值,如果是你想要的,可以接着往下看。 1、外观 说明:虽然超声波传感器形态各异,但是原理和代码都是适用的。 2、连线 说明:只…

材料力学-剪力和弯矩方向规定及关系

剪力和弯矩的方向规定方法 对水平梁的某一指定截面来说, 剪力:在它左侧的向上外力,或右侧的向下外力,将产生正的剪力;反之,即产生负的剪力。 自己的记法(可以不按我的来)&#xff1…

ChatGPT:你真的了解网络安全吗?浅谈网络安全攻击防御进行时之网络安全新总结

ChatGPT:你真的了解网络安全吗?浅谈网络安全攻击防御进行时 网络安全新总结 ChatGPT(全名:Chat Generative Pre-trained Transformer),美国OpenAI 研发的聊天机器人程序,是人工智能技术驱动的自…

ChatGPT在数据分析中的应用

最近,机器学习和人工智能技术在数据分析领域中发挥着越来越大的作用。而chatgpt正是这个领域最受欢迎的仿人聊天 AI 。但是,对于许多数据科学家和分析师来说,chatgpt并不是他们首选的工具。相反,pandas、sk-learn是数据科学家的最…

一起来聊聊ERP

聊聊ERP 哈喽,哈喽,大家好!今天开始,我们就来讲ERP了。 什么是ERP ERP是Enterprise Resource Planning 的缩写,中文含义是企业资源计划。它代表了当前在全球范围内应用最广泛、最有效的一种企业管理方法,…

JVM系列-第12章-垃圾回收器

垃圾回收器 GC 分类与性能指标 垃圾回收器概述 垃圾收集器没有在规范中进行过多的规定,可以由不同的厂商、不同版本的JVM来实现。 由于JDK的版本处于高速迭代过程中,因此Java发展至今已经衍生了众多的GC版本。 从不同角度分析垃圾收集器,…

gym不渲染画面的解决方案(gym版本号0.26.2)

确认gym版本号 我安装了新版gym,版本号是0.26.2,不渲染画面的原因是,新版gym需要在初始化env时新增一个实参render_mode‘human’,并且不需要主动调用render方法,官方文档入门教程如下 import gym import numpy as n…