frp:一个平平无奇的内网穿透小天才(frp全网最简单的教程)

开篇

hello大家好,我是宴耀,今天不知道吃着谁家葱花了,竟然兴致勃勃地想要开始写博客???也许是老天不想再让我白嫖CSDN的东西了。


目录:

先提一下哈,以下的linux同学请去找别的教程,我这里教windows。(主要因为我在windows上遇到的坑太多了,怕大家翻车)

  • frp是个啥?
  • 需要的工具都有啥?
  • frp实战,宴耀承诺,包教包会,不会你打我(本文以可道云为例)

frp是个啥?

frp是一个开源的内网穿透反向代理应用,支持的协议非常多:tcp,udp,http,https。其实某同性交友网站上frp的项目中有中文文档,介绍的非常详细,在此就不多说了。


需要啥工具?

  1. 如果你懒得配置服务端,或者你不想买服务器,请去这个网站:frp免费服务器,当然,肯定会比自己单独用一个服务器要慢很多,这个要自己取舍。
  2. 根据你选的服务器版本,在github上找到适合的版本,看好操作系统!!!
  3. 貌似。。。也没啥了,说下我选择的:
    服务器:frps.lu8.win
    版本号:0.16.1
    密码:frp888
  4. 晚点时间,我会发一个frp脚本,按照他那个提示直接做,包含0.9.3,0.16.1,0.21.0这三个版本。当然,我这里还是用普通方法。
  5. 脑子和手,我只能包你学会,你懒的做,就没办法了。

frp实战:外网访问可道云

好了,教程他来啦!下载好frp的压缩包后,打开它,会看到有四个文件:

  • frps.ini和frps_full.ini
  • frpc.ini和frpc_full.ini
  • frps.exe
  • frpc.exe
    如果你没有,看看是不是下成其他系统的了(我就是这样)
    因为我是用的是现成的frp服务器,所以frps根本不用看,只用关注frpc开头的,frpc_full是指全部的参数实例,没必要写那么多,下面给大家一个参考:

我的示例
哦对了忘记说了,你想要内网穿透肯定要有个网址吧,不然你玩个啥?我用的是phpstudy集成,把可道云的源码放根目录里,本机就可以直接访问了,注意看一下你访问的网址是127.0.0.1,还是localhost,或是其他的,反正根据你网址是啥,上面local_ip就写啥(没错我当时就是在这里翻车的hhh)
这些都填完后,可以点击frpc.exe运行,当窗口消失后,去看log信息:

日志启动成功
基本出现像我这样的日志,就代表启动成功了,就可以尽情玩耍了!
得得得得,你先回来,有件事忘说了,要是没有这条日志怎么办?80端口换成82试试,在或是服务器那边端口冲突,把http_27357这串数字随便改一下(五位以内)然后再运行frpc.exe,继续看日志,不行再修改。。。。。如果你运气实在不行,建议你找到这个网址的仪表盘,账号密码一般都是admin,登上去用站内搜索搜索下,看哪个端口没用过,就用哪个。

如果打开网址,出现一杯咖啡,标题还是404,那么就是本地没配置好,看看你frpc.ini文件上的local_ip复制到浏览器上能不能打开,出现这种情况大多是不能打开,如果你没修改的话,应该是127.0.0.1或localhost(这句话我说第三遍了。。。)

基本就这些了,如果你还不会的话。。。。。那就别弄了 私信我,把日志发给我,我给你看。

一张成功图
最后再来一张美图,溜了溜了~

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
本处高能:因Frp作者更换新的模块,导致Frp v0.18.0与之前的版本不兼容,如果升级请服务器端同步升级。升级命令: wget --no-check-certificate https://raw.githubusercontent.com/clangcn/onekey-install-shell/master/frps/install-frps.sh -O ./install-frps.sh bash install-frps.sh update 首先感谢@sadoneli S大的帮助完成了frp插件web页面的制作。 WARNING:请仔细阅读完本教程1楼和2楼后再动手安装! frp 是一个高性能的反向代理应用,可以帮助您轻松地进行内穿透,对外提供服务,支持 tcp, http, https 等协议类型,并且 web 服务支持根据域名进行路由转发。 *因为frp是go语言写的,所以在路由器上使用的时候,请使用虚拟内存,请使用虚拟内存,请使用虚拟内存。 脚本是业余爱好,英文属于文盲,写的不好,欢迎您批评指正。 安装平台:CentOS、Debian、Ubuntu。 已测试过的平台: CentOS 6 32/64bit CentOS 7 32/64bit Debian 6 32/64bit Debian 7 32/64bit Debian 8 32/64bit Ubuntu 14 32/64bit 一、安装命令这个命令是在你自己的服务器上运行的!是在你自己的服务器上运行的!是在你自己的服务器上运行的!不是在路由器里运行的!不是在路由器里运行的!不是在路由器里运行的! wget --no-check-certificate https://raw.githubusercontent.com/clangcn/onekey-install-shell/master/frps/install-frps.sh -O ./install-frps.sh chmod 700 ./install-frps.sh ./install-frps.sh install 二、安装步骤 Loading network version for frps, please wait... frps Latest release file frp_0.8.1_linux_amd64.tar.gz #此步骤会自动获取frp最新版本,自动操作,无需理会 Loading You Server IP, please wait... You Server IP:12.12.12.12 #自动获取你服务器的IP地址 Please input your server setting: Please input frps bind_port [1-65535](Default Server Port: 5443): #输入frp提供服务的端口,用于服务器端和客户端通信 Please input frps dashboard_port [1-65535](Default dashboard_port: 6443): #输入frp的控制台服务端口,用于查看frp工作状态 Please input frps vhost_http_port [1-65535](Default vhost_http_port: 80): #输入frp进行http穿透的http服务端口 Please input frps vhost_https_port [1-65535](Default vhost_https_port: 443): #输入frp进行https穿透的https服务端口 Please input privilege_token (Default: WEWLRgwRjIJVPx2kuqzkGnvuftPLQniq): #输入frp服务器和客户端通信的密码,默认是随机生成的 Please input frps max_pool_count [1-200](Default max_pool_count: 50): #设置每个代理可以创建的连接池上限,默认50 ##### Please select log_level ##### 1: info 2: warn 3: error 4: debug ##################################################### Enter your choice (1, 2, 3, 4 or exit. default [1]): #设置日志等级,4个选项,默认是info Please input frps log_max_days [1-30] (Default log_max_days: 3 day): #设置日志保留天数,范围是1到30天,默认保留3天。 ##### Please select log_file ##### 1: enable 2: disable ##################################################### Enter your choice (1, 2 or exit. default [1]): #设置是否开启日志记录,默认开启,开启后日志等级及保留天数生效,否则等级和保留天数无效 设置完成后检查你的输入,如果没有问题按任意键继续安装 ============== Check your input ============== You Server IP : 12.12.12.12 Bind port : 5443 Dashboard port : 6443 vhost http port : 80 vhost https port: 443 Privilege token : WEWLRgwRjIJVPx2kuqzkGnvuftPLQniq Max Pool count : 50 Log level : info Log max days : 3 Log file : enable ============================================== 安装结束后显示: Congratulations, frps install completed! ============================================== You Server IP : 12.12.12.12 Bind port : 5443 Dashboard port : 6443 vhost http port : 80 vhost https port: 443 Privilege token : WEWLRgwRjIJVPx2kuqzkGnvuftPLQniq Max Pool count : 50 Log level : info Log max days : 3 Log file : enable # 将上面信息添加到你的路由器frp穿透插件中吧 ============================================== frps Dashboard: http://12.12.12.12:6443/ # 这个是frp控制台访问地址 ============================================== 三、更新命令 ./install-frps.sh update 四、卸载命令 ./install-frps.sh uninstall 五、服务器端管理命令 /etc/init.d/frps start /etc/init.d/frps stop /etc/init.d/frps restart /etc/init.d/frps status /etc/init.d/frps config /etc/init.d/frps version 七、更多帮助请移步官方帮助文件 https://github.com/fatedier/frp/blob/master/README_zh.md
好的,我理解了你的问题。那么我来回答你的问题: 首先,HAL(Hardware Abstraction Layer)层是Android系统中的一层抽象,它为上层提供了一组标准的接口,使得上层代码不需要关心具体硬件的实现,从而提高了代码的可移植性和复用性。 而JNI(Java Native Interface)是Java语言调用本地方法的一种方式。通过JNI,我们可以在Java代码中调用C/C++代码,而C/C++代码可以访问系统底层的硬件资源。 因此,你的问题可以分为三个部分: 1. 自定义实现一个HAL层接口 2. 通过JNI层回调给Framework层 3. 最后给APP调用使用 下面我分别给出每个部分的实现思路: 1. 自定义实现一个HAL层接口 首先,你需要明确你要实现的HAL层接口的功能。然后,你可以根据硬件的实现,编写对应的C/C++代码。在代码中,你需要实现HAL层接口的函数,并且将这些函数封装在一个动态链接库中。通常情况下,你需要使用Android NDK来编译生成这个动态链接库。 2. 通过JNI层回调给Framework层 接下来,你需要在JNI层编写代码,将HAL层接口封装成Java方法。具体而言,你需要使用JNI提供的函数,将Java方法映射到C/C++函数上。然后,在C/C++函数中,你可以通过调用HAL层接口的函数,来实现相应的功能。最后,你需要将JNI方法封装成动态链接库,并且在Android应用中加载这个动态链接库。 3. 最后给APP调用使用 最后,你可以在Android应用中调用JNI方法,从而实现对HAL层接口的调用。具体而言,你需要在Java代码中使用System.loadLibrary()方法,来加载JNI动态链接库。然后,你可以通过JNI方法调用HAL层接口,来实现相应的功能。最终,你可以将这些功能封装成Android API,供其他应用调用。 总结: 通过上述步骤,你可以自定义实现一个HAL层接口,并且通过JNI层回调给Framework层,最后给APP调用使用。当然,这只是一个大致的实现思路,具体实现还需要根据具体的硬件和应用场景进行调整。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值