请求到Nginx都是相同的IP导致登录异常

目录

1 问题描述

2 问题定位

2.1 确认IP所属设备类型

 2.2明确数据流向和测试环境

 2.2.1测试环境网络,

2.2.2 简单测试定位问题

3 结论


1 问题描述

Nginx 连接日志中显示都是同一个IP,导致session异常。

10.0.6.6 - - [09/Sep/2019:18:16:41 +0800] "GET /plan/api/statistics/plan/download HTTP/1.1" 502 581 "-" "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.110 Safari/537.36"
10.0.6.6 - - [09/Sep/2019:18:26:19 +0800] "GET /alarm/api/test/alarm?alarmId=605899143744077824 HTTP/1.1" 404 159 "-" "PostmanRuntime/6.4.1"
10.0.6.6 - - [09/Sep/2019:18:26:53 +0800] "GET /alarm/api/test/alarm?alarmId=605899143744077824 HTTP/1.1" 404 159 "-" "PostmanRuntime/6.4.1"
10.0.6.6 - - [09/Sep/2019:18:27:02 +0800] "GET /alarm/api/test/alarm?alarmId=605899143744077824 HTTP/1.1" 404 159 "-" "PostmanRuntime/6.4.1"
10.0.6.6 - - [09/Sep/2019:18:27:43 +0800] "GET /alarm/api/alarm/history HTTP/1.1" 500 318 "-" "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.110 Safari/537.36"
10.0.6.6 - - [09/Sep/2019:18:28:13 +0800] "GET /test/api/test/alarm?alarmId=605899143744077824 HTTP/1.1" 500 199 "-" "PostmanRuntime/6.4.1"
10.0.6.6 - - [09/Sep/2019:18:38:25 +0800] "GET /favicon.ico HTTP/1.1" 200 1150 "-" "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.25 Safari/537.36 Core/1.70.3730.400 QQBrowser/10.5.3805.400"
[root@kvm01-pre logs]# tail access.log 
10.0.6.6 - - [09/Sep/2019:18:08:16 +0800] "GET /alarm/api/alarm/RabbitMQToAlarm HTTP/1.1" 405 193 "-" "Mozilla/4.0 (compatible; ms-office)"
10.0.6.6 - - [09/Sep/2019:18:09:15 +0800] "GET /robot/rest/tasks HTTP/1.1" 405 337 "-" "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.110 Safari/537.36"
10.0.6.6 - - [09/Sep/2019:18:16:39 +0800] "GET /alarm/api/alarm/history/export HTTP/1.1" 499 0 "-" "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.110 Safari/537.36"
10.0.6.6 - - [09/Sep/2019:18:16:41 +0800] "GET /plan/api/statistics/plan/download HTTP/1.1" 502 581 "-" "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.110 Safari/537.36"
10.0.6.6 - - [09/Sep/2019:18:26:19 +0800] "GET /alarm/api/test/alarm?alarmId=605899143744077824 HTTP/1.1" 404 159 "-" "PostmanRuntime/6.4.1"
10.0.6.6 - - [09/Sep/2019:18:26:53 +0800] "GET /alarm/api/test/alarm?alarmId=605899143744077824 HTTP/1.1" 404 159 "-" "PostmanRuntime/6.4.1"
10.0.6.6 - - [09/Sep/2019:18:27:02 +0800] "GET /alarm/api/test/alarm?alarmId=605899143744077824 HTTP/1.1" 404 159 "-" "PostmanRuntime/6.4.1"
10.0.6.6 - - [09/Sep/2019:18:27:43 +0800] "GET /alarm/api/alarm/history HTTP/1.1" 500 318 "-" "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.110 Safari/537.36"

2 问题定位

2.1 确认IP所属设备类型

找任意一台主机ping 一下 ,发现ping 主机都是通的,但是ping 10.0.6.6不通,确认10.0.6.6不是主机。所有的主机在安装操作系统的时候都关闭的了防火墙,可以排除是防火墙的问题。

[root@kvm09-pre ~]# ping 10.0.6.6
PING 10.0.6.6 (10.0.6.6) 56(84) bytes of data.

^Z
[1]+  Stopped                 ping 10.0.6.6
[root@kvm09-pre ~]# ping 10.0.10.216
PING 10.0.10.216 (10.0.10.216) 56(84) bytes of data.
64 bytes from 10.0.10.216: icmp_seq=1 ttl=64 time=0.554 ms
64 bytes from 10.0.10.216: icmp_seq=2 ttl=64 time=0.426 ms
64 bytes from 10.0.10.216: icmp_seq=3 ttl=64 time=0.398 ms

 2.2明确数据流向和测试环境

 2.2.1测试环境网络,

PC可以连接AP热点、小型wifi路由器 或者H3C前置路由器来访问web服务。现在绝大多数测试人员都是通过小型无线路由器或者直连H3C前置路由器登录web服务,少部分会通过AP热点。

 

2.2.2 简单测试定位问题

每个前端设备通过AP连接web主机 都会通过 DHCP获取新的IP。简单访问web 服务时,Nginx记录的IP是会变化的。如下日志:

 

10.0.6.6 - - [09/Sep/2019:18:28:13 +0800] "GET /test/api/test/alarm?alarmId=605899143744077824 HTTP/1.1" 500 199 "-" "PostmanRuntime/6.4.1"
10.0.6.6 - - [09/Sep/2019:18:38:25 +0800] "GET /favicon.ico HTTP/1.1" 200 1150 "-" "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.25 Safari/537.36 Core/1.70.3730.400 QQBrowser/10.5.3805.400"
10.0.10.216 - - [09/Sep/2019:19:25:12 +0800] "GET /login HTTP/1.1" 200 4848 "-" "curl/7.29.0"
10.0.10.112 - - [09/Sep/2019:20:16:09 +0800] "GET /login HTTP/1.1" 200 4848 "-" "curl/7.29.0"

但是通过小型无线路由器 和H3C前置路由器 访问web服务都时,Nginx记录的IP都是  10.0.6.6。

 

结论

小型无线路由器是无法通过配置修改报文的IP的。基本确认是H3C前置路由器配置问题。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

October-

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值