重叠网,英文名称Overlay Network,顾名思义是一种网络。重叠网是一种运行在一个或多个已存在网络之上的网络,提供特定的附加功能。其将一在一个或多个方面改变下层网络的性能/功能/特性。
Overlay是在传统网络上虚拟出一个虚拟网络来,
https://zhuanlan.zhihu.com/p/465486990
Overlay 网络是一种计算机网络架构,它是建立在现有网络之上的一个虚拟网络。这意味着它利用现有的物理网络基础设施,通过软件在其上创建一个新的网络层。这种方式使得 Overlay 网络可以在不改变底层物理网络结构的情况下,实现网络中的节点之间的新的连接和服务。
作用
Overlay 网络的主要作用包括但不限于:
- 提高网络的可扩展性和灵活性:通过在现有网络之上添加一个新层,可以轻松地引入新的服务和协议,而无需更改底层网络。
- 实现特定的网络服务:例如,可以通过 Overlay 网络实现负载均衡、分布式存储、匿名通信、内容分发网络(CDN)等服务。
- 增强网络的隐私性和安全性:Overlay 网络可以提供加密通信,增加数据传输的隐私性和安全性。
- 网络虚拟化:Overlay 网络支持虚拟化技术,允许在同一物理网络上运行多个虚拟网络,每个网络都有自己独立的网络拓扑和协议。
操作
操作 Overlay 网络通常涉及以下几个步骤:
选择或设计 Overlay 网络协议:根据你想要实现的网络服务或功能选择合适的 Overlay 网络协议,如 P2P 协议(BitTorrent)、VPN 协议(OpenVPN)、SDN(软件定义网络)协议等。
部署 Overlay 网络节点:在参与 Overlay 网络的每个主机上部署节点软件。这些节点将负责实现 Overlay 网络的逻辑,如路由、数据传输、服务提供等。
配置 Overlay 网络:根据需要配置 Overlay 网络的参数,如网络拓扑、地址分配、加密设置等。
运行和维护 Overlay 网络:启动 Overlay 网络后,需要对其进行监控和维护,以确保网络的稳定性和性能。这可能包括故障排除、性能优化、安全更新等。
实际例子
- VPN(虚拟私人网络):通过在公共网络上创建加密的虚拟点对点连接,VPN 实现了一个安全的 Overlay 网络。
- Tor(洋葱路由):为了实现匿名通信,Tor 网络通过多层加密和随机路由,创建了一个分布式的 Overlay 网络。
- P2P 网络:像 BitTorrent 这样的 P2P 文件共享网络,就是通过 Overlay 网络技术将用户连接起来,实现文件的分布式存储和传输。
Overlay 网络通过提供一种灵活、可扩展的方式来增强和扩展现有网络的功能,使其成为实现各种网络服务和应用的重要技术。
大家好,今天我们来探讨Overlay网络的概念。随着虚拟化技术的发展,现在我们能在单个主机上创建多个网络空间,并通过虚拟网卡和虚拟网桥使这些网络空间能够互相通信。例如,在一台主机上,我们可以建立两个虚拟网络空间,它们通过虚拟网络设备和虚拟网桥进行连接。如果在另一台主机上也建立了类似的虚拟网络空间,问题来了:一台主机内的虚拟网络如何访问另一台主机上的虚拟网络呢?
一种解决方案是配置路由。举个例子,我们可以在一台主机上设置路由规则,指定所有前往10.0.1.x网段的流量转发到192.x.x.x地址;同理,在192.x.x.x主机上设置将流量转发到111.x.x.x。配置好路由规则后,这两台主机便能相互访问。然而,这种方法的局限性在于两台主机必须在同一二层网络内,这限制了网络的扩展性。
另一种方法是使用NAT技术。例如,假设有两台主机,它们不处于同一局域网内。我们可以在其中一台主机上设置DNAT,将其内部网络设备映射出去,另一台主机上配置SNAT,使得内部虚拟网络设备通过SNAT访问DNAT公开的设备。这种方法虽然能实现网络通信,但会导致源IP地址丢失,外界看到的只是NAT设备的IP地址,这在云环境中是不可接受的,因为服务发现和监控等功能需要真实的IP地址。
解决上述问题的是Overlay网络。Overlay网络是在现有网络协议之上,构建的一种虚拟化局域网技术。VXLAN是目前比较成熟的Overlay网络实现方式。通过VXLAN,数据包被封装并通过UDP传输到目的主机。这个过程需要本地有一个FDB表来指导数据包应该被发送到哪台机器。通常,这些配置信息存储在如etcd这样的集中配置中心,以保证所有机器的FDB表是同步的。这就是Kubernetes中使用的Flannel等Overlay网络模型的基本原理。通过Overlay网络,我们能构建一个几乎没有限制大小的虚拟局域网,它基于UDP协议实现。
这就是今天的分享内容,感谢大家的聆听。
以下按原内容整理:
大家好,我是徐敏,今天我们来看一下什么时候需要虚拟化网络。
随着虚拟化技术的发展,我们现在可以在一个主机上划分多个网络空间,通过虚拟网卡设备和虚拟网桥在一个主机上虚拟出两个虚拟网络空间,然后这两个网络可以通过虚拟网络设备相互访问。
在另一台主机也是同样情况,但是现在问题是,我这个主机内的一个虚拟网络,怎么访问到另一个主机上的虚拟网络设备呢?
第一种方式是通过配置路由,比如在小主机上配置转发10.0.1.0/24网段到192,同时在192主机上也配置将10.0.0.0/24网段转发到111主机。但是这两台主机必须在同一个交换机下,限制了网络规模。
第二种方式是使用MAC网络映射,比如在192主机上配置一个DNAT,将内部虚拟网络设备通过映射出去,然后在111主机上配置一个SNAT让内部设备可以通过191的IP访问。但是这样访问会丢失真实网络IP信息。
在云环境中,我们需要一个大型的虚拟局域网,这些设备能看到彼此的真实IP。
这就使用到了overlay网络模型,比如VXLAN。有了VXLAN之后,我们给每个设备加一个VXLAN端口,通过UDP封装VXLAN头后发送,本地有一个FDB表来配置地址到主机的映射。这些配置信息存储在集中存储中心。
现在Kubernetes中的flannel网络模型就是基于这套原理实现的,通过overlay网络构建了一个无限大的虚拟局域网。
PPT参考了阿里的译文详细说明了K8S容器网络虚拟化。这两篇文章地址在简介中给出。
以上就是今天分享内容,谢谢。
【网络技术】一个VLAN九个网段?相同VLAN不同网段也能通
随着技术的发展,纯粹的二层交换机变得越来越少见。在这个竞争激烈的时代,不仅是打工人在不断努力,设备厂商也在不断地进步。因此,大多数交换机都加入了三层功能,尽管这使得设备变得更加昂贵。对于三层功能较弱的交换机,它们需要为接入的设备提供网关服务。通常,我们将交换机接口划分到相应的VLAN中后,只需为VLAN接口配置一个IP地址即可,这个虚拟接口便成了VLAN中所有设备的网关。
例如,在一个网络拓扑中,一个交换机连接了四台PC,其中PC1到PC3属于VLAN10,而PC4属于VLAN20。这意味着它们属于不同的VLAN,并且也位于不同的网络段中。通过在交换机上为VLAN10和VLAN20配置相应的VLAN接口地址,我们就可以实现跨网络段的数据传输。
但如果PC1、PC2和PC3虽然位于同一VLAN中,却处于不同的网络段,应该如何处理呢?这时候,我们就需要使用VLAN接口的能力,通过为VLAN接口配置多个IP地址,来实现同一VLAN内跨网络段的数据传输。在我们的网络拓扑示例中,我们需要为VLAN20配置三个不同的IP地址。通过在地址配置命令的最后添加适当的参数,我们可以完成多个IP地址的配置,并确保设备间的连通性。
我已经整理了在此过程中需要用到的命令及其具体功能。感兴趣的同学可以截图保存。记住,当你在生活或工作中遇到困难时,拥有的知识会成为你的支撑。我是七七,关注我,让我们一起探索更多网络技术知识。
原文链接: https://dashen.tech/2017/02/22/Overlay网络技术/
版权声明: 转载请注明出处.