向日葵的平替: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%平铺 ...
随机推荐
- golang sync.Once 保证某个动作仅执行一次的机制
type Once struct { done atomic.Uint32 m Mutex } 这段代码是 Go 语言标准库中 sync 包的一部分,定义了一个 Once 类型.Once 类型用于确保 ...
- WIN10 家庭版 罗技G hub 安装提示不兼容当前操作系统解决方法
WIN10 家庭版 罗技G hub 安装提示不兼容当前操作系统解决方法 解决方法: 下载Onboard Memory Manager就可以. --
- vue bus传参
新建一个js文件,命名为bus.js.bus.js文件的内容为: import Vue from 'vue' const bus = new Vue() export default bus 页面de ...
- 说一下 JSP 的 4 种作用域?
page:代表与一个页面相关的对象和属性. request:代表与客户端发出的一个请求相关的对象和属性.一个请求可能跨越多个页面,涉及多个 Web 组件:需要在页面显示的临时数据可以置于此作用域. s ...
- 使用spark-sql处理Doris大表关联
背景 最近项目上有一个需求,需要将两张表(A表和B表)的数据进行关联并回写入其中一张表(A表),两张表都是分区表,但是关联条件不包括分区字段. 分析过程 方案一 最朴素的想法,直接关联执行,全表关联, ...
- javascript 类class设置访问器setter时出现Maximum call stack size exceeded错误
Maximum call stack size exceeded这个错误的意思是调用栈溢出,但是自己写的代码基本不可能出现.所以可能的原因是A调用了B,然后B再调用A,形成了循环调用.或者说是A自己调 ...
- python rabbitmq官方文档demo
1.生产者 #!/usr/bin/env python import pika import json # https://www.rabbitmq.com/tutorials/tutorial-on ...
- 3年Java阿里跳字节的面试心得总结
中厂->阿里->字节,成都->杭州->成都 系列文章目录和关于我 0.前言 笔者在不足两年经验的时候从成都一家金融科技中厂跳槽到杭州阿里淘天集团,又于今年5月份从杭州淘天跳槽到 ...
- Python中的属性
Python中的属性主要分为类属性,对象属性. 1.类属性 类属性:类所有,所有的实例对象都能够共享,类定义时就直接指定的属性,能通过类名和实力对象名访问,当当前的类属性被实例对象通过对象名.属性名的 ...
- 张高兴的 MicroPython 入门指南:(二)GPIO 的使用
目录 什么是 GPIO 使用方法 使用微动开关点亮板载 LED 硬件需求 电路 代码 参考 什么是 GPIO GPIO 是 General Purpose Input Output 的缩写,即&quo ...