向日葵的平替:fastnat的使用
相关:
向日葵的平替:一款个人开发的远程工具——fastnat
----------------------------------------------
1. 下载安装
2. 注册设备

我这里在两个网络中为两个设备进行了注册。
3. 可用功能
可以说这个软件的主要功能就是做内网穿透

============================
映射类型:tcp和udp
本质:实际功能是端口转发。
给出假设环境:
内网环境:(fastnat.club上进行设置)
本地IP:127.0.0.1
本地端口:22
对外端口:55555
实际使用:
远端环境访问:fastnat.club:55555(这个55555端口就是内网主机设置的对外端口)
在远端使用ssh访问:ssh -p 55555 devil@fastnat.club 就可以实现本地的功能:ssh devil@127.0.0.1
这里的TCP和UDP都是内网穿透的端口转发功能。
---------------------------------
映射类型:http
本质:实际功能是受限的http代理。(个人估计是作者考虑到有可能的法律相关问题)
给出假设环境:
内网环境:(fastnat.club上进行设置)
本地IP:192.168.1.1
本地端口:80
对外端口:55566
实际使用:
远端环境访问:fastnat.club:55566(这个55555端口就是内网主机设置的对外端口)
由于是http协议的代理,因此只能使用浏览器进行访问:在远端使用浏览器访问:http://fastnat.club:55566 就可以实现本地浏览器访问的功能:http://192.168.1.1:80
目测这个功能主要可以用于穿透内网来访问局域网中的路由器或者范围内网中架设的网站。
Demo:
注意:这个功能会被局域网内的路由器跳转到公网,因此我这里是使用浏览器的无痕模式访问的http://fastnat.club:55579


估计是考虑到避免不必要的法律问题,因此这个http代理功能只能指定一个IP地址,并且还必须是局域网IP,否则就会报错:(这种情况的限制,只能用于调试内网的web server了,而不能被用于做http跳转代理访问了)

---------------------------------
映射类型:socks5
本质:实际功能是socks5协议代理(不限制访问IP,可以做跳转代理)。
给出假设环境:
内网环境:(fastnat.club上进行设置)
本地IP:127.0.0.1 (局域网内IP即可)
本地端口:33333 (局域网内指定IP的空闲端口即可)
对外端口:59999 (服务器上可用端口即可)
实际使用:
远端环境使用socks5代理软件访问:fastnat.club:59999(这个59999端口就是内网主机设置的对外端口)
1. 在远端使用firxfox浏览器socks5代理访问,在浏览器里面设置socks5代理地址:fastnat.club 代理端口:59999
2. 在远端使用Ubuntu的apt的socks5代理:Ubuntu18.04系统下 临时使用 socks5代理apt-get的方法
sudo apt-get -o Acquire::http::proxy="socks5h://192.168.11.99:1080/" update
这种方法唯一的不好的地方就是所有的访问都是由内网的本地主机进行随机端口访问的,也就是说你在远端访问使用的代理是fastnat.club:59999,这个访问是由内网的设定的本地端口33333来进入到内网的本地主机的,然后这个访问再往外走则是使用的本地的随机端口的。也就是说这种情况下内网的本地主机只能是代理的最后一端,并不能再进行继续的代理跳转操作。
---------------------------------
映射类型:P2P
本质:实际功能是一种隧道技术(不限制访问IP,可以做跳转代理,构成一种完全意义的局域网情况,将内网和远端PC使用两个虚拟IP构建到一个虚拟局域网中)。
使用方法:(https://www.cnblogs.com/thinkingmore/p/14317505.html)

比如在我这里构建好的内网主机和远端主机的虚拟IP地址:

设置好后我们要测试这两个虚拟IP是否可以ping通:

在保证可以ping通的情况下,完全可以使用这两个虚拟地址来与对方进行通信。
比如:
ssh登录:

比如http代理,因为这种方式可以使对端的端口的完全暴露给远端,所以可以使用该种方式进行http代理等操作,也可以组建虚拟的局域网打联机游戏,不过这个网速是比较堪忧的:

---------------------------------
shell功能,就是建立内网主机的web形式的shell:


使用效果:

---------------------------------
---------------------------------
向日葵的平替:fastnat的使用的更多相关文章
- iOS UIButton 设置图片平铺
UIImage *image2 = [UIImage imageNamed:imgName]; CGFloat top = ; // 顶端盖高度 CGFloat bottom = ; // 底端盖高度 ...
- 从Facebook跑来阿里的赵海平大叔,你要干啥?
赵海平在今年三月份来到阿里,听毕玄(他现任主管)说去年五六月份就跟赵海平聊上了.有人问:为啥 BAT 三大巨头,你看中了阿里巴巴?在今天现场达一千多人的分享中赵海平给出了回复:“因为百度和腾讯没找我呗 ...
- [转]Windows平台下Makefile学习笔记
Windows平台下Makefile学习笔记(一) 作者:朱金灿 来源:http://blog.csdn.net/clever101 决心学习Makefile,一方面是为了解决编译开源代码时需要跨编译 ...
- Android平台下OpenCV移植与使用---基于C/C++
在<Android Studio增加NDK代码编译支持--Mac环境>和<Mac平台下Opencv开发环境搭建>两篇文章中,介绍了如何使用NDK环境和Opencv环境搭建与测试 ...
- html上下结构(上部固定高度,下部平铺)
html页面上下结构: 上部固定,下部平铺 <div id="page_header"></div> <div id="page_conte ...
- ie8下背景图片平铺问题
IE9+及其他浏览器实现背景图片平铺可能需要一个属性就可以background-size:100%/cover; 但是ie8下background-size是不兼容的,因此我们需要用到滤镜,来解决背景 ...
- Windows平台下Git服务器搭建
第一步:下载Java,下载地址:http://www.java.com/zh_CN/ 第二步:安装Java.安装步骤不再详述. 第三步:配置Java环境变量. 右键”计算机” => ”属性” = ...
- ie7中ul不能嵌套div和li平级
我要讲一个忧伤的故事,本以为清晰的层次结构,ul里不能嵌套div和li平级,不然会乱乱乱! 代码: <ul class="catshow"> ...
- Windows平台下PHP开发环境的配置
Windows平台下PHP开发环境的配置 一.基本环境 1.Windows XP 32位 2.Apache 2.2.25,下载地址:http://mirror.bit.edu.cn/apache/ht ...
- CSS背景100%平铺 浏览器缩小背景显示不全解决办法
本文我们分享前端CSS背景100%平铺,浏览器缩小背景显示不全bug解决的两个方法,如果你也遇到了,那么就可以参考下面文章. 把浏览器的窗口缩小时,拖动滚动条时你会发现原本设定的CSS背景100%平铺 ...
随机推荐
- Easysearch 跨集群复制实战
在之前的文章中,有通过网关实现容灾的案例.今天给大家介绍 Easysearch 的跨集群复制功能.该功能可在集群之间复制数据,应用场景包括但不限于以下举例: 灾备同步:将数据同步到灾备中心,灾备中心可 ...
- C#.NET HTTP Request 跳过自签名证书校验。
public static bool CheckValidationResult(object sender, X509Certificate certificate, X509Chain chain ...
- 微信刷脸SDK获取sub_openid
当调用SDK中 获取用户信息(getWxpayfaceUserInfo) /人脸支付凭证(getWxpayfaceCode) 方法获取 sub_openid 时,除了SDK自身要传入sub_appid ...
- CICD介绍
1.学习背景 当公司的服务器架构越来越复杂,需要频繁的发布新配置文件,以及新代码: 但是如果机器部署数量较多,发布的效率必然很低: 并且如果代码没有经过测试环境,预生产环境层层测试,最终才到生产环境, ...
- spring mvc GET请求方式及传参
spring mvc GET请求方式及传参 @Api(tags = "管理接口") @Slf4j @RestController @RequestMapping("/my ...
- 记一次 MatPlotLib 报错及解决方案:AttributeError: module 'matplotlib.cbook' has no attribute '_Stack'
记一次 MatPlotLib 报错及解决方案 目录 记一次 MatPlotLib 报错及解决方案 解决方法 具体发生了什么 报错 log 1 内容 报错 log 2 内容 最近出现 MatPlotLi ...
- Linux下挂载NTFS格式的U盘
NTFS是Windows下的格式,在Linux下是识别不了的,要想在Linux上挂载NTFS格式的U盘需要安装软件以提供支持.软件名为ntfs-3g. 1.下载安装包 https://tuxera.c ...
- C++判断字符串是否相等
话不多说,上代码 bool str_same(char *p1, char *p2) { if (strcmp(p1, p2)) return 0; else for (int i = 0; i &l ...
- 在SMT32程序HEX文件中加入固件版本信息
将固件版本信息定义成一个常量存放在程序中,需要的时候可以通过串口等接口查询代码版本信息,另一种,是利用编译器的语法,将固定的信息保存到某地. #define VERINFO_ADDR_BASE (0x ...
- 在Winform程序中增加隐藏的按键处理,用于处理一些特殊的界面显示或者系统初始化操作
以前,我看到一个朋友在对一个系统做初始化的时候,通过一组魔幻般的按键,调出来一个隐藏的系统设置界面,这个界面在常规的菜单或者工具栏是看不到的,因为它是一个后台设置的关键界面,不公开,同时避免常规用户的 ...