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

Linux network namespace 初认识

原创
作者头像
Librant
发布2025-01-11 11:14:23
发布2025-01-11 11:14:23
3020
举报
文章被收录于专栏:跟我一起学 K8s跟我一起学 K8s

Linux 网络虚拟化:network namespace

1 初识 network namespace

1)创建一个名为 netns-test 的 network namespace

代码语言:txt
复制
# ip netns add netns-tes

当创建一个 network namespace 时,系统会在 /var/run/netns 路径下面生成对应名字的只读文件(挂载点);

2)查看 netns-test 的网卡设备信息

代码语言:txt
复制
# ip netns exec netns-test ip link list

3)查看系统中有哪些 network namespace

代码语言:txt
复制
# ip link list

4)删除 network namespace,移除挂载点

代码语言:txt
复制
# ip netns delete netns-test

2 配置 network namespace

1)测试回环地址连通性

代码语言:txt
复制
# ip netns exec netns-test ping 127.0.0.1

发现此时的 lo 设备是无法 ping 通,这是因为自带的 lo 设备的状态还是 DOWN 的,想要访问回环地址,需要将设备状态设置成 UP。

2)设置设备状态

代码语言:txt
复制
# ip netns exec netns-test ip link set dev lo up

设置后,查询当前设备状态为 UNKNOWN;

3)设置 veth pair

只有回环地址还是无法与外界进行通信,还需要在 namespace 里创建一对的虚拟的以太网卡 veth pair;

代码语言:txt
复制
# ip link add veth-test0 type veth peer name veth-test1

4)查看 veth pair

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

创建出来的网卡对默认是 DOWN 状态,设置状态为 UP。

代码语言:txt
复制
# ip link set veth-test0 up

5)将 veth pair 的一端放置在 netns-test 中

代码语言:txt
复制
# ip link set veth-test1 netns netns-test

6)配置 IP 地址

代码语言:txt
复制
# ip netns exec netns-test ifconfig veth-test1 10.1.1.1/24 
# ifconfig veth-test0 10.1.1.2/24

7)测试网络连通性

代码语言:txt
复制
# ping 10.1.1.1 -c 3
代码语言:txt
复制
# ip netns netns-test ping 10.1.1.2 -c 3

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

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

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

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

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