阅读视图

发现新文章,点击刷新页面。

frp 概念及通用功能

很多小伙伴询问 frp 原理,文本简单解释一下。在 frp 中一个代理对应一个需要暴露的内网服务。一个客户端可同时配置多个代理。一些概念,理解它们有助于小伙伴们更好地了解和使用 frp。

原理

frp 是由客户端和服务端组成,服务端通常部署在有公网 IP 的机器上,客户端通常部署在需穿透的内网服务所在的机器上。

内网服务器由于没有公网 IP,不能被非局域网内其他用户访问。

用户通过访问服务端 frps,由 frp 负责根据请求端口或其它信息将请求路由到对应的内网机器,从而实现通信。

通过内网穿透技术,可使内网设备即便没有公网 IP 及端口,也可被公网的用户访问。

类型

frp 支持多种代理类型来适配不同使用场景:

类型描述
tcp单纯的 TCP 端口映射,服务端会根据不同端口路由到不同的内网服务
udp单纯的 UDP 端口映射,服务端会根据不同端口路由到不同的内网服务
http针对 HTTP 应用定制了一些额外功能,如修改 Host Header,增加鉴权
https针对 HTTPS 应用定制了一些额外功能
stcp安全的 TCP 内网代理,需在被访问者和访问者的机器上都部署 frpc,不需在服务端暴露端口
sudp安全的 UDP 内网代理,需在被访问者和访问者的机器上都部署 frpc,不需在服务端暴露端口
xtcp点对点的内网穿透代理,功能同 stcp,但是流量不需要经过服务器中转
tcpmux支持服务端 TCP 端口多路复用,通过同一个端口访问不同的内网服务

TCP

1
2
3
4
5
[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 6000

注意:frp 会为本地服务 22 端口,在 frps 所在服务端监听 6000 端口,将 6000 端口接收到的连接和本地服务 22 端口关联,透传流量,从而实现让用户在外部访问内部服务。

UDP

1
2
3
4
5
[dns]
type = udp
local_ip = 127.0.0.1
local_port = 53
remote_port = 6000

注意:frp 会为本地服务 53 端口,在 frps 所在服务端监听 6000 端口,将 6000 端口接收到的连接和本地服务 53 端口关联,透传流量,从而实现让用户在外部访问内部服务。

XTCP

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
[stcp-visitor]
role = visitor
type = stcp
server_name = stcp-test
sk = abc
bind_port = -1

[xtcp-visitor]
role = visitor
type = xtcp
server_name = xtcp-test
sk = abc
bind_addr = 127.0.0.1
bind_port = 9002
fallback_to = stcp-visitor
fallback_timeout_ms = 200

注意:当连接 127.0.0.1:9002 时超过 200ms 打洞还未成功的话,会回退到用 stcp-visitor 建立连接。fallback 后,之前触发的打洞操作仍然会继续,一般来说打洞完成需要耗时会比较长。

TCPMUX

frp 支持将单个端口收到的连接路由到不同代理。目前支持复用器只有 httpconnect。当 frps.ini 的 common 中设置 tcpmux_httpconnect_port,frps 将会监听在这个端口,接收 HTTP 的请求。frps 会根据 HTTP 请求中的 Host 路由到不同的后端代理。frps.ini 的配置如下:

1
2
3
[common]
bind_port = 7000
tcpmux_httpconnect_port = 1337

frpc.ini 的配置如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
[common]
server_addr = x.x.x.x
server_port = 7000

[proxy1]
type = tcpmux
multiplexer = httpconnect
custom_domains = test1
local_port = 80

[proxy2]
type = tcpmux
multiplexer = httpconnect
custom_domains = test2
local_port = 8080

数据中心,云计算和大数据之间有何区别和联系

不少人会把云计算数据中心、数据中心、大数据搞混淆,觉得三者是一样的产品,其实有显著地区别,数据中心机房是一整套复杂设施,如今,云计算即将成为信息社会的公共资源,而数据中心是支撑云计算服务的基础设施,所以自从云计算横空出世后,一切信息技术开始围着它转,云计算有如神一样地存在着,下面看看数据中心、云计算以及大数据之间有什么区别和联系?

概念

数据中心是全球协作的特定设备网络,用来在网络基础设施上传递、加速、展示、计算、存储数据信息,数据中心绝大部分电子元件都是由低压直流电源驱动运行的。数据中心面临物理问题是服务器本身和用来连接这些服务器到其他应用环境的电缆。

云计算 CloudComputing,是种基于互联网的计算方式,通过这种方式,共享的软硬件资源和信息可以按需提供给计算机和其他设备。典型的云计算提供商往往提供通用的网络业务应用,可以通过浏览器等软件或者其他 Web 服务来访问,而软件和数据都存储在服务器上。云计算服务通常提供通用的通过浏览器访问的在线商业应用,软件和数据存储在数据中心。

狭义云计算指 IT 基础设施交付和使用模式,指通过网络以按需、易扩展的方式获得所需资源。

广义云计算指服务的交付和使用模式,指通过网络以按需、易扩展的方式获得所需服务。这种服务可以是 IT、软件和互联网相关,也可以是其他服务,它意味着计算能力可作为一种商品通过互联网进行流通。对云计算的定义有多种说法,云计算是通过网络提供可伸缩的廉价的分布式计算能力。

大数据又称为巨量资料,指需要新处理模式才能具有更强的决策力、洞察力以及流程优化能力的海量、高增长率和多样化信息资产。

大数据技术的战略意义不在于掌握庞大的数据信息,而在于对这些含有意义的数据进行专业化处理。换而言之,如果把大数据比作一种产业,那么这种产业实现盈利关键,在于提高对数据的“加工能力”通过“加工”实现数据“增值”

区别

移动互联网大数据主要来自四个方面:

  1. 内容数据。Web2.0 时代后,每个人都成为媒体,都会在网络上生产内容,包括文字、图片、视频等等;

  2. 电商数据。随着电子商务发展,线上交易量已经占据整个零售业交易的大部分。每一笔交易都包含买家、卖家以及商品背后的整条价值链条的信息;

  3. 社交数据。随着移动社交成为最主要的社交方式,社交不仅只有人与人之间的交流作用,社交数据中包括了人的喜好、生活轨迹、消费能力、价值取向等各种重要的用户画像信息;

  4. 物联数据。各行各业都出现了物联网需求和解决方案,每时每刻都在产生巨量监测数据。那么如此多的数据,包含很多有价值的信息,这些信息并不是以直观的形式呈现出来的,需要有办法对这些数据进行处理,无论计算、存储还是通信,都提出了很高要求,云计算的相关技术就是对巨量数据的计算、存储和通信的解决方案。

数据中心、云计算以及大数据之间的区别与联系:

  1. 大数据和云计算的概念区别。大数据说的是种移动互联网和物联网背景下的应用场景,各种应用产生巨量数据,需要处理、分析,挖掘有价值的信息;云计算说的是一种技术解决方案,就是利用这种技术可以解决计算、存储、数据库等一系列 IT 基础设施的按需构建的需求,两者并不是同一层面的东西;

  2. 大数据与云计算的关系那么上面说了大数据和云计算的区别,两者之间又有着非常紧密的联系,大数据是云计算非常重要的应用场景,而云计算则为大数据的处理和数据挖掘都提供了最佳的技术解决方案。

联系

大数据分析经常和云计算联系到一起,因为实时的大型数据集分析需要像 MapReduce 一样的框架来向数十数百或甚至数千的服务器分配工作,大数据需要特殊的技术,以有效地处理大量数据。适用大数据的技术,包括大规模并行处理数据库、数据挖掘电网、分布文件系统、分布式数据库、计算平台、互联网和可扩展的存储系统,大数据指的海量的数据一般日处理 PB 级别以上,一般用于挖掘,分析,做一些智能性商业板块。

大数据必然与云计算有相关「大数据和云计算没有必然的联系,你要作大数据,可以用云计算,也可不用」数据中心是云计算基础,从技术上来看,大数据与云计算的关系就像一枚硬币的正反面一样密不可分,大数据必然无法用单台的计算机进行处理,必须采用分布式的架构。它的特色在于对海量数据进行分布式数据挖掘,但它必须依托云计算分布式处理、分布式数据库和云存储、虚拟化等技术,随着云时代的来临,大数据也吸引了越来越多的关注。

总结

数据中心是云计算基础设施,我们通常讲到的服务器资源分配,带宽分配,业务支撑能力,流量防护,清洗能力,都是基于数据中心的大小和其带宽的容量,数据中心分布在不同的核心城市,辐射到周边的城市,提供基础支撑,其一般都符合国家机房一级标准,具备极强容灾能力,多数厂商会选择两地三中心等方式来架设机房,云计算是在数据中心基础上提供的从基础服务到增值服务的一种闲置资源利用。

但有一点不变的是,不管云计算怎样去变化,必然需要依托数据中心实现落地。也可以说,数据中心是云计算的根,云计算是数据中心“叶子”云计算通过光合作用促进数据中心的发展,而数据中心得壮大又为云计算发展提供了坚实基础,这三者起到相互依存互相促进的作用。

换种方式解释什么是云计算

很多同学都是其它行业转过来的,对于云计算的相关专业术语不是特别理解,今天杜老师换一种方式,解释什么是云计算!

你娶一个老婆,这就叫传统 IT 架构。

你觉得一个老婆不太够,这叫传统企业 CIO 的困境。

你又娶了一个老婆,这叫双活数据中心。

你在外地又娶了一个小老婆,这就叫两地三中心容灾。

你娶了很多个风格气质各异的小老婆,以至于形成了后宫,这就叫私有云,你的后宫叫计算资源池。

你从后宫选出懂事有能的管理其她小老婆,这就叫私有云管理方案,管事的那个就是 VMware。

你不娶小老婆,改成养了很多情人,这就叫托管云。

你是穷人,没有钱养任何人也没钱娶小老婆,你选择去洗浴中心解决问题,这叫面向中小企业的公有云服务。

你在享受公有云服务同时还得交公粮,这叫中小企业的混合 IT 架构。

你是富人,但也喜欢去高级夜总会,这就叫面向大企业用户的公有云服务。

你很有钱,同时养了小老婆和情人,还去洗浴中心,这就叫混合云,但是在混合云,最关键的业务还是需要谨慎地采用传统 IT 架构。

你很有钱,养了很多的小老婆,但有一天所有小老婆都来大姨妈,你还得去洗浴中心,这叫 Cloud Burst 云爆发。

洗浴中心就是云服务提供商。国内最大的洗浴中心就是阿里云。

本地的洗浴中心都是有背景的大老板开的,他就是 OpenStack。

场子小且只用本地或附近技师的是本土中小型云服务商。

如果上头没有人罩,本土中小型云服务商很难开得长。

开洗浴中心的老板要有政府背景,这就是城市云。

开洗浴中心的老板有涉黑的背景,这就是电信云。

洗浴中心要 VIP 卡才让进,这就是行业云。

洗浴中心只面向本小区业主服务,这就是园区云。

你的小老婆们和情人们可能因为矛盾而让你的经济问题败露,这就叫私有云安全问题。

你去洗浴中心可能会染上病,这就是公有云安全问题。

由此可见公有云和私有云的安全问题是两种不同性质的问题。

仅仅提供场所,需要你自己去找技师的洗浴中心叫 IaaS。

提供场所和技师的洗浴中心叫 PaaS。

做到东莞标准的程度就叫 SaaS。

一个很多人分享心得的洗浴中心信息网站,这是开放数据中心联盟。

洗浴中心的行业协会叫 Cloud Builder 生成器。

下榻一家五星级大酒店,习惯性地用微信定个位,这叫 Cloud Finder 寻云器。

良家妇女下海,这叫传统 IT 应用的云化。

你去洗浴中心的经验非常多,看见门脸就会知道洗浴中心提不提供服务,看见新技师就能推测出服务质量,这就叫数据分析和挖掘。

你把这些信息、心得有偿分享给其他人,你是大数据服务商。

一个城市不会严打洗浴中心,这是智慧城市。

❌