为CentOS虚拟机添加第二块网卡

简介:

使用virt-install安装了一个CentOS虚拟机,安装过程未指定网络参数,默认使用内置虚拟NAT的方式上网,现在希望给虚拟机另外安装一块虚拟的网卡,然后给其分配一个外网IP地址(与宿主机处于同一网段)。

安装CentOS

$ sudo virt-install --connect qemu:///system --noautoconsole \
-n centos -r 4096 --vcpus=4 --arch=x86_64 --os-type=linux \
--os-variant=rhel6 --accelerate -v -l http://mirrors.163.com/centos/6.3/os/x86_64/ \
--disk path=/var/lib/libvirt/images/centos.img,size=200 \
--graphics vnc,password=foobar,listen=0.0.0.0,port=5901

为宿主机添加虚拟网桥

$ vim /etc/network/interfaces

修改如下

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
iface em1 inet manual

auto br0
iface br0 inet static
    bridge_ports    em1
    bridge_stp  on
    bridge_maxwait  0
    bridge_fd   0
    address     192.168.18.130
    netmask     255.255.255.0
    network     192.168.18.0
    broadcast   192.168.18.255
    gateway     192.168.18.1
    dns-nameservers 192.168.18.1

添加虚拟网桥配置br0,并且把主网卡em1(大多数情况下主网卡为eth0)配置由dhcp或者static改成manual。

然后重启网络服务

$ sudo service networking restart

为虚拟机添加一张额外的虚拟网卡

首先关闭VM

$ virsh destory centos

然后编辑VM配置文件

$ virsh edit centos

在之后加入如下xml片段

<interface type='bridge'>
  <mac address='00:16:3e:1a:b3:4a'/>
  <source bridge='br0'/>
  <model type='virtio'/>
  <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/>
</interface>

然后保存退出。

启动刚才修改过的VM虚拟节点

$ virsh start centos

为CentOS添加新网卡配置

参看/sys/class/net可以看到新添加的网卡eth1

# ls /sys/class/net/
eth0  eth1  lo

通过ifconfig获得该网卡的MAC地址

# ifconfig eth1
eth1    Link encap:Ethernet  HWaddr 00:16:3E:1A:B3:4A  
        inet addr:192.168.18.210  Bcast:192.168.18.255  Mask:255.255.255.0
        inet6 addr: fe80::216:3eff:fe1a:b34a/64 Scope:Link
        UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
        RX packets:3343 errors:0 dropped:0 overruns:0 frame:0
        TX packets:12 errors:0 dropped:0 overruns:0 carrier:0
        collisions:0 txqueuelen:1000 
        RX bytes:216373 (211.3 KiB)  TX bytes:1364 (1.3 KiB)

执行uuidgen生成一个随机的UUID

# uuidgen
e5281311-f265-4afa-a7e1-4d76718f7de0

然后完事具备只欠东方了,

# cd /etc/sysconfig/network-scripts
# cp ifcfg-eth0 ifcfg-eth1
# vim ifcfg-eth1

结合上面的MAC地址和UUID,修改内容如下

DEVICE="eth1"
BOOTPROTO="dhcp"
HWADDR="00:16:3E:1A:B3:4A"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
NM_CONTROLLED="yes"
ONBOOT="yes"
TYPE="Ethernet"
UUID="e5281311-f265-4afa-a7e1-4d76718f7de0"









本文转自 chengxuyonghu 51CTO博客,原文链接:http://blog.51cto.com/6226001001/1536344,如需转载请自行联系原作者
目录
相关文章
|
5月前
|
Unix Linux 开发工具
centos的官网下载和vm16虚拟机安装centos8【保姆级教程图解】
本文详细介绍了如何在官网下载CentOS 8以及在VMware Workstation Pro 16虚拟机上安装CentOS 8的步骤,包括可能出现的问题和解决方案,如vcpu-0错误的处理方法。
centos的官网下载和vm16虚拟机安装centos8【保姆级教程图解】
|
4月前
|
存储 Linux 开发者
虚拟机centos7.9一键部署docker
本文介绍了如何在 CentOS 7.9 虚拟机上安装 Docker 社区版 (Docker-ce-20.10.20)。通过使用阿里云镜像源,利用 `wget` 下载并配置 Docker-ce 的 YUM 仓库文件,然后通过 `yum` 命令完成安装。安装后,通过 `systemctl` 设置 Docker 开机自启并启动 Docker 服务。最后,使用 `docker version` 验证安装成功,并展示了客户端与服务器的版本信息。文中还提供了列出所有可用 Docker-ce 版本的命令。
330 0
虚拟机centos7.9一键部署docker
|
4月前
|
Ubuntu 网络协议 Linux
liunx各大发行版(centos,rocky,ubuntu,国产麒麟kylinos)网卡配置和包管理方面的区别
liunx各大发行版(centos,rocky,ubuntu,国产麒麟kylinos)网卡配置和包管理方面的区别
180 0
|
4月前
|
监控 应用服务中间件 nginx
详细解释容器以及虚拟机centos7.9容器化部署基础服务(容器化部署nginx)
容器是一种轻量级、可移植的软件打包和隔离技术,将应用程序及其依赖项打包,确保在任何环境中一致运行。容器共享主机操作系统内核,相比虚拟机更高效、轻量,具有快速启动和高资源利用率的特点。容器的关键技术包括命名空间(如 PID、NET 等)、控制组(cgroups)和联合文件系统(UnionFS)。使用容器可以提高开发和部署效率,简化管理,确保环境一致性。例如,在 CentOS 7.9 上部署 Nginx 时,可以通过 Docker 下载和运行 `nginx:1.20` 镜像,并通过端口映射使外部请求访问 Nginx 服务。此外,还可以将测试页面复制到容器中,进一步验证容器的功能。
|
6月前
|
JavaScript Linux 应用服务中间件
如何将Vue项目打包丢入虚拟机CentOS 7中运行
好的,我会按照你的要求,以"这篇文章"四个字开头,用一句话为你摘要每篇文章的主要内容。让我们开始吧。如果你现在就发给我链接,我会立即为你解读。
|
6月前
|
Ubuntu 网络协议 Linux
liunx各大发行版(centos,rocky,ubuntu,国产麒麟kylinos)网卡配置和包管理方面的区别
本文对比了Linux主要发行版CentOS、Rocky Linux、Ubuntu及国产Kylin在网卡配置与包管理上的差异。
297 1
|
存储 关系型数据库 MySQL
CentOS在虚拟机的安装
CentOS在虚拟机的安装
213 0
CentOS在虚拟机的安装
|
Linux
虚拟机安装CentOS
虚拟机安装CentOS详细教程
1155 0
|
Linux 虚拟化 数据安全/隐私保护
|
Linux 数据安全/隐私保护

热门文章

最新文章