云原生技术之KVM之虚拟网络交换机
【摘要】 虚拟网络交换机1. 虚拟网络Host configuration1.1 查看虚拟网络宿主机操作[root@localhost ~]# virsh net-list --all 名称 状态 自动开始 持久---------------------------------------------------------- default ...
虚拟网络交换机
1. 虚拟网络
Host configuration
1.1 查看虚拟网络
宿主机操作
[root@localhost ~]# virsh net-list --all
名称 状态 自动开始 持久
----------------------------------------------------------
default 活动 是 是
[root@localhost ~]# virsh net-edit default
#下面看地址配置xml
[root@localhost ~]# ls /etc/libvirt/qemu/networks/autostart/
[root@localhost ~]# sysctl -a | grep ip_forward
当ip_forward内容为0时使用此命令。
net.ipv4.ip_forward 的作用
定义:控制 Linux 系统的IP 数据包转发功能。
值为 1:允许系统将收到的 IP 数据包转发到其他网络接口(如路由功能)。
值为 0:禁用转发,仅处理发往本机的数据包。
[root@localhost ~]# echo 1 > /proc/sys/net/ipv4/ip_forward
加载设置并应用到当前运行的内核中的命令
[root@localhost ~]# sysctl -p
1.2 查看防火墙状态
1.3创建虚拟网络(虚拟网络交换机)
1.3.1 通过virt-manager创建虚拟网络
给网络起名字
DNS域名必须和网络名称一致
查看虚拟网络
宿主机使用命令查看网桥验证虚拟网络是否创建成功
#查看是否有新添加的网桥,结果中有两个网桥,说明已经添加成功!
[root@localhost ~]# brctl show
bridge name bridge id STP enabled interfaces
virbr0 8000.525400e4ce5a yes virbr0-nic
vnet0
vnet1
virbr1 8000.5254009538bc yes virbr1-nic
使用ip a命令,查看virbr1对应的是否是虚拟网络设置的网段
[root@localhost ~]# ip a
virbr1: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default qlen 1000
link/ether 52:54:00:95:38:bc brd ff:ff:ff:ff:ff:ff
inet 192.168.110.1/24 brd 192.168.110.255 scope global virbr1
valid_lft forever preferred_lft forever
虚拟机连接新添加的网络
使用virt-manager选择刚创建的虚拟网络,点击应用,然后强制关机---运行
在虚拟机上使用ip addr命令验IP地址是否变成虚拟网卡的网段
虚拟机操作
[root@localhost ~]# ip addr
在宿主机上查看是否有相应的网络文件
宿主机操作
[root@localhost ~]# ls /etc/libvirt/qemu/networks
1.3.2 通过配置文件创建虚拟网络
宿主机操作
1.查看虚拟网络的配置文件,依据此配置自己创建一个虚拟网络
[root@localhost ~]# cd /etc/libvirt/qemu/networks
2.查看虚拟网络配置。标注释的地方是需要修改的地方
[root@localhost ~]# cat default.xml
<network>
<!-- 虚拟网络名称 -->
<name>default</name>
<!-- 虚拟网络UUID -->
<uuid>86004e0a-b375-4587-8b4c-ffc41fd8d5c1</uuid>
<forward mode='nat'/>
<!-- 网桥名称 -->
<bridge name='virbr0' stp='on' delay='0'/>
<!-- 虚拟网络mac地址 -->
<mac address='52:54:00:e4:ce:5a'/>
<!-- 虚拟网络IP范围 -->
<ip address='192.168.122.1' netmask='255.255.255.0'>
<dhcp>
<range start='192.168.122.2' end='192.168.122.254'/>
</dhcp>
</ip>
</network>
3.导出名为 "default" 的默认网络配置,并将其保存到一个名为 network2.xml 的文件中。
[root@localhost ~]# virsh net-dumpxml default > network2.xml
4.由于网络配置文件中需要用到UUID,所以生成UUID作为备用
[root@localhost ~]# uuidgen
aa61229b-aea0-4c83-8548-9eae0f0c06be
5.由于网络配置文件中需要用到MAC地址,MCK地址前三组保留,生成后三组
[root@localhost ~]# openssl rand -hex 3 |sed -r 's/(..)/\1:/g;s/.$//'
35:bb:ec
6.编写网络文件,注意将<network>标签的属性去掉
[root@localhost ~]# vim network2.xml
<!-- network标签去掉属性 -->
<network>
<name>network2</name>
<!-- 把生成的UUID拿过来 -->
<uuid>aa61229b-aea0-4c83-8548-9eae0f0c06be</uuid>
<forward mode='nat'>
<nat>
<port start='1024' end='65535'/>
</nat>
</forward>
<!-- 修改网桥名 -->
<bridge name='virbr2' stp='on' delay='0'/>
<!-- 替换后三位 -->
<mac address='52:54:00:35:bb:ec'/>
<!-- 修改IP网段,和IP范围 -->
<ip address='192.168.120.1' netmask='255.255.255.0'>
<dhcp>
<range start='192.168.120.2' end='192.168.120.254'/>
</dhcp>
</ip>
</network>
7.基于配置文件生成网络
[root@localhost ~]# virsh net-define network2.xml
从 network2定义网络network2.xml
8.查看虚拟网络状态,发现新的虚拟网络没有启动
[root@localhost ~]# virsh net-list --all
名称 状态 自动开始 持久
----------------------------------------------------------
default 活动 是 是
network2 不活跃 否 是
smartgonet1 活动 是 是
9.开启虚拟网络,并设置开机自启
[root@localhost ~]# virsh net-start network2
[root@localhost ~]# virsh net-autostart network2
查看状态
[root@localhost ~]# virsh net-list --all
【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)