写一个脚本 运行在linux系统centos 7下,目的是抓取访问接口ens192的包,获取协议类型为HTTP的访问80端口的真实IP,也就是请求头里的X-real-IP的值并写到当前目录下realIP.txt里
时间: 2024-03-09 12:47:58 浏览: 64
获取访问者真实的IP地址
5星 · 资源好评率100%
好的,可以使用tcpdump工具抓取网络包,并使用awk命令筛选出HTTP请求中的X-real-IP字段。以下是一个示例脚本:
```bash
#!/bin/bash
# 抓取 ens192 接口的 HTTP 请求包,并筛选出 X-real-IP 字段
tcpdump -i ens192 -n -s0 -w - 'tcp port 80' | awk '
/HTTP\/1\.[01]/ {
# 获取 X-real-IP 字段
while (getline) {
if ($1 == "X-real-IP:") {
ip = $2;
break;
}
}
# 输出 IP 地址
if (ip != "") {
print ip;
}
}
' > realIP.txt
```
在终端中执行该脚本,即可抓取 HTTP 请求包并输出真实 IP 地址到 realIP.txt 文件中。注意需要使用 root 权限执行该脚本。
阅读全文