首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >Linux bridge 初认识

Linux bridge 初认识

原创
作者头像
Librant
修改2025-01-11 14:08:24
修改2025-01-11 14:08:24
5920
举报
文章被收录于专栏:跟我一起学 K8s跟我一起学 K8s

Linux bridge 作为虚拟交换机,功能与物理交换机类似。

两个 network namespace 可以通过 veth pair 进行连接,两个以上的 network namespace 相互连接可以通过 bridge 连接;

1 初识 Linux bridge

Linux bridge 是 linux 系统中的网桥,有多个端口,数据可以从任何端口进口,然后根据 mac 地址从对应端口出去;

1)创建 bridge

代码语言:txt
复制
# ip link add name br-test type bridge

查看创建的网桥:

代码语言:txt
复制
# ip link show type bridge

将 bridge 的状态设置为 UP:

代码语言:txt
复制
# ip link set br-test up

2 配置 Linux bridge

创建网络命名空间和 veth-test 设备,并将 veth-test 的一端连接到网络命名空间,另一端连接到刚创建的 br-test 桥接设备。

1)bridge 网络结构

2)创建 ns

代码语言:txt
复制
# ip netns add ns-test1
# ip netns add ns-test2

4)创建 veth

代码语言:txt
复制
# ip link add veth0 type veth peer name veth1
# ip link add veth2 type veth peer name veth3

5)将 veth 连接到 net ns

代码语言:txt
复制
# ip link set veth0 netns ns-test1
# ip netns exec ns-test1 ip link set veth0 up
# ip link set veth2 netns ns-test2
# ip netns exec ns-test2 ip link set veth2 up

6)将 veth 另一段连接到 bridge

代码语言:txt
复制
# ip link set dev veth1 master br-test
# ip link set dev veth3 master br-test

7)绑定 IP

代码语言:txt
复制
# ip netns exec ns-test1 ip addr add 172.16.0.1/24 dev veth0
# ip netns exec ns-test2 ip addr add 172.16.0.2/24 dev veth2

设置 bridge IP

代码语言:txt
复制
# ip addr add 172.16.0.3/24 dev br-test

8)测试连通性

代码语言:txt
复制
# ip netns exec ns-test1 ping 172.16.0.2 -c 3

【参考文档】

1)虚拟交换机 Linux bridge

2)Linux Bridge 详解

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1 初识 Linux bridge
  • 2 配置 Linux bridge
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档