Linux网络虚拟化基础:Linux bridge / Network Namespace

本文介绍了Linux网络虚拟化中的关键概念——Linux bridge和Network Namespace。Linux bridge用于虚拟网卡间的通信,而Network Namespace则提供内核资源隔离。通过将vif连接到Linux bridge,可以在不同namespace间实现网络隔离并进行通信。操作过程相对简单,但管理工具使用可能较为复杂。
摘要由CSDN通过智能技术生成

Linux网络虚拟化基础:Linux bridge / Network Namespace

简述

 在网络虚拟化中,有两项技术的发展相当重要,甚至可以说是网络功能软件化、虚拟化的重要重要基础。

  • linux bridge (brctl)

 在linux中,对于创建的一些虚拟网卡之间实现通信,提供了linux bridge作为虚拟网桥,进行数据交换。

  • Network Namespace (ip netns)

 linux系统中,提供很多namespace用于实现内核资源相互隔离,相互隔离的资源之间互不影响,在现有资源下提供轻量级的虚拟化的服务。

 本文将通过network namespace跟linux bridge介绍最为基础的网络虚拟化的基础应用。

说明

 在同一台linux host上构造如下,创建两个vif放入不同的network namespace进行网络隔离,通过将vif连接到linux bridge上实现通信。
在这里插入图片描述

操作

[root@localhost baojx]# ifconfig -a
lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1  (Local Loopback)
        RX packets 64  bytes 5408 (5.2 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 64  bytes 5408 (5.2 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

// 创建网桥br
[root@localhost baojx]# brctl addbr br
[root@localhost baojx]# brctl show
bridge name	bridge id		STP enabled	interfaces
br		8000.000000000000	no	

// 生成bridge管理口br
[root@localhost baojx]# ifconfig -a
br: flags=4098<BROADCAST,MULTICAST>  mtu 1500
        ether 12:3f:c2:3c:08:83  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        R
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值