这篇文章是想设计一套基于OpenFlow的容器SDN网络互通方案。

同主机同网段

容器和自己的网关连接,先看192.168.0.2容器和网关的流表,条件:端口5进入源mac是03:10的源IP是192.168.0.2目标IP是192.168.0.1的流量,动作:从3口出,这样流量就可以到达网关;那怎样返回呢?反过来,流量从3口进入,源mac是ab:96,源IP是192.168.0.1,目的IP是192.168.0.2,动作:先把目的mac改成容器03:10,然后从5端口流出,这样容器就可以和网关互联了。

同主机不同网段

虽然在同一台主机,但是是不同的网段,按照传统的设计理念,肯定是需要路由转发才能互通的,下面请看我的设计,从192.168.0.2->10.1.0.2,流量从5端口进入源mac是03:10,源IP是192.168.0.2,目的地址是10.1.0.2,动作:将源mac修改为3d:46,目的mac改成04:f8,然后从4端口出,这里之所以设计源mac为3d:46是想让容器以为流量来自网关。反过来,流量从4口如源mac为04:f8,源IP为10.1.0.2,目的地址为192.168.0.2,动作:修改源地址为3d:46,目的mac为03:10,从5端口出。这样网络就可以互通了,这里mac改为网关的mac是重点。

同网段不同主机

这个例子里面可是说跨主机的问题,从10.1.0.2->10.1.0.3。流量从4口入,源mac为04:f8,源IP为10.1.0.2,目的IP为10.1.0.3,动作:修改源mac为00:d9,目的mac为00:da,源IP为10.0.0.27,目的IP为10.0.0.28,从端口1出。因为要跨宿主机,这里首先要把源mac和目的mac修改为宿主机的,这样流量才能出去,但10.0.0.27/28这两个IP感到疑惑,怎么突然冒出两个IP出来,这里之所以这样设计是为了安全考虑,隐藏内部容器的IP,当然这里如果直接使用容器的IP也是可以,但作为产品设计考虑到容器的IP可能在现实网络中防火墙无法通过的原因,设计这样的IP,更加灵活。流量到达另一台宿主机1口后,目的mac是00:da,源IP是10.0.0.28目的IP是10.0.0.28,动作:修改源mac为04:f8,目的mac为5d:1f,源IP为10.0.1.2,目的IP为10.1.0.3并且从4口出。这样流量就到达的另一个容器了,返回的原理是相同的,不再赘述。

不同主机不同网段

这种情况可能是最复杂的一种场景,但结合前面的讲述应该也不是太难,从10.1.0.2->192.168.0.3。流量从4口进入源mac为04:f8,源IP为10.1.0.2,目的IP为192.168.0.3,动作:修改源mac为00:d9,目的mac为00:da,源IP地址为10.0.0.135,目的IP为10.0.0.134,从1口出,这个和上面是一样的,流量到达另一个宿主机1口的时候,目的mac为00:da,源IP是10.0.0.135,目的IP是10.0.0.134,动作:源mac修改为68:6c,目的mac为b8:73,源IP为10.1.0.2,目的IP为192.168.0.3从5口出,这样流量就到达了另一台宿主机里面的容器了,返回同理不赘述。

连接外网

容器都会通过宿主机访问外部网络,192.168.0.2的容器连接外网,流量从5口进入,源mac为03:10,源IP为192.168.0.2目的IP为114.114.114.114,动作:从3口出,交给网关;反过来,流量从3口进入源mac为ab:96,源IP 114.114.114.114目的IP为192.168.0.2,动作:目的mac改为03:10,从5端口出

这样通过在每个主机上面启动一个网关,达到不同网段互通的目的。至此整个网络方案设计完成!

基于OpenFlow的容器SDN网络互通方案相关推荐

  1. 基于OpenFlow协议的SDN控制器拓扑发现

    基于OpenFlow协议的SDN控制器拓扑发现     OpenFlow协议的SDN控制器通过LLDP(Link Layer Discovery Protocol,链路发现协议)协议进行链路发现,并根 ...

  2. 基于LS1028 TSN时间敏感网络交换机方案(一)TSN介绍

    2.1 时间敏感网络介绍 时间敏感网络小组的前身是 AVB ,即以太网音视频桥接技术( Ethernet Audio/Video Bridging, 简称 Ethernet AVB ) [10] .它 ...

  3. 基于Neutron的Kubernetes SDN实践经验之谈

    首先,向大家科普下Kubernetes所选择的CNI网络接口,简单介绍下网络实现的背景. CNI即Container Network Interface,是一套容器网络的定义规范,包括方法规范.参数规 ...

  4. 《软件定义网络:基于OpenFlow的SDN》一一2.5 本章总结

    本节书摘来自华章计算机<软件定义网络:基于OpenFlow的SDN>一书中的第2章,第2.5节,作者:Siamak Azodolmolky,更多章节内容可以访问云栖社区"华章计算 ...

  5. 服务器和交换机物理连接_利用Calico融合物理网络的云原生容器SDN方案

    01 云原生的背景 随着云计算的蓬勃发展,越来越多的IT设施及架构具备了虚拟化.分布式.多租户的云计算能力,这些能力为高速发展的互联网行业插上了腾飞的翅膀.并为互联网业务的开展提供了极大的便利. 当移 ...

  6. 【Kubernetes】k8s网络概念和实操详细说明【calico网络】【含docker不同容器网络互通配置,k8s网络互通配置】【1】

    文章目录 calico网络之间通信配置[docker容器互通流程配置] calico网络原理分析 一.Calico基本介绍 二.Calico结构组成 三.Calico 工作原理 四.Calico网络方 ...

  7. 【好文收藏】基于OpenStack和Kubernetes构建组合云平台——网络集成方案综述

    转自: http://geek.csdn.net/news/detail/104150 一谈到云计算,大家都会自然想到三种云服务的模型:基础设施即服务(IaaS),平台即服务(PaaS)和软件即服务( ...

  8. 基于OpenStack和Kubernetes构建组合云平台——网络集成方案综述

    一谈到云计算,大家都会自然想到三种云服务的模型:基础设施即服务(IaaS),平台即服务(PaaS)和软件即服务(SaaS).OpenStack已经成为私有云IaaS的标准,而PaaS层虽然有很多可选技 ...

  9. 洪强宁:宜信PaaS平台基于Calico的容器网络实践

    洪强宁:宜信PaaS平台基于Calico的容器网络实践   本文内容来自由七牛云主办的ECUG Con,独家授权InfoQ整理完成 容器云面临的网络挑战 在传统的IDC的架构里面网络是很重要的事情,在 ...

最新文章

  1. SAP移动类型103解析
  2. GIMP永久保存选择的办法
  3. Akka型演员:探索接收器模式
  4. window git安装 以及 tortoiseGit安装与使用
  5. 链家大数据多维分析引擎实践
  6. Qt4_创建菜单和工具栏
  7. 7 vsphere 分配许可_外企公司员工Office 365权限是否已分配
  8. objective-C语言:第一个OC程序
  9. ora-01950:对表空间XXX无权限
  10. bin/arm-linux-androideabi-nm: libtinfo.so.5: cannot open shared object file: No such file or directo
  11. html5 牧场游戏,手机QQ首批五款HTML5游戏名单 农场偷菜复活
  12. html英文参考文献,英文参考文献标准格式
  13. 宝塔面板 - 通过宝塔面板安装的mysql 默认密码是什么
  14. 【北邮计算机考研】2022年北京邮电大学计算机考研考情分析
  15. babel转码器的使用
  16. java dns缓存清理_清除DNS缓存信息方法
  17. cad怎么设置线的粗细_CAD图纸线条粗细如何修改?CAD图纸线宽如何调整?
  18. Pokeman.csv 处理(Python)
  19. iOS app 的开发要准备哪些图标图片?
  20. UITextField默认输入法不是简体拼音的问题的解决方法

热门文章

  1. MySql - “Can‘t connect to MySQL server on ‘127.0.0.1‘ ([Errno 61] Connection refused)“
  2. 史上最简单的SpringCloud教程 | 第七篇: 高可用的分布式配置中心(Spring Cloud Config)(Finchley版本)
  3. 最新彩虹云商城完整系统源码6.9.0+无需授权
  4. 显示器不同接口不同标准带宽
  5. edgewin10无法安装_win10重装Edge浏览器,教你Win10系统如何重装Edge浏览器
  6. 基于Springboot的动漫论坛系统(源代码+数据库+ppt文档) 040
  7. AndroidStudio删除无用资源
  8. 最低2元微信红包 速领
  9. 二重积分若干例题分析
  10. Python+opencv实图片定位