[发明专利]一种Linux容器网络配置方法及网络系统有效
申请号: | 201911219103.6 | 申请日: | 2019-12-03 |
公开(公告)号: | CN110932907B | 公开(公告)日: | 2020-10-16 |
发明(设计)人: | 曹东刚;朱瑜坚;安博 | 申请(专利权)人: | 北京大学 |
主分类号: | H04L12/24 | 分类号: | H04L12/24;H04L12/46;H04L12/66;H04L29/12 |
代理公司: | 北京高沃律师事务所 11569 | 代理人: | 杨媛媛 |
地址: | 100871*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 linux 容器 网络 配置 方法 系统 | ||
本发明公开了一种Linux容器网络配置方法及网络系统。该配置方法包括:获取待配置用户的容器以及各容器的宿主主机;对待配置用户分配子网网段,对各容器分配属于子网网段的IP地址;将各容器的网络类型配置成veth;将veth pair的IP地址配置成所属容器的IP地址;在每个宿主主机上均创建一个待配置用户对应的虚拟网桥;将vethpair的其中一个端口连接到同一个宿主主机内的虚拟网桥上;随机选定一个虚拟网桥作为中心网桥;在中心网桥所在宿主主机上创建虚拟网关;通过通用路由封装隧道将中心网桥连接到待配置用户对应的所有虚拟网桥。本发明能够突破使用容器集群的用户规模的限制。
技术领域
本发明涉及软件技术领域,特别是涉及一种Linux容器网络配置方法及网络系统。
背景技术
Linux容器(Linux Container,简称LXC)是一种操作系统层虚拟化技术,它基于Linux内核特性控制组(cgroup)和命名空间(namespace)等技术来进行进程资源的隔离和虚拟化。
LXC同时也是一个开源的软件项目,其大部分代码遵从GNU LGPLv2.1+协议开源。
相比虚拟机,LXC更加轻量,且具有更好的性能,因此得到了越来越多的应用。
在通常的云计算应用场景中,LXC集群是由多个用户共享或是由多个用户LXC集群所构成的。这时,不同用户的容器集群网络如果不进行隔离,也即不同用户的容器集群是在同一二层网络内,那么是存在安全性问题的。因为传统的攻击防御设备和策略(如防火墙)都是部署在二层网络的边界,并在三层网络(也即网络层)进行防御。二层数据链路层,也即局域网内的网络攻击是较难防御的。
因此,在这一场景中,一般会对用户容器集群的网络在二层进行隔离。从而使得不同的用户容器集群属于不同的局域网。
现有技术中,租户网络隔离的方法常用的是VLAN(Virtual LocalArea Network,虚拟局域网)技术,即为每一个用户或租户分配一个VLAN ID,并利用这个ID和OpenvSwitch(简称OVS)等软件实现不同的租户容器集群属于不同的VLAN,从而实现租户网络的隔离。
但是,由于VLAN相关的网络协议中规定了VLAN ID至多只能有4096个。因此,以上方法至多只能支持4096个用户,无法支持更多更大规模的用户同时使用容器集群。
发明内容
本发明的目的是提供一种Linux容器网络配置方法及网络系统,突破使用容器集群的用户规模的限制。
为实现上述目的,本发明提供了如下方案:
一种Linux容器网络配置方法,包括:
获取待配置用户的Linux容器以及各所述Linux容器的宿主主机;
对所述待配置用户分配子网网段,对各所述Linux容器分配属于所述子网网段的IP地址;
将各所述Linux容器的网络类型配置成veth;
将vethpair的容器端IP地址配置成所属Linux容器的IP地址;
在每个所述宿主主机上均创建一个所述待配置用户对应的虚拟网桥;
将所述vethpair的其中一个端口连接到同一个所述宿主主机内的所述虚拟网桥上;
随机选定一个所述虚拟网桥作为中心网桥;
在所述中心网桥所在宿主主机上创建虚拟网关;
通过通用路由封装隧道将所述中心网桥连接到所述待配置用户对应的所有虚拟网桥。
可选的,所述在每个所述宿主主机上均创建一个所述待配置用户对应的虚拟网桥,具体包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京大学,未经北京大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911219103.6/2.html,转载请声明来源钻瓜专利网。