ICMP重定向问题的解决

简介:

这里跟大家分享一个case中遇到的问题。

 

某公安厅客户一直在采用A10负载均衡设备对服务器实现流量均衡,但最近突然访问不正常:客户端偶尔能打开登录界面,点击登录键后出现白页,或登录后点击页面链接出现白页。

 

 

负载均衡设备采用旁路部署模式,与服务器配置在同一网段的IP,服务器网关指向负载均衡器的接口地址,而负载均衡器的网关指向同一网段的路由器接口地址。之前正常情况下,客户端10.39.1.209访问VIP10.149.1.185,通过负载均衡器转发给后台服务器10.149.1.187,转发同时将源地址nat为负载均衡器的接口地址,这也是当时上线部署时的配置。

为什么突然访问就不正常了?后经了解,是公安厅对业务访问提出溯源的要求,因此把源地址nat的功能去掉了。按道理即使去掉nat也数据包也会经过负载均衡设备转发,而且偶尔能正常打开页面,实在费解。。。无解的问题就得通过抓包分析:

抓包的结果看到,客户端的请求包都被正常转发给后台服务器,却一直未见回包。但路由的设置是没问题,服务器的的网关一直是负载均衡设备的接口地址。

 

通过一番googlebaidu,了解到一种情况——ICMP重定向。“ICMP重定向报文是ICMP控制报文中的一种。在特定的情况下,当路由器检测到一台机器使用非优化路由的时候,它会向该主机发送一个ICMP重定向报文,请求主机改变路由。路由器也会把初始数据报向它的目的地转发。”在实际环境中就存在这样的情况,服务器与路由器接口本属同一网段,现在却通过负载均衡设备转发,这样负载均衡设备可能会向服务器发ICMP重定向报文。

而后执行ip icmp disable redirect,将ICMP重定向关闭,问题解决。

 

上述案例并非特殊的疑难杂症,与大家分享,希望大家在实际部署时能多考虑一些“意外”情况,提前预防,谢谢大家!



本文转自 virtualadc 51CTO博客,原文链接:

http://blog.51cto.com/virtualadc/937285

ZJM

 

相关实践学习
部署高可用架构
本场景主要介绍如何使用云服务器ECS、负载均衡SLB、云数据库RDS和数据传输服务产品来部署多可用区高可用架构。
负载均衡入门与产品使用指南
负载均衡(Server Load Balancer)是对多台云服务器进行流量分发的负载均衡服务,可以通过流量分发扩展应用系统对外的服务能力,通过消除单点故障提升应用系统的可用性。 本课程主要介绍负载均衡的相关技术以及阿里云负载均衡产品的使用方法。
相关文章
|
7月前
|
网络协议 网络架构
网络协议与攻击模拟-06-ICMP重定向
网络协议与攻击模拟-06-ICMP重定向
79 0
|
Shell iOS开发
|
7月前
|
网络协议 网络架构
网络协议与攻击模拟-05-ICMP协议
网络协议与攻击模拟-05-ICMP协议
50 0
|
8月前
|
网络架构
ICMP协议(Internet控制消息协议)
本文详细的介绍ICMP协议,内含详细的实例解析,该文你值得拥有。
|
8月前
|
Linux C语言 C++
Linux ICMP协议实现:C/C++编程指南
ICMP(Internet Control Message Protocol)是网络通信中的重要协议,用于在IP网络中传递错误消息和诊断信息。在Linux系统中,我们可以使用C/C++编程语言来实现基本的ICMP功能,例如发送ICMP回显请求(Ping)和解析ICMP消息。本文将带您深入了解C/C++实现的ICMP协议,包括套接字编程、构造ICMP报文、发送和接收ICMP消息等,以及提供实际的代码示例。
458 1
|
缓存 网络协议 Linux
计算机网络——Wireshark软件使用与协议分析(ARP协议、IP与ICMP分析)
Wireshark软件使用与协议分析 ARP协议分析 使用 Wireshark 抓取局域网的数据包并进行分析: 1. 学习 Wireshark 基本操作:重点掌握捕获过滤器和显示过滤器。 2. 观察 MAC 地址:了解 MAC 地址的组成,辨识 MAC 地址类型。 3. 分析以太网帧结构:观察以太网帧的首部和尾部,了解数据封装成帧的原理。 4. 分析 ARP 协议:抓取 ARP 请求和应答报文,分析其工作过程。 IP与ICMP分析 启动 Wireshark,捕捉网络命令执行过程中本机接受和发送的数据报。
1730 0
计算机网络——Wireshark软件使用与协议分析(ARP协议、IP与ICMP分析)
|
2月前
|
域名解析 缓存 网络协议
|
3月前
|
监控 网络协议 网络安全
ICMP (Internet Control Message Protocol,互联网控制消息协议)
ICMP(Internet Control Message Protocol,互联网控制消息协议)是用于在IP网络中传递控制消息的协议。它通常被用于网络设备之间交换状态信息和错误报告,以及执行网络诊断和故障排除。
58 0
|
3月前
|
网络协议 API 网络安全
用户态协议栈设计实现udp,arp与icmp协议
用户态协议栈设计实现udp,arp与icmp协议
61 1
|
4月前
|
监控 网络协议 网络性能优化
【网络层】DHCP协议(应用层)、ICMP、IPv6详解
【网络层】DHCP协议(应用层)、ICMP、IPv6详解
56 0