服务器设置了端口映射之后外网还是访问不了服务器

本文涉及的产品
云防火墙,500元 1000GB
简介: 服务器设置了端口映射之后外网还是访问不了服务器

我们在一个完整的网络数据存储服务系统设备中都会存有业务服务器、防火墙、交换机、路由器(可有可没有),其中的业务服务器主要用来数据存储,防火墙主要做安全防护,交换机、路由器主要是做用于局域网内部的数据传输,而路由器则用于不同网络之间的数据传输。两者结合使用可以构建一个完整的网络架构,实现数据在局域网和广域网之间的高效传输和通讯。

而我今天遇到一个网络异常问题,我将自己的排查思路和解决办法做记录,以便大家共同学习交流。首先我的网络拓扑为:

环境:办公电脑需要远程ssh到服务器1上面,防火墙已经是开好端口映射,能正常访问。集群三台服务器:服务器1、服务器2、服务器3,每台节点上有三个ip地址,其中一个ip地址为业务ip。

出现的问题为:我在集群服务器上做了系统升级之后,重启了系统(敲重点后面排查会与这个相关),之后发现办公电脑无法ssh到服务器1上面,而服务器1也无法ping通服务器A的地址,但是服务器2、3是可以ping通的,而我用笔记本直连服务器1是可以ssh的

排查思路参考:

1、确认服务是否在运行

检查服务器上对应端口的服务是否在运行。您可以使用命令行工具(如 netstat)或特定服务的控制台来验证服务状态。

检查服务器上的端口是正常启动的,端口也是开放的。

2、确认端口映射设置是否正确

  • 检查您的路由器或防火墙设置,确保端口映射规则正确地将外部流量引导到服务器的内部IP地址和端口。
  • 确保您正在使用正确的外部IP地址(公网IP)来访问服务器。

端口映射配置这个没问题,因为升级之前都是配置好的,都是正常通的。

3、使用防火墙测试到服务器的连通性

使用防火墙测试到服务器1的时候发现ping不通,防火墙无法ping通 通过端口映射访问服务器(而防火墙内部的:服务器1、服务器2、服务器3、服务器B之间相互都能ping通),这时就可以按照以下步骤进行排查:

1、检查防火墙设置

  • 确保防火墙允许 ICMP Echo 请求通过。有些防火墙默认情况下可能会禁止 ICMP 流量,包括 ping 请求。
  • 如果是在服务器上设置防火墙,例如 iptables,确保相应的规则允许 ICMP 流量通过。

2、确认网络连接:

确保防火墙和服务器之间的网络连接正常。可以尝试ping防火墙的内部地址,以确是否存在网络连接的问题

3、检查路由器设置:

如果服务器位于路由器后面,确保路由器上的防火墙设置正确,并且允许 ICMP Echo 请求通过。

因为我现场配置的是交换机,检查交换机的配置,交换机上面设置的网关1.254是ping通的,所以服务器到交换机那部分是没问题的。

4、检查服务内部的配置

4、检查服务器配置:

1、保服务器的网络配置正确,包括网关和子网掩码设置。如果网络配置有误,可能导致无法与防火墙进行通信。

2、测试网络连通性:检查到网关的连通性;检查内部网卡之间是否相互联通;检查集群之间的通信。

检查服务器配置,心里想着服务器配置没有做过任务更改的地方,不是配置的问题但是发现了服务器1主节点内部的三个网卡相互不通,其他两个IP无法ping通业务ip;子节点服务器2、服务器3也无法ping通服务器1主节点的业务ip,这里肯定有问题:顺藤摸瓜继续排查主节点服务器1的路由:

!!!发现多了一条默认路由:一般默认路由只有一条。同时还发现两个网卡里面都配置了网关,导致系统重启的时候重新加载了网络服务,导致多了两条默认路由。

多了一条默认路由的原因是:

服务器a主节点配了两个接口的地址和网关(比如eth0 配了IP和网关 eth1也配了网关),升级的时候重启了系统或者网络服务(我确实是升级了服务且重启了),他就生成了两条默认路由,系统会根据网卡配置文件的网关来创建默认路由

5、解决办法

1、删除多余的默认路由和删除其中一个网卡配置里面的网关配置:

查看路由:route -n

删除路由:类似于如下

ip route del 192.168.0.0/24 gw 192.168.0.1 ----del 删除路由 -net 设置到某个网段的路由 gw 出口网关

2、查看metric这个是优先级,越小越优先可以调的,两个都需要的话就把外网的调小点。

以上排查完之后,问题就解决了,防火墙能ping通我的服务器1,我的办公电脑也能通过NAT装换的地址访问到我的服务器1。

如果有到这一步问题还没解决的。分享下一步的排查思路:

  1. 使用其他工具进行测试

    如果 ICMP Echo 请求仍然无法通过,可以尝试使用其他工具(如 telnet)来测试端口映射是否正常工作。这可以帮助确定是 ICMP 相关的问题还是端口映射的问题。

     2检查网络设备日志

 查看路由器和防火墙等网络设备的日志,以查找任何与被阻止流量相关的记录。

6、学习小分享


相关文章
|
1天前
|
前端开发 应用服务中间件 nginx
网页设计,若依项目修改(It must be done)01----若依打包位置,nginx代理前端静态资源和后端接口,就是怎样设置转载,访问固定端口,让他访问其他资料的配置文件,访问/,给你那些
网页设计,若依项目修改(It must be done)01----若依打包位置,nginx代理前端静态资源和后端接口,就是怎样设置转载,访问固定端口,让他访问其他资料的配置文件,访问/,给你那些
|
12天前
|
Java Android开发
Java Socket编程示例:服务器开启在8080端口监听,接收客户端连接并打印消息。
【6月更文挑战第23天】 Java Socket编程示例:服务器开启在8080端口监听,接收客户端连接并打印消息。客户端连接服务器,发送"Hello, Server!"后关闭。注意Android中需避免主线程进行网络操作。
35 4
|
1天前
|
Java
springBoot如何设置yml文件,设置端口号
springBoot如何设置yml文件,设置端口号
|
2天前
|
缓存 Linux 开发工具
centos设置ntp服务同步目标服务器时间
【7 月更文挑战第 1天】linux+centos设置ntp服务同步目标服务器时间
|
3天前
|
NoSQL 算法 Linux
【内附完整redis配置文件】linux服务器命令设置redis最大限制内存大小,设置redis内存回收机制,redis有哪些回收机制
【内附完整redis配置文件】linux服务器命令设置redis最大限制内存大小,设置redis内存回收机制,redis有哪些回收机制
7 0
|
5天前
|
消息中间件 Serverless 网络性能优化
消息队列 MQ产品使用合集之客户端和服务器之间的保活心跳检测间隔是怎么设置的
消息队列(MQ)是一种用于异步通信和解耦的应用程序间消息传递的服务,广泛应用于分布式系统中。针对不同的MQ产品,如阿里云的RocketMQ、RabbitMQ等,它们在实现上述场景时可能会有不同的特性和优势,比如RocketMQ强调高吞吐量、低延迟和高可用性,适合大规模分布式系统;而RabbitMQ则以其灵活的路由规则和丰富的协议支持受到青睐。下面是一些常见的消息队列MQ产品的使用场景合集,这些场景涵盖了多种行业和业务需求。
|
10天前
|
网络协议 安全 Docker
windows环境下的设置docker远程访问(开放2375端口)
windows环境下的设置docker远程访问(开放2375端口)
15 0
|
10天前
|
网络安全
阿里云8888端口设置安全组,宝塔控制台显示链接失败
阿里云8888端口设置安全组,宝塔控制台显示链接失败
12 0
|
5天前
|
弹性计算 缓存 安全
阿里云服务器ECS收费标准参考,2核4G配置ECS实例规格整理
阿里云提供多种2核4G ECS实例,如计算型c7、经济型e、u1等,价格不等,从68.0元/月到203.0元/月。ECS通用算力型u1实例采用高性能Intel处理器,网络收发包能力达30万PPS。经济型e实例基于Intel Xeon Platinum,适合入门级需求。2核4G服务器支持的并发访问人数依赖于软件效率、带宽、应用架构和用户行为等因素。更多信息请查看阿里云ECS产品页。
|
2天前
|
弹性计算 运维 Kubernetes
阿里云ECS与混合云策略结合,提供云上云下无缝对接,提升业务灵活性和运维效率。
【7月更文挑战第3天】阿里云ECS与混合云策略结合,提供云上云下无缝对接,提升业务灵活性和运维效率。ECS支持多种计费模式和先进架构,保证低延迟计算。混合云融合公有云灵活性与私有云安全,实现资源最优配置。通过VPC互通、应用迁移、数据同步实践,确保安全合规,助力企业数字化转型。阿里云服务展示技术实力,支持企业在混合云时代抓住机遇。
25 3