当前位置: 首页 > news >正文

亲测使用frp获得访问者真实ip

怎么访问都只有127.0.0.1这个内网ip,获取不到访问者的真实ip
1.打开frp的配置文件(一般是frpc.toml,无需设置frps.toml)
在每一个tcp协议中添加
transport.proxyProtocolVersion = "v2"
实例:
# frpc.toml

[[proxies]]
name = "web"
type = "tcp"
localPort = 73
remotePort = 73
# now v1 and v2 are supported
transport.proxyProtocolVersion = "v2"

如果要实现效果:

1、保持原服务器的73端口可以继续正常访问

2、转发服务器也可以使用端口73端口访问

可在原服务器在创建一个和73端口相同的网站,端口设置为77即可,同时使用下面的配置信息。

# frpc.toml

[[proxies]]
name = "web"
type = "tcp"
localPort = 77
remotePort = 73
# now v1 and v2 are supported
transport.proxyProtocolVersion = "v2"

重新启动frp:

/root/frp_0.58.0_linux_amd64/frpc -c /root/frp_0.58.0_linux_amd64/frpc.toml 

如果运行没有问题的情况时下,也可以使用下面命令进入后台运行 :

nohup /root/frp_0.58.0_linux_amd64/frpc -c /root/frp_0.58.0_linux_amd64/frpc.toml&

使用ps a查看pid号后,使用kill -9 pid号结束进程

这时,你会发现网站打不开了,这里需要在网站配置文件中修改

2.打开宝塔面板(打开网站配置文件)

依次点击网站-设置(前提你创建了网站)-配置文件

你会看见listen这个单词,在每个listen的末尾(也就是" ; "前)添加下列代码
proxy_protocol
变成:
listen 88 proxy_protocol;
listen 443 ssl http2 proxy_protocol;
注意离前面一个有空格

然后在root后添加下列代码
real_ip_header proxy_protocol;
real_ip_recursive on;
set_real_ip_from x.x.x.x;
注意:x.x.x.x为frp客户端的ip地址,一般填写127.0.0.1

即:

real_ip_header proxy_protocol;
real_ip_recursive on;
set_real_ip_from 127.0.0.1;

最终修改如下图所示:

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 【WEB前端2024】开源智体世界:乔布斯3D纪念馆-第28课-avatar玩家3D形象
  • Java学习四
  • 通付盾Web3专题 | SharkTeam:Web3常见钓鱼方式分析与安全防范建议
  • 神经网络中的归一化操作
  • 层次式架构设计理论与实践
  • kafka 案例
  • 一步步实现知乎热榜采集:Scala与Sttp库的应用
  • PostgreSQL 教程
  • 研二学妹面试字节,竟倒在了ThreadLocal上,这是不要应届生还是不要女生啊?
  • 【MySQL精通之路】InnoDB存储引擎
  • 前端开发实用工具网站(持续更新中)
  • 结构型设计模式之装饰模式
  • Web安全技术期末考查-vulhub靶场搭建及漏洞复现
  • 类和对象03
  • 1.int 与 Integer 的简单区别
  • php的引用
  • 345-反转字符串中的元音字母
  • Create React App 使用
  • IDEA 插件开发入门教程
  • Java Agent 学习笔记
  • javascript从右向左截取指定位数字符的3种方法
  • Js基础知识(四) - js运行原理与机制
  • October CMS - 快速入门 9 Images And Galleries
  • php ci框架整合银盛支付
  • Python爬虫--- 1.3 BS4库的解析器
  • 给Prometheus造假数据的方法
  • 机器学习中为什么要做归一化normalization
  • 简单易用的leetcode开发测试工具(npm)
  • 力扣(LeetCode)357
  • 前端面试题总结
  • 深度学习在携程攻略社区的应用
  • 小李飞刀:SQL题目刷起来!
  • 译有关态射的一切
  • JavaScript 新语法详解:Class 的私有属性与私有方法 ...
  • 湖北分布式智能数据采集方法有哪些?
  • ​Benvista PhotoZoom Pro 9.0.4新功能介绍
  • #我与Java虚拟机的故事#连载16:打开Java世界大门的钥匙
  • (13)DroneCAN 适配器节点(一)
  • (14)Hive调优——合并小文件
  • (2024)docker-compose实战 (9)部署多项目环境(LAMP+react+vue+redis+mysql+nginx)
  • (22)C#传智:复习,多态虚方法抽象类接口,静态类,String与StringBuilder,集合泛型List与Dictionary,文件类,结构与类的区别
  • (done) NLP “bag-of-words“ 方法 (带有二元分类和多元分类两个例子)词袋模型、BoW
  • (三分钟了解debug)SLAM研究方向-Debug总结
  • (十三)Java springcloud B2B2C o2o多用户商城 springcloud架构 - SSO单点登录之OAuth2.0 根据token获取用户信息(4)...
  • (译)2019年前端性能优化清单 — 下篇
  • (转)C#调用WebService 基础
  • (转)linux 命令大全
  • (转)可以带来幸福的一本书
  • (转)总结使用Unity 3D优化游戏运行性能的经验
  • .NET C# 操作Neo4j图数据库
  • .Net Core 生成管理员权限的应用程序
  • .NET CORE使用Redis分布式锁续命(续期)问题
  • .NET/C# 编译期间能确定的相同字符串,在运行期间是相同的实例
  • @Transactional 参数详解
  • @Value获取值和@ConfigurationProperties获取值用法及比较(springboot)